系列文章目录
分布式–1概述CAP和Base
分布式–2分布式事务
分布式–3分布式一致性算法
分布式-4集群
分布式–5服务限流算法
分布式–6分布式id
分布式–7性能压测
分布式–8日志链路跟踪
分布式-9分布式锁|redis锁的几种实现
1、目标
高可用(High Availability),是当一台服务器停止服务后,对于业务及用户毫无影 响。 停止服务的原因可能由于网卡、路由器、机房、CPU负载过高、内存溢出、自 然灾害等不可预期的原因导致,在很多时候也称单点问题。
• 突破数据量限制,一台服务器不能储存大量数据,需要多台分担,每个存储一部分, 共同存储完整个集群数据。最好能做到互相备份,即使单节点故障,也能在其他节点 找到数据。
• 数据备份容灾,单点故障后,存储的数据仍然可以在别的地方拉起。
• 压力分担,由于多个服务器都能完成各自一部分工作,所以尽量的避免了单点压力的 存在
2、架构
3、mysql集群
1)MMM
主主复制+读写分类+IP漂移
2)innodb cluster
3)常用
主主+主从复制+读写分离+db代理
但这样无法提升单表数据量过大问题。
4)分库分表
详见 https://blog.csdn.net/qq_35841637/article/details/109955808
4、redis集群
5、es集群
主节点:调度、监控
数据节点:存储数据
客户端节点:只负责请求的分发、汇总
可以既是主节点又是数据节点,但这样类,容易崩溃。角色分离解决 脑裂
6、总结
主从、分片、选领导