socket服务器端群发消息给所有客户端时只能遍历一下所有客户端然后一个一个发吗,上千的用户就效率就很低

2024-12-16 12:43:46
推荐回答(2个)
回答1:

这个取决于你对性能的要求
遍历是最简单的方案
1还有个方案就是加载一个webservice类似的server,然后由客户端定时的去刷新消息
2.还可以通过udp的方式发送,由客户端进行完成,类似p2p的方法

呵呵,如果是webgame的话就更应该让客户端主动的去刷新服务器了
独立出来一个消息接口,比如json格式类似的,不要用webservice,然后群发消息处理这里就让客户端定时刷新服务器端的消息队列即可

我的意思是你做系统消息群发消息的时候,而不是实时交流的时候哦

回答2:

服务端安排个系统消息队列,客户端主动查询,当查到队列不为空时,将消息读取出来好了,这样服务端群发消息时,只需要将消息追加到系统消息队列中