24
SOSO 访访访访访访 Calvinli 2007-12- 04

腾讯大讲堂13 soso访问速度优化

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: 腾讯大讲堂13 soso访问速度优化

SOSO访问速度优化

Calvinli

2007-12-04

Page 2: 腾讯大讲堂13 soso访问速度优化

SOSO 产品线简单介绍

Page 3: 腾讯大讲堂13 soso访问速度优化

综合搜索

Page 4: 腾讯大讲堂13 soso访问速度优化

问问

Page 5: 腾讯大讲堂13 soso访问速度优化

看看我们都优化了哪些部分

• 服务器布局优化• 减少页面 HTTP 请求• 启用服务器端压缩• 调整 DNS TTL• CDN 外包• 第三方评测服务• … …

Page 6: 腾讯大讲堂13 soso访问速度优化

服务器布局优化

• SOSO 用户分布

通过对用户来源的统计分析, soso 用户主要分布在南方沿海省份及人口大省,南北方分布比例大致为 7 :3 ,其中广东超过 200万独立用户,江苏、浙江分别超过 100 万独立用户。

Page 7: 腾讯大讲堂13 soso访问速度优化

服务器布局优化

• SOSO 理想服务器布局

Page 8: 腾讯大讲堂13 soso访问速度优化

服务器布局优化

• 按照用户的运营商及地域分布, SOSO 用户大致可以分为五个区域:

Page 9: 腾讯大讲堂13 soso访问速度优化

服务器布局优化

Page 10: 腾讯大讲堂13 soso访问速度优化

服务器布局优化

• 根据用户数据分析及公司对 IDC 的建设重点, SOSO 最终部署的 IDC 为:

– 天津 \北京(北方用户)– 西安(西南、西北用户)– 深圳(南方用户)– 上海 \南京(华东、华南用户)

Page 11: 腾讯大讲堂13 soso访问速度优化

服务器布局优化

• 案例 一www.soso.com网页搜索频道

网页搜索之前仅在天津和深圳部署服务器,调整后网页搜索前台分布在北京、上海、深圳、成都。这样的分布照顾了各地用户的体验,尤其可以改善北京、上海、江浙一带、四川等地的用户,这些地区用户数超过 SOSO 用户的 30% 。网页前台从天津迁移至北京后,北京用户访问速度提升 29% ,增加上海服务器部署后,上海用户访问速度提升 25% ,增加成都服务器部署后,四川用户访问速度提升 27% 。

Page 12: 腾讯大讲堂13 soso访问速度优化

最大限度的减少 HTTP 请求

• 用户装载页面过程中 85% 以上的时间花费在装载图像、CSS 、 JS 等,而浏览器在同一个域名下默认只支持两个并发请求,所以最大限度的减少 HTTP 请求是网页快速装载的关键。

Page 13: 腾讯大讲堂13 soso访问速度优化

最大限度的减少 HTTP 请求

• 在不影响产品表现的情况下尽量精简页面元素• 使用 CSS 图像拼合技术• 将原有页面中由 JS 实现的部分功能迁移到后台实现,页

面中只保留必要的 JS• 页面大小尽量在控制在 MTU 的整数倍,充分利用每一次

包传输

Page 14: 腾讯大讲堂13 soso访问速度优化

最大限度的减少 HTTP 请求

• 案例 二• SOSO 音乐搜索首页应用了 css 图像拼合技术,将页面中

用到的小图片拼合成一张大图片在 css 中调用• 图像拼合前需要 7 次 http 请求才可以将图片下载完,拼合

后只需要 1 次• 图像拼合后减少了页面代码中的重复部分

Page 15: 腾讯大讲堂13 soso访问速度优化

最大限度的减少 HTTP 请求

Page 16: 腾讯大讲堂13 soso访问速度优化

启用服务器端压缩

• 针对 apache 1.3 + mod_gzip 和 apache-2.0.59 + mod_deflate 等多种配置进行响应时间、压缩率、服务器负载的测试。

• 测试结果表明在压缩率基本相同的情况下,由于mod_deflate( C )模块造成的负载远低于mod_gzip ( A ) , 最终选定apache2.0.59+mod_deflate

Page 17: 腾讯大讲堂13 soso访问速度优化

启用服务器端压缩• 案例三• Apache打开mod_deflate 后流量较之前节省了 30-40%.

以 12月 22日和 12月 19日流量数据对比,打开mod_deflate 后流量较之前节省了约 35%.

Page 18: 腾讯大讲堂13 soso访问速度优化

调整 DNS TTL

• DNS TTL

通过对用户访问过程的监测,发现在用户访问过程中, DNS解析时间占用了较大的比例,通过与管工的沟通,将 DNS TTL 由 10 分钟修改为 30 分钟。延长 DNS TTL 时间可以减少用户到根服务器解析 A纪录的次数,从而减少 DNS解析时间,同时也降低了用户到 DNS 访问出错的几率,提高服务可用性。TTL修改后每天的根域查询量降低了 40% 。

Page 19: 腾讯大讲堂13 soso访问速度优化

CDN 外包

• 今年 4月初,公司启动了 CDN 外包项目, SOSO 对各厂商进行测试,在对试点数据进行了多次测试和分析的基础上, 5月底开始逐步将线上内容切换至 CDN ,虽然 CDN的推进带来了一些额外的工作,但是静态内容切换至 CDN 后,速度较切换前提升 15%,同时节省了大量服务器和运营管理的成本。

Page 20: 腾讯大讲堂13 soso访问速度优化

第三方评测服务

• 为了客观得到用户访问的体验数据,我们在部门自己架设监测服务器的基础上,引入了第三方评测服务, 5月初购买了 gomez 评测服务,通过 gomez 在全国的节点对现有服务进行监测,可以知道不同地区、不同接入带宽的最终用户实际访问效果,对业务的改进很有帮助。

Page 21: 腾讯大讲堂13 soso访问速度优化

第三方评测服务

• Gomez 测试数据展示。可以通过最终用户的访问纪录到用户请求每一个页面元素的 DNS 、 Connect 、 1stByte 、 Download 等时间

• 还可以看到按省份、运营商等分类的统计数据。

Page 22: 腾讯大讲堂13 soso访问速度优化

优化成果• 2007年 14期《互联网周刊》刊登了一篇名为《中国热门网站用户

体验排行榜》的文章,文中 SOSO 在响应时间、可靠性、稳定性三个方面分列第三、第二和第三;在国内搜索类网站中排名第二。

• 这个排行榜是《互联网周刊》与网络服务机构 gomez共同推出的,5月底,测试方根据中国互联网协会( http://www.chinarank.org.cn/)上热门网站的排行,通过部署在北京、上海、广州的测试节点对热门网站进行了为期一个月的监测。

Page 23: 腾讯大讲堂13 soso访问速度优化

后续的性能优化相关工作

• 利用 toolbar客户端优势,搭建产品测速平台。• 网页搜索结果页静态化。

Page 24: 腾讯大讲堂13 soso访问速度优化

谢谢大家