【发布时间】:2015-07-14 15:37:17
【问题描述】:
我目前正在创建一个将使用 Websockets 的 Java Web 应用程序。服务器将是一个带有 @ServerEndpoint 注释的 Java 类,称为 Server.java,而客户端将是一个 Web 浏览器,所以我肯定会使用 Javascript 访问 Websocket 端点。
我需要一个 Websocket,因为我想在服务器发生变化时通知客户端。我们有一个名为EventManager 的实用程序类,它管理子系统中发生的所有事件。我计划将Server.java 注册为EventManager 的依赖者,这样每当EventManager 有新内容时,它就会通知所有依赖者该特定事件已发生。
这是好的做法吗?我考虑过使用 AJAX/长轮询,但我相信需要观察服务器到客户端的行为。此外,我无法获取数据库中的事件,我必须依靠EventManager 来通知我的 Websocket 端点。
我想要的示例场景:
客户端 A 连接到
Server.java客户端 B 连接到
Server.java(现在,将有两个会话处于活动状态)EventManager检测到事件并通知Server.java的所有实例。Server.java向所有活动的 Websocket 会话发送消息。浏览器使用Javascript检索通过Websocket发送的数据并显示出来。
有人告诉我为此使用 Node.js,但我仍在推动 Java 实现,因为:
- 我完全没有使用 Node.js 的经验
- 我们的
EventManager类转换成这样会很痛苦 Node.js 的 Javascript
【问题讨论】:
-
如果您正在寻找 Java 答案,为什么要使用 node.js 标记它?我们,node.js 的人一点也帮不了你。
-
我只是想你们中的一些人可能也有意见。我不确定我的 Java 方法是否完全有效,在这种情况下,我可能会求助于 Node.js 作为最坏的情况
标签: java javascript node.js