架构师训练营第四周学习总结
互联网系统面临的挑战
高并发,大流量
高可用
海量数据
用户分布广泛,网络情况复杂
安全环境恶劣
需求快速变更,发布频繁
应对高并发挑战的两个技术方向
垂直伸缩:升级硬件和网络吞吐能力
缺点
达到某个程度后,增加计算能力需要的更多的花费
垂直伸缩有物理极限
操作系统的设计或者应用程序自身制约着垂直伸缩最多只能达到某个点
水平伸缩:通过增加服务器提升计算能力
水平伸缩可以克服垂直伸缩带来的单位计算成本随计算能力增加而迅速飙升的问题
水平伸缩总是可以增加更多服务器,这样,就不会像垂直伸缩那样遭遇到单台服务器的极限
前期快速发展时期通过垂直伸缩快速提高处理并发的能力,后期通过水平伸缩提供高并发高可用服务
互联网架构演化
0:最简单的互联网应用架构
快速验证市场
1:应用数据分离
应用服务、文件服务、数据库服务分布部署在不同的服务器,分散服务器压力
2:使用缓存改善系统性能
减少计算压力,提高读取效率
3:使用应用服务器集群改善系统的并发处理能力
水平伸缩,在单台服务器处理能力不变的条件下提升系统并发处理能力
4:数据库读写分离
通过将写、读请求调度到主、从数据库,提升数据库并发处理能力
5:使用反向代理和CDN加速网站相应
提升静态资源读取效率
6:使用分布式文件系统和分布式数据库系统
7:使用NoSQL和搜索引擎
8:业务拆分
9:微服务及中台化
10:大数据与智能化
评论