本文主要是介绍猜测Tomcat如何实现WebSocket协议,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、WebSocket协议的实现
(一)WebSocket是官方的协议接口标准。
(二)如果一门编程语言可以网络连接和并发,就能创建一种WebSocket实现。
(三)同一种编程语言,有不同的协议实现版本和框架。
二、Tomcat实现
在Tomcat容器中实现了对应的WebSocket版本,比较难使用。
(一)需要实现官方接口的实现类。
例如:java.websocket.Session接口,需要继承实现里面的抽象方法。
需要用java.net.ServerSocket监听端口,需要用输入输出流来接收和发送二进制数据。
(二)需要用反射来加载用@ServerEndpoint修饰的类,生成对象。
这些类是用户开发的Websocket通信程序。
(三)每次获得连接需要验证和握手,握手通过后创建和java.net.Socket类的对象相关的会话对象。
(四)每次需要根据接收的数据单位,调用事件处理方法,传入接收的数据和参数。
需要根据用户实现的监听方法,根据对应注解(例如@OnOpen)来获取方法对象,得到方法参数列表。
根据列表,准备参数,调用方法。
可能需要字节码修改。
这篇关于猜测Tomcat如何实现WebSocket协议的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!