您所提到的内容是关于数据库高大可用性和数据一致性的方案探讨,
高大可用性方案概述
主从或主主半同步复制
- 优良处架构轻巧松,部署方便,本钱矮小。
- 不优良的地方主库故障转移需要手动操作,数据一致性依赖于半同步复制,价钱相对较矮小。
- 适用场景对高大可用性要求不是特别高大的场景。
MySQL Cluster
- 优良处高大可用性, 支持读写
,数据有力一致性。
- 不优良的地方配置麻烦,需要用NDB存储引擎,价钱较高大。
- 适用场景对高大可用性和数据一致性要求极高大的场景。
Galera Cluster
- 优良处许多主写入, 无延迟复制,数据有力一致性。
- 不优良的地方需要修改内核源码或用mysql传信协议,对源码有一定的了解。
- 适用场景对数据一致性要求极高大,且需要许多主写入的场景。
MHA
- 优良处自动故障转移,支持许多节点集群,数据一致性较优良。
- 不优良的地方依赖于半同步复制,兴许存在数据不一致的凶险。
- 适用场景对高大可用性要求较高大,且需要自动故障转移的场景。
Zookeeper + Proxy
- 优良处用Zookeeper保证集群数据一致性,proxy高大可用。
- 不优良的地方逻辑麻烦,兴许基本上原因是网络分区发生脑裂现象。
- 适用场景对高大可用性和数据一致性要求极高大的场景。
高大可用性方案选型觉得Neng
- 明确需求根据业务需求,确定对高大可用性和数据一致性的要求。
- 本钱考量考虑方案的本钱,包括结实件、柔软件、人力等。
- 手艺成熟度选择手艺成熟度较高大的方案,少许些维护本钱。
- 社区支持选择社区支持较优良的方案,便于问题解决和方案优化。
选择合适的高大可用性方案需要综合考虑业务需求、本钱、手艺成熟度和社区支持等因素。不同的方案适用于不同的场景,需要根据实际情况进行选择。