码迷,mamicode.com
首页 > Web开发 > 详细

大型网站技术架构 读书笔记

时间:2015-09-23 16:31:52      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:

 

1.任何环节都要考虑服务器崩溃,考虑最坏情况,数据一定要做好备份

   无论是服务层数据层还是应用层,都把服务器弄成分布式,通过路由算法调度访问,实现可伸缩性
  
2.让页面加载尽可能少的需要从网络请求
   经常访问的且变化较少的页面写成静态,布置在CDN或反向服务器上
   访问频率极其高的资源缓存到CDN上,网络提供商是用户路由访问的第一站
   通过大量缓存,或把数据库的连接弄成池,减少数据库的读取
   生产者-消费者模式:生产信息的操作完产生信息后把产生的信息压入信息队列,同时返回操作成功给用户,减少响应时间,信息队列取出信息按列表分发到消费者服务器中。好处:即使消费者服务器出现问题,生产者仍可继续工作,把信息压入队列等待消费者服务器恢复后再处理。当由于大量并发访问使生产者产生大量信息时,消费者仍可按自己情况尽力处理,不至于崩溃,只是信息队列大量堆积而已,从而实现高并发的抑峰
 
3. 测试服务器除了无法被用户访问意外并无不同,与真实环境无异,先在测试服务器更新代码进行测试,通过后再发布,版本更替时,每个板块开发面向新版本接口,同时也保留对老版本其他方法接口,直到都升级完才删除老版本。服务器一直被人访问,所以新版本先更新一部分服务器,再接着更新其他分批更新
    将功能按流程纵向切割,按分类横向切割,规模越大切分粒度越小,布置到不同服务器上
    集群化,负载均衡动态调度,充分利用服务器资源,不过载不空闲
 
 
4.新浪微博:明星用户更新微博,更新完毕后立即返回响应,然后按照粉丝列表更新在线粉丝的微博,未上线的上线时再更新,减少了用户等待响应也,缓解了更新压力  qq空间的说说同理
   秒杀应用:页面写成静态,仅刷新一个小的js,这个js到了时间是按钮亮了可用,同时使得在按钮确认时通过url发送到时从服务器得到的id值来确保是到时才发送的,然后每个服务器发送数目有限,超了提示秒杀失败

大型网站技术架构 读书笔记

标签:

原文地址:http://www.cnblogs.com/liuzhugu/p/4832291.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!