在没有 Web 服务器的情况下使用 Java Websocket API 实现

Using Java Websocket API Implementation without a Web-Server

是否可以在 Java 中实现自定义 WebSocket 应用程序,而不必 运行 在 GlassFish、Tomcat、Jetty 等 Web 服务器上实现它?

我打算开发一个非常定制的应用程序,并想实现我自己的方式来管理线程、监控、负载平衡、消息传递和类似的东西。 (与 Java TCP 的 ServerSocket 相比) 我知道有 Tyrus 容器,例如用于独立服务器和 Servlet 支持的 Grizzly 集成,这里还有 Jetty,但我不确定这是否是我正在寻找的。 Grizzly 或 Jetty 本身可能是一个独立的解决方案吗?我知道 Tyrus 是 Grizzly WebSocket 实现的某种包装器,但老实说,我不确定这两者是如何相互关联的。

非常欢迎任何建议!谢谢!

换句话说,您正在尝试实现一个 WebSocket 服务器,类似于: https://code.google.com/p/jwebsocket/(link已死)

http://jwebsocket.org/downloads/jwebsocket-latest-versions(新link)

Tyrus 不是 "some kind of wrapper of Grizzly",但它可以 运行 在上面。

(Tyrus 是 Java (JSR 356) 的 WebSocket API 的参考实现,它是 Java EE 的一部分。

运行 没有 Web 服务器(假设您正在谈论应用程序服务器或其他东西 "big")是完全可能的并且非常简单,因为我们正在使用它进行 "e2e" 测试。 (如果重要的话,我是 Tyrus 开发者)。

启动可以处理 WebSocket 连接的新容器非常简单:Main.java , see project declaration [pom.xml] 获取完整的依赖项列表。