BeetleSoft
“大型”网站技术架构探讨
余浩东
2011年6月
CE v6.3
大型网站架构的目标与挑战
网站架构演变及其技术脉络
架构设计理论与原则
讨论及总结
BeetleSoft 大型网站技术架构探讨[2]
大型网站架构的目标与挑战
■何谓“大型”网站?
没有统一的判断标准,流量大小是一个重要指标
网站
日均流量[IP/PV]
www.hao123.com
IP≈ 5,972,587 PV≈ 9,376,962
www.facebook.com
IP≈229,680,000 PV≈2,955,981,600
www.sina.com.cn
IP≈25,680,000 PV≈222,132,000
www.tianya.cn
IP≈5,532,000 PV≈25,723,800
www.pingan.com
IP≈300,000 PV≈747,000
日均流量至少IP>1,000,000才算大型网站
BeetleSoft 大型网站技术架构探讨[3]
大型网站架构的目标与挑战
■何谓“大型”网站?
网站内容是否“动态”才是关键
BeetleSoft 大型网站技术架构探讨[4]
大型网站架构的目标与挑战
■网站架构目标与挑战
负载均衡
数据备份
异地容灾
。。。
高速缓存
并行计算
异地镜像
。。。
每个目标背后面临着技术、设计、维护等诸多方面的挑战。
而目标本身的期望值也会根据实际情况进行调整,这也意味着网站架构建设是个不断调整的过程。
开发框架
多层设计
业务分割
。。。
BeetleSoft 大型网站技术架构探讨[5]
大型网站架构的目标与挑战
网站架构演变及其技术脉络
架构设计理论与原则
讨论及总结
BeetleSoft 大型网站技术架构探讨[6]
网站架构演变及其技术脉络
■[Step1]Web动静态资源分离及其与DB物理分离
n优点:“简单”、安全性提高
n缺点:存在单点,谈不上高可用性(high availability架构目标)
n技术点:应用设计要保证可扩展(framework很重要Spring/Beetle)、Web Server动/静态资源分离
Web Server(Apache\Nginx\IIS\JBoss…)、
Database Server(Mysql\Oracle\Redis…)
BeetleSoft 大型网站技术架构探讨[7]
网站架构演变及其技术脉络
■[Step1]技术点—Web动静态资源分离
img,doc,js,css等静态资源使用单独的Web HTTP Server处理请求
动态页面静态化处理
BeetleSoft 大型网站技术架构探讨[8]