Java Websockets - 被不同的选项搞糊涂了
Java Websockets - confused by the different options
我一直致力于在 Java 中编写 Web Socket 服务器,这一点让我困惑了一段时间。 GitHub 上有一个 TooTallNate 的库,它是 "barebones WebSocket client and server implementation in 100% Java":https://github.com/TooTallNate/Java-WebSocket
它拥有大量的星星,并且正在积极开发中。
但似乎 Java 已经在主库中具有 websocket 功能? https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API/Writing_a_WebSocket_server_in_Java
还有 Jetty 的 WebSocket 之类的东西:http://www.eclipse.org/jetty/documentation/9.4.x/jetty-websocket-server-api.html
还有 Netty,它似乎也有 WebSocket 的东西。
那么这些到底有什么区别呢?这是一个简单的问题吗?还是性能?或者它们是完全不同的东西?如果我需要低延迟高频发送 5-10 kb 的消息,有没有最合适的选项?
WebSocket 是一种通过单个传输控制协议 (TCP) 套接字提供双向全双工通信通道的技术。
IETF 将其标准化为 RFC 6455。
您提供的三个链接(TooTallNate、Mozilla、Jetty)只是该 websocket 的实现 standards/protocol。
同样Netty也有Websocket实现。
关于选择哪一个:
看起来像,HTTP 标准。
所有 Web 服务器(Tomcat、weblogic、Jetty、Apache HTTP 等)都实现相同的 HTTP 标准,但选择哪一个取决于许多因素,例如:
- 实施效率如何?
- 配置友好吗?
- Memory/CPU 消耗
- 等
因此您可能需要进行一些性能测试,看看哪一个适合您的要求。
我一直致力于在 Java 中编写 Web Socket 服务器,这一点让我困惑了一段时间。 GitHub 上有一个 TooTallNate 的库,它是 "barebones WebSocket client and server implementation in 100% Java":https://github.com/TooTallNate/Java-WebSocket
它拥有大量的星星,并且正在积极开发中。
但似乎 Java 已经在主库中具有 websocket 功能? https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API/Writing_a_WebSocket_server_in_Java
还有 Jetty 的 WebSocket 之类的东西:http://www.eclipse.org/jetty/documentation/9.4.x/jetty-websocket-server-api.html
还有 Netty,它似乎也有 WebSocket 的东西。
那么这些到底有什么区别呢?这是一个简单的问题吗?还是性能?或者它们是完全不同的东西?如果我需要低延迟高频发送 5-10 kb 的消息,有没有最合适的选项?
WebSocket 是一种通过单个传输控制协议 (TCP) 套接字提供双向全双工通信通道的技术。
IETF 将其标准化为 RFC 6455。
您提供的三个链接(TooTallNate、Mozilla、Jetty)只是该 websocket 的实现 standards/protocol。
同样Netty也有Websocket实现。
关于选择哪一个:
看起来像,HTTP 标准。
所有 Web 服务器(Tomcat、weblogic、Jetty、Apache HTTP 等)都实现相同的 HTTP 标准,但选择哪一个取决于许多因素,例如:
- 实施效率如何?
- 配置友好吗?
- Memory/CPU 消耗
- 等
因此您可能需要进行一些性能测试,看看哪一个适合您的要求。