读书笔记(一)

大型网站架构演化数据库

1,应用服务与数据服务分离缓存

  •  应用服务器须要强大CPU
  •  数据库服务器须要更快的硬盘和更大的内存
  •  文件服务器须要更大的硬盘

2,使用缓存,减轻数据库压力服务器

  •  缓存分应用服务器本地缓存和专门的远程缓存
  •  本地缓存访问速度快,可是受应用内存大小的限制
  •  远程分布式缓存能够使用集群的方式,理论上无限容量

3,使用应用服务器集群改善网站并发处理能力网络

  •  经过负载均衡调度服务器将请求分发到应用服务器集群中的任何一台服务器

4,数据库读写分离架构

  •  应用服务器使用专门的数据访问模块,使数据库读写分离对应用透明
  •  利用数据库的主从热备功能,实现读写分离

5,使用反向代理和CDN加速网站响应并发

  •  CDN和反向代理的基本原理都是缓存
  •  CDN和反向代理的区别在于CDN部署在网络提供商的机房,使用户能够就近获取数据;反向代理服务器部署在网站的中心机房
  •  CDN和反向代理服务器缓存着用户请求的资源,将其直接返回给用户
  •  反向代理服务器部署在负载均衡服务器以前(书上的图标识)

6,使用分布式文件系统和分布式数据库负载均衡

  •  单表数据规模很是庞大的时候才使用分布式数据库,分布式数据库是数据库拆分的最后手段
  •  通常的数据库拆分是根据业务进行分库,将不一样的业务部署在不一样的物理服务器上

7,使用NoSQL和搜索引擎分布式

  •  NoSQL对可伸缩性具备更好的支持

8,业务拆分网站

  •  将业务进行拆分,每一个业务单独部署
  •  业务之间能够用远程调用或消息队列进行通讯

9,分布式服务搜索引擎

  •  业务拆分到最后会致使应用总体复杂度指数增长,数据库连接资源不足,所以须要分布式服务
  •  分布式服务是将一些能够复用的业务独立出来,提供共用业务服务
相关文章
相关标签/搜索