«

大规模网站架构

jabin 发布于 阅读:14 技术


大规模网站架构

以下并非所有都经过本人实践,部分为根据资料的假想所得,切勿贯彻本本主义。

网站架构目标

原则

系统异构

数据库

数据库读写分离

数据库纵横切分

水平切分

– 在系统设计时就考虑数据库切分的话,应先在一台服务器创建多个数据库节点,当负载达到一定程度时,再将节点迁移至其他服务器上,这样可以减少数据迁移的工作量。每次增加数据库节点,原则上应为已有节点的倍数,而不是一台台的增加。

垂直切分

表分区

非关系数据库(NoSQL)

高性能

海量存储

负载均衡

DNS负载均衡

反向代理负载均衡

负载均衡软件

高可用性

缓存

按功能分

按存储介质分

memcached

反向代理缓存

静态资源分离

img,js,css使用单独的服务器处理请求

FAQ

A.一些大网站,图片服务器为什么都用另外一个域名? 比如yahoo.com 图片服务器用了yimg.com 的域名?

1.因为IE等浏览器对单一域名有并发限制

2.避免COOKIE 的影响,如taobao.com 域下的Cookie 信息不会被带到 taobaoimg.com 域下,提高了图片服务器解析 header 头的速度。

CDN

浏览器优化

http header: Content-Encoding: gzip

http header: Etag,Last-Modified

分布式Session

分布式文件系统

架构