程序员如何打造日PV百万的网站架构.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序员如何打造日PV百万的网站架构

程序员如何一个人打造日PV百万的网站架构 曹力 @ShiningRay 的特征 穷(买不起服务器,租不起带宽) 野心大(其实目标是1000wPV) 智商情商有限(不敢使用NB的工具和算法) 有点小聪明 本人经历 2008年~2011年维护过糗事百科 2011年~2012年创办过博聆网 2012年至今在暴走漫画 应用场景 功能类似Blog、留言板 用户以浏览为主 同一时刻大部分用户看到的内容大体一致 有一定的交互(投票,留言,私信) 需要SEO 同时 都很没有节操和下限 Lets start 简单的算术 1天 86400秒,12小时 43200秒 上午9点至下午9点占90%访问量 12小时900,000 PV≈20.8 PV/s 20.8PV/s 相当于每个请求48毫秒 高峰时期会有2~5倍请求量 ≥100rps 100RPS 200ms Rails 进程 x 20 初始的架构 单一服务器的问题 CPU吃紧(4核不错了) 内存吃紧(8G高端啊) 磁盘IO吃紧(RAID真奢侈) 难点 每个页面都需要显示用户信息 每个文章的顶埋数量变化非常快 根据观察 50%~80%访客是不登陆的 首页等几个页面占了50%以上访问量 页面上80%内容是不变的,剩下的主要为用户相关信息 根据观察 用户关注的核心是内容,这部分是变化少 未登录用户交互更少,也不关注数据的准确性 策略 未登录用户直接返回缓存内容 分离页面上的静态内容和动态内容 先载入相对不常变的缓存的内容 然后加载经常变化的内容 异步载入优势 最快速地让用户看到他们最希望看到的页面内容 子请求不进行模板渲染 子请求仍然可以进行缓存 子请求可以和HTTP API放在一起实现(可单独进行优化,参见《Build Api Services Asynchronously》 - 黄志敏 @flyerhzm ) 简单的计算 首页等页面可缓存的页面占80%访问量 80w PV 即,实际只有20w的请求是需要单独处理的完整页面 80%的用户是非登录用户,80w实时数据请求可以被(短时)缓存。 20w用户信息的请求(亦可缓存) 有一天高帅富王尼玛找到我 日访问量1000万PV! 日访问量1亿PV! 高帅富的开发方式 Challenge1. 多台Rails服务器与缓存 caches_

文档评论(0)

wannian118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档