是否可以在Java中实现自定义WebSocket应用程序而无需在GlassFish,Tomcat,Jetty等Web服务器上运行它?
我打算开发一个非常定制的应用程序,并希望实现我自己的方式来管理线程,监控,负载平衡,消息传递和类似的东西。 (与例如Java TCP的ServerSocket相比) 我知道有Tyrus容器,例如Grizzly集成用于独立服务器和Servlet支持,这里也是Jetty,但我不确定这是否是我想要的。 Grizzly或Jetty本身可能是一个独立的解决方案吗?我知道Tyrus是Grizzly WebSocket实现的某种包装,但说实话,我不确定这两者是如何相互关联的。
欢迎任何建议!谢谢!
答案 0 :(得分:2)
Tyrus不是" Grizzly"的某种包装,但它可以在它上面运行。
(Tyrus是WebSocket API for Java的参考实现(JSR 356),它是Java EE的一部分。)
在没有网络服务器的情况下运行(假设你正在谈论appserver或其他东西"大")是完全可能而且非常简单,因为我们正在使用它来为我们的" e2e"测试。 (如果重要的话,我是Tyrus开发人员。)
启动可以处理WebSocket连接的新容器非常简单:Main.java,请参阅项目声明[pom.xml]以获取完整的依赖项列表。
答案 1 :(得分:1)
换句话说,您正在尝试实现WebSocket服务器,例如:
https://code.google.com/p/jwebsocket/ (链接已死)
http://jwebsocket.org/downloads/jwebsocket-latest-versions(新链接)