架构师训练营第 1 期第 4 周作业
宅米网各个阶段的架构设计
架构1.0
根据业务领域搭建4组独立的应用服务器集群,并通过负载均衡和反向代理接入后台系统,配置一个中心数据库。
解决的挑战:系统建立初期,搭建一个简单稳定的、高可用、可伸缩、可扩展应用服务器架构,为未来并发量扩容、业务功能扩展做好准备。
运用的架构模式:分层(业务、数据分离)、分割&分布式&集群&冗余(负载均衡+按业务场景划分应用服务器集群)、缓存(Nginx反向代理)、安全(Nginx反向代理)
架构2.0
增加CDN边缘节点,增加Redis, 增加分布式文件系统,建立一主多从的数据库架构,搭建大数据平台。
解决的挑战:通过缓存和读写分离降低单节点数据库的压力,提升响应速度。通过CDN边缘节点降低高峰值并发对中心系统的访问压力,增加远程客户端响应速度。通过分布式文件系统进一步实现动静分离。通过大数据平台监控分析,精细化管理业务。
运用的架构模式:冗余(数据库一主多从)、缓存(增加CDN、Redis、分布式文件系统)
架构3.0
增加公共微服务集群,增加NoSQL数据库存储冷数据。
解决的挑战:通过提取基础模块到公共微服务,解决代码耦合、重复问题,提升系统的扩展性。通过增加MongoDB实现冷热分离,定期将MySQL中的历史数据转移,降低中心数据库的存储压力。
运用的架构模式:分割(通过MongoDB进行数据冷热分离)、分层(提取公共微服务)
评论