mariadb galera群集在哪里根据上限定理CP或AP基于简要说明如何工作。
答案 0 :(得分:0)
一致性 - 用于处理"关键读取"问题,加莱拉需要一点帮助。见http://mysql.rjweb.org/doc.php/galera#critical_reads
否则,可以说Galera幸存下来了#34;任何"单点故障。
Galera通常部署在3个节点中,每个节点位于3个地理位置。这意味着没有一台机器故障,数据中心故障,地震,龙卷风,网络中断等,一次可以取出多个节点。另外两个节点(无论哪两个节点存活并且仍然相互通信)将声明它们具有法定人数"并继续接受写入和传递读取。此外,"分裂大脑"不可能&#39 ;;这就是保持双主人的任何尝试的原因,即使监视没有幸存任何SPOF。
如果修复了第三个节点或网络,群集会根据需要修补数据,以便3个节点再次具有相同的数据。
当然,这与CAP的定义并不完全相同,但对于计算机集群来说这是一个合理的目标。
它是如何工作的(简而言之)......每个节点都与每个节点对话。它仅在事务的COMMIT
期间执行此操作。 (因此,即使在广域网上传播也是合理有效的,以便在自然灾害中生存下来。)COMMIT
对其他节点表示"我即将这样写;可以吗?"如果没有真正的写作,他们会检查Galera的魔法酱,看看它是否会成功。一旦每个人都说"是",COMMIT
将成功返回给客户。 (这会给你一个关键"阅读问题的提示。)