首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Jetty配置的自定义服务器中使用WebSocket

如何在Jetty配置的自定义服务器中使用WebSocket
EN

Stack Overflow用户
提问于 2012-10-05 08:20:40
回答 4查看 1.1K关注 0票数 0

我是StackOverflow的新手。我已经搜索过这个话题,但我没有发现任何真正相关的东西。

基本上,我需要为我们公司开发一个网络“支持聊天”系统。我知道有很多可用的解决方案,但是我们需要一个Java的自定义解决方案。我们需要建立一个支持聊天网络系统,用户访问网站可以要求支持使用聊天,另一方面,我们有'n‘代理处理请求。为了商业智能,我们需要将每一段对话存储在卡桑德拉集群中。我们需要在Java (服务器端)和JavaScript+JQuery (客户端)中开发解决方案。

编辑:在研究了许多基于XMPP的解决方案之后(其中许多已经非常老了,不再受支持),我可能会使用一个类似XMPP的自定义协议,它只涵盖我们需要的特性。开发解决方案,WebSocket似乎是最合适的技术。

问题是,从哪里开始?我在谷歌上搜索了关于如何在Jetty中使用WebSocket的任何东西或更少的东西。有联系吗?有什么资源吗?

基本上我的想法是:

  • 一种基于Jetty嵌入式的聊天服务器
  • web应用程序(JQuery)的一个小前端,需要与服务器对话。
  • 通信基于WebSocket,以避免轮询(真正的问题)
  • XMPP风格的基于WebSocket的XML协议.但这不是问题所在。

如何在Jetty配置的自定义服务器和web应用程序中使用WebSocket的问题。

正如许多人所指出的那样,添加了,对于一般用途的使用,WebSocket不受很好的支持。相反,AJAX是一种更自然的解决方案,但这意味着使用轮询。我找到了一些关于如何避免长轮询问题的示例,但我无法找到基于JQuery的可靠实现,该实现能够:

  1. 可用时使用WebSocket
  2. 否则,使用基于JQuery的长轮询。

我认为现在的问题更清楚了。很抱歉我之前的“谈论”风格问题。

EN

回答 4

Stack Overflow用户

发布于 2012-10-05 10:52:33

我使用了大气框架(https://github.com/Atmosphere/atmosphere)。它们在这里提供了几个与聊天相关的示例:https://github.com/Atmosphere/atmosphere/tree/master/samples

票数 3
EN

Stack Overflow用户

发布于 2012-10-05 10:54:50

我建议您不要为支持系统要求Websocket,因为有很多人使用Internet还不支持它,而且很可能永远不会在Windows7之前的版本上支持它:http://caniuse.com/websockets

你说你想在客户端使用"Java+JQuery“。您确定没有混淆Java和JavaScript吗?这些技术与冰茶长岛冰茶有很多相同之处。

当您真正想要使用WebSockets时,您不必使用,因为Java可以使用普通的TCP或UDP套接字与服务器进行通信。

当您是指JavaScript时,我建议您创建一个基于AJAX的解决方案,因为它的支持范围要广得多,聊天应用程序不需要WebSockets的实时性能。

票数 2
EN

Stack Overflow用户

发布于 2012-10-05 18:02:18

您可能需要查看用于Openfire的快速路径插件(服务和网络聊天)。这是一个基于XMPP的解决方案,旨在支持您的用例。它是基于开源和Java的,因此您可以很容易地扩展它以满足您的目的。

拍打也支持基于Java的解决方案(在工作组包下)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12742283

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档