java的mina框架做聊天室服务器,怎么广播聊天信息。 java的mina框架做聊天室服务器,怎么广播聊天信息。我现在是遍历保存的SESSION,然后逐个发送信息,有没有更高效的方法。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 建立session池 给每个session发消息 遍历行为是触发行为的基础你要对所有事情处理就需要进行遍历处理只是想办法做在底层还是坐在上层的区别你要做的比较另类可以这么干,反过来做,每个session方一个定时器。。定时从message缓存中去取需要发送的消息 呵呵 不过这么做效率不一定比原来高 一般广播都是服务端轮询每个用户进行发送的。由于广播的内容,都非常小,可能都不到1kByte,所以,速度还是会非常快的。如果楼主还觉得这样不够快,或者发送的广播信息比较巨大,可以参考P2P的扩散技术。我的想法是:让某些用户分担广播发送的工作。比如,有10000个用户在聊天室内,服务端可以指定100个人先将消息发给他们,然后,这100个人,每人再发99个人,就完成广播的扩散了。但是,服务端还要对本次广播的扩散情况进行辅助管理才行。客户端之间的广播传递,可通过UDP/TCP的“打孔技术”进行实现。当然,一般情况下,小信息的广播是绝对不用上述方法的,弊端要更多一些。 JAVA 精点转换问题求解~~ 再请教java socket接收发送 多线程编程,实现机器人手臂和腿部运动模拟,急 刚学java小应用程序,显示问题,老鸟们都进来指定一下呀!!!小弟万分感谢 如果定义像C++一样的操作符生载? 如^ | & &= |=等? 怎样用swing设计不变动的组件? 为什么我getConnection时候不能用变量,必须要用写好的字符串、 如何设置tomcat,在线等 java 用什么IDE比较好些??最初级的应该选用哪个?? 我的机器怎么装不了Oracle啊?有没有谁也碰到过类似的问题? Swap 函数问题 刚学的小菜 哥哥姐姐们帮我看一下这个
只是想办法做在底层还是坐在上层的区别你要做的比较另类可以这么干,反过来做,每个session方一个定时器。。定时从message缓存中去取需要发送的消息 呵呵 不过这么做效率不一定比原来高
由于广播的内容,都非常小,可能都不到1kByte,所以,速度还是会非常快的。
如果楼主还觉得这样不够快,或者发送的广播信息比较巨大,可以参考P2P的扩散技术。我的想法是:
让某些用户分担广播发送的工作。
比如,有10000个用户在聊天室内,服务端可以指定100个人先将消息发给他们,
然后,这100个人,每人再发99个人,就完成广播的扩散了。
但是,服务端还要对本次广播的扩散情况进行辅助管理才行。
客户端之间的广播传递,可通过UDP/TCP的“打孔技术”进行实现。当然,一般情况下,小信息的广播是绝对不用上述方法的,弊端要更多一些。