2013-06-05 57 views
0

所以,我已经构建了一个基于Netty 3.6.2的Websockets服务器应用程序。这个应用程序将有许多用户。Netty和频道和Websockets

这个想法是,客户端注册以侦听关于主题的信息,并且当信息流经服务器时,服务器将信息发送给客户端。听起来很简单,对吧?

我通过构建一个巨大的地图,将内容映射到客户端的频道来实现此目的。当服务器也想发送关于某个主题的消息时,所有感兴趣的客户端都会遍历映射到该主题的所有通道。看起来很简单,对吧?

但是,在一些初步的多用户测试中,我发现自己意识到通道和客户端之间没有一对一的映射关系。如果不通过频道,我该如何专门针对特定客户发送消息?我不知所措......

+0

为什么通道和客户端之间没有一对一的映射?是否因为一个客户可能有多个开放渠道? – Nicholas

+0

我认为应该有一个1-1映射。但没有。当我查看开放频道的数量时,我有7个开放频道,但连接了1000个用户。这对我来说没有意义。但是,我可以看到1000个通道全部打开..只是目前只有7个通道打开。 – CStepnitz

+0

等一下,如果只有7个通道,实际上只有7个物理连接,那么你如何计算1000个用户呢? – Nicholas

回答

0

应该有一个比例的客户打开渠道。没有的事实是某种与netty无关的问题。

谢谢你的帮助。