游戏开发:集群配置管理
跨机集群的核心实现:
开启跨机消息管理服务,节点内所有需要跨进程投递的消息都通过此服务转发,通过网络送达集群内目标节点。实现:
每个进程开启服务,服务内缓存集群节点的配置信息,与每个节点建立通信连接,负责当前节点和集群内节点之间的消息通信;
- 根据当前节点配置监听集群消息入口(ip+port),开放与集群内节点的消息交互;
- 维护集群配置缓存,根据配置建立与其他节点的通信通道,并提供配置更新接口(reload),支持动态更新集群节点;
- 集群内节点状态监控,实现实时淘汰切换更新;
集群配置(cluster config)
所有节点共同维护同一份集群配置,共享集群内节点的相关配置信息:
{
node_1 = "127.0.0.1:10014",
node_2 = "127.0.0.1:10024",
-- ...
}
实现共享配置的方案:
1.以本地文件方式
配置以文件的形式保存在所有的节点路径下,节点通过访问本地文件获取集群内所有节点的配置信息;
2.以公共内存方式
配置由节点外的公共内存(比如数据库)维护,提供访问和更新接口,共享给所有节点。
本文来自博客园,作者:linxx-,转载请注明原文链接:https://www.cnblogs.com/linxx-/p/18219118