1. 大型网站软件系统的特点
- 高并发,大流量
- 高可用
- 海量数据
- 用户分布广泛,网络情况复杂
- 安全环境恶劣
- 需求快速变更,发布频繁
- 渐进式发展
2. 大型网站架构演化发展历程
(一) : 初始阶段
(二) : 应用服务和数据服务分离
(三) : 使用缓存改善网站性能
(四) : 使用应用服务器集群改善网站的并发处理能力
(五) : 数据库读写分离
(六) : 使用反向代理和CDN加速网站响应
CDN和反向代理的基本原理都是缓存,区别在于CDN部署在网络提供商的机房,使用户在请求网站服务时,可以从距离自己最近的网络提供商机房获取数据;而反向代理则部署在网站的中心机房,当用户请求到达中心机房后,首先访问的服务器是反向代理服务器,如果反向代理服务器中缓存着用户请求的资源,就将其直接返回给用户。
(七) : 使用分布式文件系统和分布式数据库系统
(八) : 使用NoSQL和搜索引擎
(九) : 业务拆分
(十) : 分布式服务
3. 大型网站架构演化的价值观
- 大型网站架构技术的核心价值是随网站所需灵活应对
- 驱动大型网站技术发展的主要力量是网站的业务发展
4. 网站架构设计误区
- 一味追随大公司的解决方案
- 为了技术而技术
- 企图用技术解决所有问题