架构师训练营 week03 总结
这周主要讲的是设计模式有关,而设计模式往上走就会影响系统的架构,因此学好设计模式对设计一个良好的系统架构有着很好的促进作用。
当前的互联网系统面临以下挑战:
高并发、大流量
高可用
海量数据
用户分布广泛,网络情况复杂
安全环境恶劣
需求快速比昂,发布频繁
渐进式发展(不是一蹴而就的)。
针对解决高并发、大流量的方案有垂直伸缩和水平伸缩。
垂直伸缩:直接升级硬件和网络吞吐能力,不需要改变应用架构
水平伸缩:指通过增加服务器数量来提升计算能力的一类架构方法。
互联网架构演化历程:最简单的互联网应用架构->应用数据分离->使用缓存改善系统性能->使用应用服务器集群改善系统的并发处理能力->数据库读写分离->使用反向代理和CDN加速网站响应->使用分布式文件系统和分布式数据库系统->使用NoSQL和搜索引擎->业务拆分->微服务和中台化。
常见架构模式(每一个模式描述了一个在我们周围不断重复发生的问题以及该问题解决方案的核心):分层、分割、分布式、集群、缓存、异步、冗余、自动化、安全。
如何衡量一个系统的架构设计:高性能、高可用、可伸缩、可扩展、安全。
互联网技术架构指南:
这里主要介绍与后端相关的架构:
网关及应用层架构:网关架构、负载均衡、动态页面静态化、业务拆分
服务处架构:微服务框架、分布式消息队列、分布式缓存、分布式一致性服务
存储层架构:分布式文件、分布式关系数据库、NoSQL数据库
后台架构:大数据平台、搜索引擎、推荐引擎、数据仓库
运维与安全:数据采集与展示、数据监控与报警、攻击与防护、数据加密与解密。
两个架构例子:淘宝网、宅米网架构。
评论