本阶段规划:
- 分布式缓存中间件Redis
- 分布式会话与单点登录
- 分布式搜索引擎Elasticsearch
- 分布式文件系统
- 分布式消息队列
- 分布式锁
- 数据库读写分离与分库分表
- 数据库表全局唯一主键id设计
- 分布式事务与数据一致性
- 接口幂等设计与分布式限流
什么是分布式架构
- 不同的业务(功能模块)分散在不同的服务器
- 每个子系统负责一个或者多个不同业务模块
- 服务之间可以相互交互与通信
- 分布式系统设计对用户透明
- 可以发展为集群分布式系统架构
单体架构
不同的人安装不同的模块,不同的人
分布式架构优点
- 业务解耦
- 系统模块化,可重用化
- 提升系统并发量
- 优化运维部署效率高
分布式架构缺点:
- 架构复杂
- 部署多个子系统复杂
- 系统之间通信耗时
- 新人融入团队缓慢
- 调式复杂
解bug,业务裂解的差不多,就功能模块
设计原则:
- 异步解耦
- 幂等一致性
- 拆分原则
- 融合分布式中间件
- 容错高可用