腾讯大讲堂性能优化不是仅局限于后台.pptVIP

腾讯大讲堂性能优化不是仅局限于后台.ppt

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

性能优化不是仅局限于后台 ----Qzone性能优化报告 QQ空间产品中心 Qwang Qzone优化概述 存储优化 日志重构 访问优化 接入层 逻辑层 表现层 日志重构前问题分析 数据量增长过快 总数据量9T 日增长量约20G 扩容需进行大量数据搬迁 Cache命中率低(50%),DB压力大 旧系统结构 模块 日志回复 日志标题 日志计数 优点 CACHE内存化,提升性能 多进程号段分布处理 业务异步化 缺点 CACHE量有限,命中率低,对DB的性能依赖比较重 模块相互独立,容易造成数据不一致 Qzone数据层优化(日志重构) 与产品经理的Trade-off 区分近期日志与往期日志 区分活跃数据、非活跃数据和历史归档数据 二级缓存(内存+文件) 针对单个号码进行路由 新系统结构 日志信息模块结构 日志重构后的特点 将数据区分为活跃数据、不活跃数据和历史归档数据,减少Cache数据量,提升Cache命中率 Cache根据数据访问活跃度进行扩容 DB根据存储容量进行扩容 Qzone日志重构前后数据对比 Qzone访问速度慢 Http请求量大,下载数据量大 用户CPU消耗高 用户经常投诉打不开Qzone Qzone访问优化前测速 Qzone访问提速优化 量化性能数据 关键路径时间点统计 Yahoo 14 性能优化规则 Make fewer HTTP requests Use a CDN Add an Expires header Gzip components Put CSS at the top Move JS to the bottom Avoid CSS expressions Make JS and CSS external Reduce DNS lookups Minify JS Avoid redirects Remove duplicate scripts Turn off ETags Make AJAX cacheable and small Qzone访问优化 域名访问优化 静态页面与动态数据分离 减少http请求 降低浏览器CPU消耗 Ajax优化 Web Server优化 域名相关 减少*.域名的使用,降低动态DNS查询请求 走访校园网及北方城市,发现双ISP的local DNS的问题 前置机通过域名纠正被错误定位的用户 静态页面相关 拆分静态页面、图片、样式及flash,分散至等静态文件域名 I的CDN外包 静态文件服务器优化 支持长连接 支持gzip压缩 使用expires 减少http请求 合并小图片请求 合并css和js文件 合并动态数据请求 动态数据支持304 有效利用浏览器cache和js变量缓存动态数据 小图片的请求合并(css+背景图) 合并css和js文件 合并css文件 进入Qzone只需要下载2个css文件 Css文件合并工具 合并js文件 删除无用字符(空格、换行等) Js文件合并工具 合并动态数据请求 合并多个模块的动态数据为一个静态文件 动态数据支持304 对大数据量的请求在存储层上增加时间戳 利用js变量和浏览器Cache 利用js变量 Js将获取的动态数据放入数组变量 每次发起动态数据请求前检查数组内是否保存了相应数据 利用浏览器cache 取消了Cache-Control: No-cache 使用url+随机数避免浏览器cache 浏览器下载请求量和数据量对比 降低浏览器CPU消耗 将XML修改为JSON 降低浏览器Parse XML的CPU消耗 支持跨域请求,减少proxy.html请求 减少iframe的使用 尽可能使用div 合理使用cookie 浏览器20个同域cookie的限制 减少因cookie过多造成的分包 Item文件检查工具 Ajax优化 进行数据分级,按优先级顺序请求数据 打开Qzone所需的数据优先加载 异步化请求,尽量避免浏览器同域下两个并发请求的限制 图片延迟加载 页面渲染相关的数据延迟加载 尽可能多的Para-Downloading Web Server优化 拆分CGI异步逻辑 将可以异步化的逻辑交给异步app server处理 配置文件内存化 Cgi 90%的消耗在读取配置文件 使用gprof等工具 使用轻量级Web Server 放弃apache、优化httpsvr 减少共享内存加锁解锁的开销 轻量级Web Server(qzhttpd) 性能部分: 所有机器的CPU的idle都维持在90% - 93%左右 周末高峰期:最大请求量:900左右,平时都维持在:200-400之间 原有服务和现有服务的差别: 周一 至 周四: httpsvr进程cpu最大占用率:10% qzhttpd进程cpu最大占用率:6%, 差别不大 周末: ht

文档评论(0)

178****9325 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档