《大型网站架构演变》
1、普通WebServer+Database
2、在Webserver前端增加页面缓存,如squid
3、在Webserver上增加页面片段缓存,ESI技术,缓解页面中静态的片段内容的加载次数。
    推荐使用Varnish,开源,功能强大。squid也可以满足正常需要,但对ESI支持有限。
4、增加数据缓存,缓解系统中重复获取的数据,如用户数据。
    技术是MAP数据结构。

5、增加Webserver
    需要考虑,
    A、访问的均衡分配,使用Apache自带的负载均衡方案或使用LVS负载均衡软件
    B、如何保持用户状态信息同步,可以把session写入数据库,写入存储,或同步session信息机制
    C、如何保持数据缓存信息的同步,使用同步缓存或分布式缓存
    D、上传文件功能,使用共享文件系统或存储

6、分库,横向扩展数据层。需要改变程序,和业务有关

7、分表、DAL和分布式缓存

8、增加更多的Webserver

9、数据读写分离和廉价存储方案

10、进入大型分布式应用时代和廉价服务器集群梦想时代








  
09-01 02:46