《大型网站架构演变》
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、进入大型分布式应用时代和廉价服务器集群梦想时代
阅读(809) | 评论(0) | 转发(0) |