我们在右边添加了一个集群调度平台,包含调度服务、扩缩容服务和高可用服务等,它会去管理整个集群,把管理结果作为元数据更新到Z我们的客户端会订阅Z上的元数据变更,实时获取到集群的拓扑状态,直接对集群节点进行读写操作q水平扩展扩展,会有如下问题:一个是的消息通信量是节点数的平方,随着集群节点数的增加,通信的消息量会急剧膨胀
比如,我们 科威特手机号码列表 实测对于一个9节点的集群,消息的消耗会高达%,远高于小集群的资源消耗,这样会造成极大的资源浪费除了资源的浪费以外,消息过多,也会更多抢占用户请求处理线程的资源,进而会导致用户请求经常被消息的处理所阻塞,再导致用户请求产生更多的超时,影响服务可用性

优化为了解决上述的扩展性问题,我们对社区的方案进行了优化首先针对传输的消息,我们通过对其做了一个摘要,把集群通信的数据量减少了9%以上服务端节点仅需要对比值即可判断元数据是否有更新,对于存在更新的情况也能快速判断出更新的部分,并仅对此部分元数据进行获取、更新,大幅降低了消息处理的资源消耗
|