从网站的架构发展看缓存

1.3  从网站的架构发展看缓存

  • 一台物理主机运行着应用服务器和数据库
    (具备一定特色后,吸引一定的用户,系统压力增加,响应变慢,此时比较明显的是应用和数据库之间的影响。于是)
  • 应用服务器和数据库服务器拆分:应用服务器和书苦苦服务器分为两台服务器。(恢复到以前的响应速度,支持更高流量了,此时技术上没有什么新的要求)
    (访问人数继续增加,导致数据库连接竞争激烈,因此缓存开始登场)
  • 页面缓存:可以选择静态页面缓存(这样不用修改程序),减少数据库连接资源的竞争。随后,动态缓存登场,将动态页面相对静态的部分缓存起来(考虑类似的页面分片段缓存策略)
    (访问继续增加,系统有变慢了)
  • 数据缓存(本地):系统中重复获取的数据信息从数据库加载到本地,降低了数据库负载。
    (访问量持续增加,应用服务器扛不住了)
  • 增加应用服务器。(此时如何保证应用服务器中的数据缓存信息的同步呢?如之前缓存的用户数据等,这时通常使用缓存同步机制以及共享文件系统或共享存储等)
    (访问量继续增长,系统再次变慢)
  • 数据库调优,优化数据库自身的缓存,接下来采用数据库集群以及分库分表策略。(分库分表比较复杂,考虑增加一个通用框架实现分库分表的数据访问,这就是数据访问层Data Access Layer ,DAL)(这个阶段会发现原来的缓存同步方案出现问题,因为数据量太大,导致不能将缓存存储到本地后再同步,于是分布式缓存来了)将大量数据缓存转移到分布式缓存上。
    (此时,系统进入了无极缩放的大型网站阶段,网站流量增加,解决方案就是添加Web服务器,数据库服务器,缓存服务器,如下图示)

 

posted @ 2020-05-06 14:40  vvf  阅读(91)  评论(0编辑  收藏  举报