【发布时间】:2012-09-26 09:00:51
【问题描述】:
我是 StackOverflow 的新手。我搜索了有关该主题的内容,但没有找到任何真正相关的内容。
基本上我需要为我们公司开发一个网络“支持聊天”系统。我知道那里有很多可用的解决方案,但我们需要 Java 中的自定义解决方案。我们需要建立一个支持聊天网络系统,访问该网站的用户可以使用聊天请求支持,另一方面,我们有“n”个代理来处理请求。为了商业智能的目的,我们需要在 Cassandra 集群中存储每一段对话。我们需要用Java(服务器端)和JavaScript+JQuery(客户端)开发解决方案。
编辑: 在检查了许多基于 XMPP 的解决方案(很多都非常陈旧且不再受支持)之后,我可能会选择一个类似于 XMPP 的自定义协议,它只涵盖我们需要的功能。开发解决方案 WebSocket 似乎是最合适的技术。
问题是,从哪里开始?我用谷歌搜索,但对如何将 WebSocket 与 Jetty 一起使用一无所知。有链接吗?有资源吗?
基本上我的想法是:
- 基于 Jetty Embedded 的聊天服务器
- 需要与服务器通信的 Web 应用程序 (JQuery) 的小型前端。
- 通信基于WebSocket,避免轮询(真正的问题)
- XMPP 样式的 XML over WebSocket 协议。但这不是问题。
如何将 WebSocket 与 Jetty 嵌入的自定义服务器和 Web 应用程序一起使用的问题。
添加 正如许多人所指出的,WebSocket 并不能很好地用于通用用途。相反,AJAX 是一种更自然的解决方案,但这意味着使用轮询。我找到了一些关于如何规避长轮询问题的示例,但我无法找到基于 JQuery 的坚如磐石的实现,它能够:
在可用时使用 WebSocket
否则,使用基于 JQuery 的长轮询
我认为现在问题更清楚了。抱歉我之前的“谈论”风格问题。
【问题讨论】:
-
正如您所说您是 SO 新手,我建议您阅读常见问题解答stackoverflow.com/faq#close,了解如何在这里提出好的问题。这种形式的问题可能会被否决并关闭,因为它无法准确回答,只能“谈论”。
-
对不起,由于我也是这个话题的新手,我很难提出一个简短而准确的问题。我可以根据反馈(如果有的话)对其进行改进,否则如果它不符合 SO 政策,它可以被关闭。
-
@jabal:我已将问题编辑为简短和集中!感谢您的反馈!