因此,我构建了一个基于 Netty 3.6.2 的 Websockets 服务器应用程序。这个应用程序将有很多很多用户。
这个想法是客户端注册以侦听有关主题的信息,当信息流过服务器时,服务器将信息发送给客户端。到目前为止听起来很简单,对吧?
我通过构建一个巨大的地图来实现这一点,该地图保存在内存中,将主题映射到客户端的 Channel。当服务器想向所有感兴趣的客户端发送关于某个主题的消息时,它会遍历映射到该主题的所有通道。看起来很简单,对吧?
然而,在一些初步的多用户测试中,我发现自己意识到通道和客户端之间没有一对一的映射。如果不通过渠道,我如何专门针对向特定客户端发送消息?我很茫然....