Suche senden
Hochladen
百姓网如何优化网速-Qcon2011
•
11 gefällt mir
•
3,727 views
Yiwei Ma
Folgen
Technologie
Melden
Teilen
Melden
Teilen
1 von 38
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
高性能并发Web服务器实现核心内幕
高性能并发Web服务器实现核心内幕
ideawu
高性能并发网络服务器设计与实现
高性能并发网络服务器设计与实现
ideawu
Ria的强力后盾:rest+海量存储
Ria的强力后盾:rest+海量存储
zhen chen
1号店数据库架构
1号店数据库架构
Louis liu
Php及drupal性能优化系列(二)
Php及drupal性能优化系列(二)
Robbin Zhao
Mysql fast share
Mysql fast share
rfyiamcool
Redis介绍
Redis介绍
zhaolinjnu
Database.Cache&Buffer&Lock
Database.Cache&Buffer&Lock
Lixun Peng
Empfohlen
高性能并发Web服务器实现核心内幕
高性能并发Web服务器实现核心内幕
ideawu
高性能并发网络服务器设计与实现
高性能并发网络服务器设计与实现
ideawu
Ria的强力后盾:rest+海量存储
Ria的强力后盾:rest+海量存储
zhen chen
1号店数据库架构
1号店数据库架构
Louis liu
Php及drupal性能优化系列(二)
Php及drupal性能优化系列(二)
Robbin Zhao
Mysql fast share
Mysql fast share
rfyiamcool
Redis介绍
Redis介绍
zhaolinjnu
Database.Cache&Buffer&Lock
Database.Cache&Buffer&Lock
Lixun Peng
twMVC#43 C#10 新功能介紹
twMVC#43 C#10 新功能介紹
twMVC
Nosql七种武器之长生剑 mongodb的使用介绍
Nosql七种武器之长生剑 mongodb的使用介绍
yczealot
一个 Mongodb command 的前世今生
一个 Mongodb command 的前世今生
dennis zhuang
高性能网站建设
高性能网站建设
feifeipan
Mysql multi threaded_server_introduction
Mysql multi threaded_server_introduction
lazydba
Lamp优化实践
Lamp优化实践
zhliji2
Tcpcopy 阿里技术沙龙
Tcpcopy 阿里技术沙龙
drewz lin
twMVC#43 YARP
twMVC#43 YARP
twMVC
Huangjing renren
Huangjing renren
d0nn9n
Mysql展示功能与源码对应
Mysql展示功能与源码对应
zhaolinjnu
如何使用 Xhprof 分析網站效能 (真實案例)
如何使用 Xhprof 分析網站效能 (真實案例)
Cyril Wang
如何使用 Xhprof 分析網站效能 (真實案例2)
如何使用 Xhprof 分析網站效能 (真實案例2)
Cyril Wang
对MySQL应用的一些总结
对MySQL应用的一些总结
Lixun Peng
TomCat迁移步骤简述以及案例
TomCat迁移步骤简述以及案例
maclean liu
并发编程交流
并发编程交流
bluedavy lin
Track2 -刘继伟--openstack in gamewave
Track2 -刘继伟--openstack in gamewave
OpenCity Community
MySQL-Proxy
MySQL-Proxy
ruoyi ruan
Java内存管理问题案例分享
Java内存管理问题案例分享
bluedavy lin
HBase@taobao for 技术沙龙
HBase@taobao for 技术沙龙
bluedavy lin
爬虫点滴
爬虫点滴
Open Party
艺龙旅行网架构案例分享-Qcon2011
艺龙旅行网架构案例分享-Qcon2011
Yiwei Ma
周爱民 关于架构之我的观点
周爱民 关于架构之我的观点
George Ang
Weitere ähnliche Inhalte
Was ist angesagt?
twMVC#43 C#10 新功能介紹
twMVC#43 C#10 新功能介紹
twMVC
Nosql七种武器之长生剑 mongodb的使用介绍
Nosql七种武器之长生剑 mongodb的使用介绍
yczealot
一个 Mongodb command 的前世今生
一个 Mongodb command 的前世今生
dennis zhuang
高性能网站建设
高性能网站建设
feifeipan
Mysql multi threaded_server_introduction
Mysql multi threaded_server_introduction
lazydba
Lamp优化实践
Lamp优化实践
zhliji2
Tcpcopy 阿里技术沙龙
Tcpcopy 阿里技术沙龙
drewz lin
twMVC#43 YARP
twMVC#43 YARP
twMVC
Huangjing renren
Huangjing renren
d0nn9n
Mysql展示功能与源码对应
Mysql展示功能与源码对应
zhaolinjnu
如何使用 Xhprof 分析網站效能 (真實案例)
如何使用 Xhprof 分析網站效能 (真實案例)
Cyril Wang
如何使用 Xhprof 分析網站效能 (真實案例2)
如何使用 Xhprof 分析網站效能 (真實案例2)
Cyril Wang
对MySQL应用的一些总结
对MySQL应用的一些总结
Lixun Peng
TomCat迁移步骤简述以及案例
TomCat迁移步骤简述以及案例
maclean liu
并发编程交流
并发编程交流
bluedavy lin
Track2 -刘继伟--openstack in gamewave
Track2 -刘继伟--openstack in gamewave
OpenCity Community
MySQL-Proxy
MySQL-Proxy
ruoyi ruan
Java内存管理问题案例分享
Java内存管理问题案例分享
bluedavy lin
HBase@taobao for 技术沙龙
HBase@taobao for 技术沙龙
bluedavy lin
爬虫点滴
爬虫点滴
Open Party
Was ist angesagt?
(20)
twMVC#43 C#10 新功能介紹
twMVC#43 C#10 新功能介紹
Nosql七种武器之长生剑 mongodb的使用介绍
Nosql七种武器之长生剑 mongodb的使用介绍
一个 Mongodb command 的前世今生
一个 Mongodb command 的前世今生
高性能网站建设
高性能网站建设
Mysql multi threaded_server_introduction
Mysql multi threaded_server_introduction
Lamp优化实践
Lamp优化实践
Tcpcopy 阿里技术沙龙
Tcpcopy 阿里技术沙龙
twMVC#43 YARP
twMVC#43 YARP
Huangjing renren
Huangjing renren
Mysql展示功能与源码对应
Mysql展示功能与源码对应
如何使用 Xhprof 分析網站效能 (真實案例)
如何使用 Xhprof 分析網站效能 (真實案例)
如何使用 Xhprof 分析網站效能 (真實案例2)
如何使用 Xhprof 分析網站效能 (真實案例2)
对MySQL应用的一些总结
对MySQL应用的一些总结
TomCat迁移步骤简述以及案例
TomCat迁移步骤简述以及案例
并发编程交流
并发编程交流
Track2 -刘继伟--openstack in gamewave
Track2 -刘继伟--openstack in gamewave
MySQL-Proxy
MySQL-Proxy
Java内存管理问题案例分享
Java内存管理问题案例分享
HBase@taobao for 技术沙龙
HBase@taobao for 技术沙龙
爬虫点滴
爬虫点滴
Andere mochten auch
艺龙旅行网架构案例分享-Qcon2011
艺龙旅行网架构案例分享-Qcon2011
Yiwei Ma
周爱民 关于架构之我的观点
周爱民 关于架构之我的观点
George Ang
微博架构与平台安全
微博架构与平台安全
Tim Y
天涯论坛的技术进化史-Qcon2011
天涯论坛的技术进化史-Qcon2011
Yiwei Ma
构建可扩展的微博系统
构建可扩展的微博系统
airsex
Yupoo! (花瓣网/又拍云) 架构中的消息与任务系统
Yupoo! (花瓣网/又拍云) 架构中的消息与任务系统
Dahui Feng
Qcon 2011:Beansdb 的设计与实现
Qcon 2011:Beansdb 的设计与实现
Davies Liu
Scalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYC
Scalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYC
Cal Henderson
High Performance Weibo QCon Beijing 2011
High Performance Weibo QCon Beijing 2011
Tim Y
Andere mochten auch
(9)
艺龙旅行网架构案例分享-Qcon2011
艺龙旅行网架构案例分享-Qcon2011
周爱民 关于架构之我的观点
周爱民 关于架构之我的观点
微博架构与平台安全
微博架构与平台安全
天涯论坛的技术进化史-Qcon2011
天涯论坛的技术进化史-Qcon2011
构建可扩展的微博系统
构建可扩展的微博系统
Yupoo! (花瓣网/又拍云) 架构中的消息与任务系统
Yupoo! (花瓣网/又拍云) 架构中的消息与任务系统
Qcon 2011:Beansdb 的设计与实现
Qcon 2011:Beansdb 的设计与实现
Scalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYC
Scalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYC
High Performance Weibo QCon Beijing 2011
High Performance Weibo QCon Beijing 2011
Ähnlich wie 百姓网如何优化网速-Qcon2011
Performance Monitoring With AOP
Performance Monitoring With AOP
ivannotes
OPOA in Action -- 使用MagixJS简化WebAPP开发
OPOA in Action -- 使用MagixJS简化WebAPP开发
leneli
高性能LAMP程序设计
高性能LAMP程序设计
fuchaoqun
twMVC 47_Elastic APM 的兩三事
twMVC 47_Elastic APM 的兩三事
twMVC
Asp net (1)
Asp net (1)
Kyle Lin
Berserk js
Berserk js
taobao.com
Beyond rails server
Beyond rails server
Michael Chen
DevOPS
DevOPS
mysqlops
大規模微服務導入 - #2 從零開始的微服務 .NET Core 框架設計
大規模微服務導入 - #2 從零開始的微服務 .NET Core 框架設計
Andrew Wu
Php应用程序常见安全问题解析
Php应用程序常见安全问题解析
mysqlops
使用Big pipe提升浏览速度 wk_velocity
使用Big pipe提升浏览速度 wk_velocity
kumawu
Data Analyse Black Horse - ClickHouse
Data Analyse Black Horse - ClickHouse
Jack Gao
自下而上的数据仓库构建方法
自下而上的数据仓库构建方法
tongxiaojun
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
Scourgen Hong
老舊web上雲端
老舊web上雲端
Ching Yi Chan
钟志 第八期Web标准化交流会
钟志 第八期Web标准化交流会
Zhi Zhong
Mysql handlersocket
Mysql handlersocket
pwesh
高性能网站最佳实践
高性能网站最佳实践
longhao
异步编程与浏览器执行模型
异步编程与浏览器执行模型
keelii
Http Headers 與 Cache 機制(2016)
Http Headers 與 Cache 機制(2016)
振揚 陳
Ähnlich wie 百姓网如何优化网速-Qcon2011
(20)
Performance Monitoring With AOP
Performance Monitoring With AOP
OPOA in Action -- 使用MagixJS简化WebAPP开发
OPOA in Action -- 使用MagixJS简化WebAPP开发
高性能LAMP程序设计
高性能LAMP程序设计
twMVC 47_Elastic APM 的兩三事
twMVC 47_Elastic APM 的兩三事
Asp net (1)
Asp net (1)
Berserk js
Berserk js
Beyond rails server
Beyond rails server
DevOPS
DevOPS
大規模微服務導入 - #2 從零開始的微服務 .NET Core 框架設計
大規模微服務導入 - #2 從零開始的微服務 .NET Core 框架設計
Php应用程序常见安全问题解析
Php应用程序常见安全问题解析
使用Big pipe提升浏览速度 wk_velocity
使用Big pipe提升浏览速度 wk_velocity
Data Analyse Black Horse - ClickHouse
Data Analyse Black Horse - ClickHouse
自下而上的数据仓库构建方法
自下而上的数据仓库构建方法
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
老舊web上雲端
老舊web上雲端
钟志 第八期Web标准化交流会
钟志 第八期Web标准化交流会
Mysql handlersocket
Mysql handlersocket
高性能网站最佳实践
高性能网站最佳实践
异步编程与浏览器执行模型
异步编程与浏览器执行模型
Http Headers 與 Cache 機制(2016)
Http Headers 與 Cache 機制(2016)
Mehr von Yiwei Ma
Cibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qcon
Yiwei Ma
Cibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qcon
Yiwei Ma
Taobao casestudy-yufeng-qcon
Taobao casestudy-yufeng-qcon
Yiwei Ma
Alibaba server-zhangxuseng-qcon
Alibaba server-zhangxuseng-qcon
Yiwei Ma
Zhongxing practice-suchunshan-qcon
Zhongxing practice-suchunshan-qcon
Yiwei Ma
Taobao practice-liyu-qcon
Taobao practice-liyu-qcon
Yiwei Ma
Thoughtworks practice-hukai-qcon
Thoughtworks practice-hukai-qcon
Yiwei Ma
Ufida design-chijianqiang-qcon
Ufida design-chijianqiang-qcon
Yiwei Ma
Spring design-juergen-qcon
Spring design-juergen-qcon
Yiwei Ma
Netflix web-adrian-qcon
Netflix web-adrian-qcon
Yiwei Ma
Google arch-fangkun-qcon
Google arch-fangkun-qcon
Yiwei Ma
Cibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qcon
Yiwei Ma
Alibaba arch-jiangtao-qcon
Alibaba arch-jiangtao-qcon
Yiwei Ma
Twitter keynote-evan-qcon
Twitter keynote-evan-qcon
Yiwei Ma
Netflix keynote-adrian-qcon
Netflix keynote-adrian-qcon
Yiwei Ma
Facebook keynote-nicolas-qcon
Facebook keynote-nicolas-qcon
Yiwei Ma
Domainlang keynote-eric-qcon
Domainlang keynote-eric-qcon
Yiwei Ma
Devjam keynote-david-qcon
Devjam keynote-david-qcon
Yiwei Ma
Baidu keynote-wubo-qcon
Baidu keynote-wubo-qcon
Yiwei Ma
淘宝线上线下性能跟踪体系和容量规划-Qcon2011
淘宝线上线下性能跟踪体系和容量规划-Qcon2011
Yiwei Ma
Mehr von Yiwei Ma
(20)
Cibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qcon
Taobao casestudy-yufeng-qcon
Taobao casestudy-yufeng-qcon
Alibaba server-zhangxuseng-qcon
Alibaba server-zhangxuseng-qcon
Zhongxing practice-suchunshan-qcon
Zhongxing practice-suchunshan-qcon
Taobao practice-liyu-qcon
Taobao practice-liyu-qcon
Thoughtworks practice-hukai-qcon
Thoughtworks practice-hukai-qcon
Ufida design-chijianqiang-qcon
Ufida design-chijianqiang-qcon
Spring design-juergen-qcon
Spring design-juergen-qcon
Netflix web-adrian-qcon
Netflix web-adrian-qcon
Google arch-fangkun-qcon
Google arch-fangkun-qcon
Cibank arch-zhouweiran-qcon
Cibank arch-zhouweiran-qcon
Alibaba arch-jiangtao-qcon
Alibaba arch-jiangtao-qcon
Twitter keynote-evan-qcon
Twitter keynote-evan-qcon
Netflix keynote-adrian-qcon
Netflix keynote-adrian-qcon
Facebook keynote-nicolas-qcon
Facebook keynote-nicolas-qcon
Domainlang keynote-eric-qcon
Domainlang keynote-eric-qcon
Devjam keynote-david-qcon
Devjam keynote-david-qcon
Baidu keynote-wubo-qcon
Baidu keynote-wubo-qcon
淘宝线上线下性能跟踪体系和容量规划-Qcon2011
淘宝线上线下性能跟踪体系和容量规划-Qcon2011
百姓网如何优化网速-Qcon2011
1.
为速度而生 ——看百姓网如何优化网速
panxiaoliang@baixing.com
2.
百姓网概况
国内领先分类信息网站 5000万动态请求/天 高峰1300次动态请求/秒 50台在线服务器 南北两个机房 30名员工 10名技术人员 2
3.
百姓网有多快?
* 来自北京时间2011年3月30日晚21:30 Alexa数据 3
4.
优化之路
先交学费 对网速优化的理解 前端优化 后端优化 网络优化 4
5.
先交学费:ETag 5
6.
第一次访问
GET /image/baixing.gif HTTP/1.1 HTTP/1.1 200 OK ETag: "10c24bc-4ab-457e1c1f“ 6
7.
第二次访问
GET /image/baixing.gif HTTP/1.1 If-None-Match: "10c24bc-4ab-457e1c1f" HTTP/1.1 304 Not Modified 7
8.
ETag是根据什么得出的?
Apache默认设置:inode-size-timestamp inode-size-timestamp inode-size-timestamp 8
9.
ETag去掉,流量减半 9
10.
补课
* 图书图片取自amazon.com 10
11.
页面渲染的过程
发送请求 等待响应 接收下载 11
12.
我们对于网速优化的划分
前端 秒级别 涉及请求数,CSS,JS,图片以及页面布局部分 后端 毫秒级别 涉及代码优化,执行效率 网络 毫秒级别 涉及机房选择,CDN等网络相关内容 12
13.
前端优化 13
14.
优化容易,持续优化难 14
图片取自: http://www.ytnpic.cn/bbs/viewthread.php?tid=33856&page=1
15.
持续优化要解决的问题
如何监控前端呈现速度? 如何收集最终用户的数据? 15
16.
如何前端监控?
Page Load Render DOM Start Ready 16
17.
JavaScript记录时间 <header> <script type="text/javascript"> var start
= new Date().getTime(); window.onload = function(){ var time = new Date().getTime() - start; alert(time); } </script> ... 17
18.
如何统计真实用户数据?
Event Tracking http://code.google.com/apis/analytics/docs/tracking/eventTrackerGuide.html 18
19.
用Google Analytics记录时间 <header> <script type="text/javascript"> var
start = new Date().getTime(); window.onload = function(){ var time = new Date().getTime() - start; _gaq.push(['_trackEvent', 'RenderTime', 'ViewAd', '', time]); } </script> 19 ...
20.
在Google Analytics上查看数据 20
21.
前端监控的一些发现
0.2s 下载HTML 0.5s Google Analytics统计 0.7s 页面加载 1.0s 新开页面 21
22.
后端优化 22
23.
用Cacti监控重要页面速度 23
24.
用xhprof来找到算法瓶颈 24
http://pecl.php.net/package/xhprof
25.
优化搜索和数据库的问题
查询压力的分布会随着业务变化而变化 真实环境的压力难以复制,追溯很难 25
26.
解决方案:在线记录慢查询 $dbSlowLogger = new
SlowLogger(); $dbSlowLogger->start(); $this->result = mysql_query($this->sql, $this->connection); $ms = $dbSlowLogger->stop(); if ($ms > 499) $dbSlowLogger->log('lib_db', $this- >sql); 26
27.
用Cacti来显示慢查询 27
28.
让数据可见 28
29.
后端优化总结
寻找瓶颈所在 在线记录慢查询 可视化性能问题 29
30.
网络优化 30
31.
从CDN开始
静态CDN对静态内容优化非常有效 动态CDN对动态内容的优化有限 选个好机房才是根本 31
32.
如何选择一个好机房
要让网站用户帮我们来挑选 具体方法:监控从机房下载一张标准图片的时长 32
33.
如何获得标准图片的时长 var url =
'http://' + testHost + '/test.jpg?' + Math.random(); document.getElementById('tsp').innerH TML = '<img src="' + url + '" onload="tsp()">'; function tsp() { time = new Date().getTime() - start; } 33
34.
百姓网的双机房方案 34
35.
双机房的问题
公网传输相当丌稳定 写代码的时候要注意读写权限 数据库更新后的cache的更新 日志数据需要合并分析 服务器的远程维护 35
36.
网络优化总结
选个好机房比什么都重要 如无必要,勿增机房 CDN是静态内容很好的解决方案 36
37.
我们的经验
前端:持续监控真实用户数据 后端:找出线上瓶颈所在 网络:选个好机房 37
38.
Q&A 38
Jetzt herunterladen