首页 > 代码库 > 《大型网站技术架构》1:概述

《大型网站技术架构》1:概述

参考自《大型网站技术架构》第1~3章


1、大型网站架构演化发展历程

(1)初始阶段的网站架构:一台服务器分别作为应用、数据、文件服务器

(2)应用服务和数据服务分离:三台服务器分别承担上述三项工作,其中应用服务器要求CPU强大、数据库服务器需求更快的硬盘和内存,文件服务器需要较大的硬盘。

(3)使用缓存改善网站性能:分为本地缓存以及缓存在专门的分布式服务器上的远程缓存。

(4)使用应用服务器集群改善网站的并发处理能力。

(5)数据库读写分离。

(6)使用反向代理和CDN加速网站响应。二者的基本原理都是缓存,区别在于CDN部署运营商的机房,而反向代理则部署在网站的中心机房,作为服务器群的最前端。

(7)使用分布式文件的系统和分布式数据库。分布式数据库是网站拆分的最后手段,只有在单表数据规模非常庞大的时候才使用。不到不得已时,网站更为常用的数据库拆分手段是业务分库,将不同业务的数据部署在不同的物理服务器上。

(8)使用NoSQL和搜索引擎。二者对可伸缩的分布式特性具有更好的支持。

(9)业务拆分:将不同的业务拆分为不同的产品线,分归不同的业务团队负责。

(10)分布式服务。


2、大型网站的架构模式

(1)分层

(2)分割

(3)分布式

(4)集群

(5)缓存

(6)异步

(7)冗余

(8)自动化

(9)安全


3、大型网站核心架构要素

(1)性能

(2)可用性

(3)伸缩性

(4)扩展性

(5)安全性