解决了脑裂问题后,面向分布式系统的另外一个问题是出现机房级故障怎么办? Tbase目前应用于微信支付系统,因此Tbase的在设计时就考虑了两地三中心的架构(如下图所示)。简单来说,通过让Datanode(数据) 节点实现,同城节点强同步,异地节点异步同步的3节点部署架构实现高可用。同时,让每台主机部署Agent,负责采集各个节点运行状态,上报给所有 Center,同时负责执行 Center 下发的各种操作指令。Center负责状态汇总,并将状态信息写入 ZK 集群;单监听各个节点的运行状态,异常时发起仲裁流程,根据仲裁结果,发起容灾切换流程。当然,Center也支持接收外部用户操作指令,生成分布式指令计划,下发给 Agent 执行,并监控 Agent 的执行状态;
: » Tbase两地三中心容灾方案
原创文章,作者:sunnyman218,如若转载,请注明出处:https://blog.ytso.com/tech/database/252374.html