网络游戏服务器中全局广播的优化
来源:互联网 发布:如何成为探险家知乎 编辑:程序博客网 时间:2024/05/16 07:59
在网络游戏服务器中,有些通知,世界聊天等信息需要对全服进行广播,如果每条信息都立即进行全服连接遍历和发送,不是很合适。所以有必要对这个进行优化。
容器:
我们建立两个连接的列表。把一个列表称为未广播连接列表,另一个称为已广播连接列表。
我们建立两个广播信息的列表。一个称为全局广播信息列表,另一个称为当前广播信息列表。
信息发送:
在发送广播信息的地方,我们把信息直接加入到全局广播信息列表。
优化方法:
1- 广播信息触发逻辑:
定期检查全局广播信息列表和当前广播信息列表,如果全局列表不空且当前列表为空,则从全局列表取定量的待广播信息,放入当前广播信息列表。
2- 广播信息发送逻辑:
当前广播信息列表不为空时,从未广播连接列表中取数个连接,将当前广播信息列表中的信息从连接上发给客户端,然后把这些连接加入到已广播连接列表。
直到未广播连接列表为空,清空当前广播信息列表,交换未广播连接列表和已广播连接列表。
新连接到来:
根据需要,将他们加入到已广播连接列表和未广播连接列表。我是推荐加入到已广播连接列表。防止收到重复的广播信息。
这样优化之后,通过调整一次发送的广播信息的量,和每次广播的连接个数,就可以有效的降低广播对服务器的压力。
安达利,飞鸽传书,金牛头
- 网络游戏服务器中全局广播的优化
- 网络游戏服务器注意事项,优化措施
- 网络游戏服务器注意事项,优化措施
- Fastlib中全局广播使用
- 网络游戏中服务器和客户端的视图数据的同步
- Android 全局广播的使用
- 经典的网络游戏服务器架构
- 网络游戏服务器架构中,网关服务器的存在有什么优势
- 网络游戏服务器
- 高性能的网络游戏服务器的设计
- 高性能的网络游戏服务器的设计
- 高性能的网络游戏服务器的设计
- 高性能的网络游戏服务器的设计
- Android 通过广播实现全局的AlertDialog
- 关于UDP网络游戏服务器的一些探讨
- (转)一种经典的网络游戏服务器架构
- 一种经典的网络游戏服务器架构
- 一种经典的网络游戏服务器架构
- 致程序员之家论坛的所有会员
- 四大不良生活习惯让你显老12岁
- 如何学好VC++
- 有关 placement new
- Edit 控件响应或处理 回车消息
- 网络游戏服务器中全局广播的优化
- 网页素材——色彩
- Activities of one day in agile project
- ASP.NET State Service
- jxl操作excel
- js 滚动文字
- ASP.NET中上传文件到数据库
- Window Gadget 边栏小工具 20分记分器
- c# 安装包制作 可能遇到的问题及处理方法