【发布时间】:2014-08-23 18:37:20
【问题描述】:
我计划开发 JavaScript 客户端应用程序,该应用程序将使用 websocket 连接到 Java 服务器。服务器应该处理许多连接的客户端。 经过一番阅读,我发现了 websocket 单线程。如果我想运行可能会阻止所有内容一段时间的数据库查询,这并不好。
我正在考虑为每个 JavaScript 客户端打开单独的 websocket。一个套接字正在侦听新连接,并在建立连接时创建一些唯一 ID。之后打开新的 websocket 并使用侦听器套接字将 id 发送给客户端。当客户端收到 id 时关闭第一个套接字并连接到新的。
您认为,这是一个好的解决方案吗?也许我错过了什么?
【问题讨论】:
-
不是一个答案,只是一个想法,你考虑过 Node.js 吗?是 javascript,我知道,但你有像 Sails(sailsjs.org/#!) 这样的东西,它们使用 websockets 以 REST 方式进行 CRUD 操作。一切都只是做新的
。 -
Websockets 既不是单线程也不是多线程的,它们只是一个协议。它们的实现受线程限制的影响。如果您的 Java Websocket 实现只能在单个线程中使用,那么请移至另一个实现。
标签: java javascript networking websocket