跨机集群节点管理方案

打印 上一主题 下一主题

主题 865|帖子 865|积分 2595

集群配置(cluster config)

所有节点共同维护同一份集群配置,共享集群内节点的相关配置信息:
  1. {
  2.     node_1 = {addr = "127.0.0.1:10014", expire = "2024-01-01 00:00:00" },
  3.     node_2 = {addr = "127.0.0.1:10024", expire = "2024-01-01 00:00:00" },
  4.     -- ...
  5. }
复制代码
共享配置的方案:

  • 以本地文件方式:配置以文件的情势保存在所有的节点路径下,节点通过访问本地文件获取集群内所有节点的配置信息;
  • 以公共内存方式:配置由节点外的公共内存(比如数据库)维护,提供访问和更新接口,共享给所有节点。
维护配置的方案
每个节点定时上报更新当前节点的配置,配置设置定时过期expire;上报时间间隔比过期时间短,当获取不到指定节点配置时,表明该节点已退出集群;
每个节点定时获取集群配置更新本地缓存,当发现失效节点时对应触发本节点上的相应处理;如当某一路由节点失效时,使用该节点的玩家节点必要重新分配新的路由节点;
跨机集群的核心实现

开启跨机消息管理服务,节点内所有必要跨进程投递的消息都通过此服务转发,通过网络送达集群内目标节点。
服务实现:每个进程开启服务,服务内缓存集群节点的配置信息,与每个节点创建通信连接(n * n),负责当前节点和其他集群内节点之间的消息通信;

  • 根据当前节点配置监听集群消息入口(ip+port),开放与集群内节点的消息交互;
  • 维护集群配置缓存,根据配置创建与其他节点的通信通道,并提供配置更新接口(reload),支持动态更新集群节点;
  • 集群内节点状态监控,实实际时淘汰切换更新。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

罪恶克星

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表