让我们考虑使用 WebSockets 的应用程序,它可以分为几个独立的模块。一个最简单的示例是聊天应用程序,其中客户端应用程序可以一次加入/连接到多个聊天室(每个聊天室彼此独立)。在开发此类应用程序时组织连接的首选方法是什么
在客户端为每个聊天室打开新的 websocket 连接。这样,您将
javax.websocket.server.ServerEndpoint
在服务器端拥有多个实例,每个实例都有不同的 url。因此,服务器和客户端应用程序都将不那么复杂,并且可以分成功能(可重用)块。缺点是客户端必须同时保持多个打开的连接。就我而言,我们一次最多谈论十个。打开一个 websocket 连接并将消息多路复用到下面的聊天室,即通过消息中带有聊天室 id 的字段。实现起来没什么大不了的,会使应用程序更复杂一点,但值得吗?
首选方法是什么?