Upload
areyouok
View
2.224
Download
17
Embed Size (px)
DESCRIPTION
腾讯大讲堂40 web类服务用户体验优化综述
Citation preview
原始的用户体验评价
缺点:• 无法反映全体用户体验质
量• 投诉滞后 , 无法及时响应
测试人员
网站
发布时:测试人员评价用户体验的好坏
运维时:通过用户投诉判断服务质量好坏 客服人员
网站
用户1 用户2 用户n
大量投诉
中国互联网用户按地区划分
1.70%187江 西
1.70%189重 庆
1.80%201吉 林
2.10%229天 津
2.20%241云 南
2.40%269山 西
2.50%276安 徽
2.80%314陕 西
2.80%316黑龙江
3.00%330广 西
3.10%348湖 南
3.30%372辽 宁
3.60%396河 南
3.60%397福 建
3.90%428北 京
4.20%463湖 北
4.20%463上 海
4.40%486河 北
5.50%609四 川
6.40%707浙 江
7.10%790江 苏
8.90%988山 东
13.40%1486广 东
占全国网民比例网民数(万人)地区
3.89%12658059河北
4.30%14000904湖北
4.39%14303788福建
4.51%14677836四川
4.73%15410389河南
5.90%19209091山东
6.15%20025632江苏
6.97%22724105浙江
19.88%64769143广东
100%325799287总体
访问次数比例qzone访问次数省份
教育网用户按高校划分 -QZone 广东为例
0.67 13688.82 94汕头大学
0.80 14469.96 112深圳大学
0.91 10725.01 128星海音乐学院
1.35 11275.13 190广东医学院
2.17 11002.19 304惠州大学
2.19 6995.33 307广东农工商职业技术学院
2.27 5818.74 319肇庆学院
2.31 12558.40 325广州中医药大学
2.68 7758.87 377东莞理工学院
2.80 6984.71 393广东科学技术职业学院
2.96 9963.27 415广东教育学院
2.98 8382.20 418广东工业大学
3.16 9744.14 444湛江师范学院
3.87 9336.31 543暨南大学
6.25 10303.54 877广东外语外贸大学
6.31 9842.69 886韩山师范学院
7.91 9244.21 1110华南农业大学
8.68 8939.32 1219中山大学
10.74 14237.01 1508华南师范大学
11.06 8758.76 1553华南理工大学
14.48 9075.80 2033广州大学
所占比例 (%)平均延时访问次数学校
互联网用户无差别体验
现状:不同地区不同运营商的用户体验有明显差异
优化目标:
• 抹平地区及运营商差异
• 减少因体验差造成的用户流失
• 提高用户满意度和活跃度
在提高用户体验的同时不断降低产品运营的TCO 成本,提高服务性价比
三个环节的关注点
后台服务器及 IDC 机房公网出口(第一公里)
• 服务器对用户请求的响应速度 , 失败率
• IDC 机房所处节点的地理位置
• IDC 在运营商骨干网中的地位
• IDC 机房出口带宽的冗余状况
运营商骨干网(中间一公里)• 到全国各地骨干网带宽的冗余状况• 各运营商骨干网之间的路由和传输延时
用户桌面(最后一公里)• 用户打开页面的实际等待时间及成功率• 用户端网络配置 ,包括接入运营商 ,DNS 配置等• 用户主机性能
基础知识 -1
访问延时=传播延时+串行化延时+设备响应延时
传播延时:信息通过传输介质产生的延时
串行化延时:信息通过中间设备产生的延时,通常由于设备上的排队,处理和交换引起
抖动=网络延时的变化,原因:
• 可变的队列长度
• 包经过的路径不同(如负载均衡等)
基础知识 -2
丢包率=数据包在传输中丢失的比率,引起的原因:
• 传输链路或硬件设备引起 CRC错误• 链路拥挤或队列满
• 路由改变(暂时丢包)或黑洞路由
• 接口故障或路由器故障
即使 1%的丢包也会对网络应用的性能产生重要影响
基础知识 -3
带宽利用率
决定何时进行链路扩容
我司 IDC出口带宽一般在利用率达到 80%以上时扩容
网络可用性=网络可用时间 /总时间
99.9% :一个月的中断时间不超过 45 分钟
99.99% :一个月的中断时间不超过 5 分钟
大部分运营商的网络可用性达到 99.9%,部分可达到99.99%
通常网络设备可用性在 99.99%以上,链路可用性在99.9%以上
基础知识 -4—http 访问环节QQ.COM 首页 框架页面为例 http://www.qq.com/ 50k文件大小
Blocked: 预处理及等待网络连接可用
DNS解析 : 域名解析时间
连接 : 与 web server 建立 TCP连接时间
发送 : 发送 HTTP请求所需时间
等待 : 等待 server 响应的空闲时间
接收 :从 server读取应答消息时间
First Byte: 从初始化网络请求到收到第一个字节消耗的时间
网络 : HTTP 访问的网络总耗时
不同环节的测试监控工具
后台服务器 - 网管系统
监控业务流量,服务器负载,业务关键指标量,比如在线数, PV 量
IDC, 骨干网 - IDC测速平台,自动化测试,第三方监测的 backbone 测试
用户桌面 - 业务测速平台,第三方监测 peer测试
自测试工具- httpwatch, yahoo性能评测工具YSlow
IDC 测速平台
IDC 测速平台的功能:• 各省市运营商所属用户访问公司主要 IDC加权平均延时
• 访问成功率及最近 30 天变化趋势
IDC 访问速度测试
http://idcspeed.oa.com/cgi-bin/indexIDC丢包率测试
http://idcspeed.oa.com/cgi-bin/qqpack/index
为各业务的 IDC 分布提供数据支持
当业务出现访问质量问题时,作为 IDC 及骨干网排查工具
IDC 测速平台数据展示-访问速度
访问速度慢的省份
跨运营商的访问效果
IDC 测速平台数据展示-丢包率
成功率异常
某地区用户访问异常
互联网自动化监控系统
在北京网通,北京教育网及深圳电信网通部署测试服务器
测试服务器根据测试配置访问业务 CGI或静态内容
计算平均延时,成功率及达标率
自动化监控 itil展示:
http://itil.isd.com/itil/index.php
较实时反馈各业务关键服务的质量
反馈业务日常延时及成功率波动情况
根据合格率考核各业务质量达标情况
第三方监控 peer 测试原理
第三方监控的测试平台
由普通用户安装测试客户端
定制测试需求由客户端执行测试
测试结果上报数据中心
例如 Gomez 测试平台
http://www.gomez.com/login.html
业务用户端监控
包括竞争对手在内的对比测试
流媒体监控
更加详尽的数据分析结果
实例: QQ相册竞争对手比较
20k 西安测试80k 西安测试20k存储平台80k存储平台20k 网易相册80k 网易相册20k51相册80k51相册20kbaidu相册
80kbaidu相册
从测试结果看:网易相册测试结果最好, 51相册最差,西安测试因为没有访问压力效果也很好
存储平台深圳和西安测试比较(电信)
上图:西安测试下图:统一存储
从测试结果看:由于西安测试无负载, 1st byte 耗时明显低于统一存储
由于沙河电信整体网络质量好于西安电信, content download 时间则统一存储占优
第三方流媒体服务监控
优酷 ,土豆和 qqvideo 的流媒体测试比较 ( 北京网通 )
• 重新缓冲次数
2. 用户等待第一帧的时间
3. 重新缓冲比率 = 重新缓冲的时间 /( 播放的时间 + 缓冲的时间 )
用户与 IDC 的物理距离
骨干网光纤传输
每 1000公里延时增加 6ms
西安到深圳光纤专线 :来回 4300公里
距离延时 25.8ms实际 ping值 30ms
北京到深圳来回 5600公里
距离延时 33.6ms
1210111322:00-24:00
1210211420:00-22:00
2959718:00-20:00
149010416:00-18:00
178910614:00-16:00
149711112:00-14:00
89310110:00-12:00
38790 8:00-10:00
117283 6:00- 8:00
275986 4:00- 6:00
4469113 2:00- 4:00
3883121 0:00- 2:00
时差 (ms)广东耗时北京耗时时间段
影响用户体验的因素-传输过程
运营商骨干网质量• 不同区域的运营商骨干网质量有差异• 总体看电信质量最高,教育网最差
全国电信用户访问西安电信IDC
050
100150200250300350400450
黑龙江吉林辽宁北京天津河北山东山西陕西
内蒙古宁夏甘肃青海新疆西藏四川重庆湖北河南安徽江苏上海浙江湖南江西福建贵州云南广东广西海南
增长率
忙时(ms)
闲时(ms)北方电信 南方电信
用户及 IDC 所属运营商是否匹配
若用户跨运营商访问访问质量一般会大幅下降
以网通和电信为例,北京,上海及广州分别为两家的互联互通点,互联带宽: 2×10G×3
0.0
100.0
200.0
300.0
400.0
500.0
600.0
700.0
800.0
900.0
黑龙江吉林辽宁北京天津河北山东山西陕西
内蒙古宁夏甘肃青海新疆西藏四川重庆湖北河南安徽江苏上海浙江湖南江西福建贵州云南广东广西海南
增长率
电信
网通
电信及网通用户访问深圳电信比较
上海跨网访问质量
教育网问题分析 -QZone 为例
广东较周边省份差
8939.31931219中山大学
14237.01371508华南师范大学
8758.76461553华南理工大学
9075.80472033广州大学
平均延时访问次数学校PING 222.201.68.10 (222.201.68.10) 56(84) bytes of data.64 bytes from 222.201.68.10: icmp_seq=1 ttl=119 time=227 ms64 bytes from 222.201.68.10: icmp_seq=2 ttl=119 time=213 ms64 bytes from 222.201.68.10: icmp_seq=3 ttl=119 time=211 ms64 bytes from 222.201.68.10: icmp_seq=4 ttl=119 time=221 ms64 bytes from 222.201.68.10: icmp_seq=5 ttl=119 time=238 ms64 bytes from 222.201.68.10: icmp_seq=6 ttl=119 time=244 ms
traceroute to 222.201.68.10 (222.201.68.10), 30 hops max, 40 byte packets 1 222.202.96.130 (222.202.96.130) 0.688 ms 0.357 ms 0.453 ms 2 210.39.19.5 (210.39.19.5) 0.240 ms 0.219 ms 0.187 ms 3 202.112.53.129 (202.112.53.129) 4.227 ms 4.117 ms 4.134 ms 4 * * * 5 202.112.19.102 (202.112.19.102) 3.298 ms 3.669 ms 3.664 ms 6 222.200.253.5 (222.200.253.5) 3.865 ms 3.856 ms 3.865 ms 7 222.200.252.14 (222.200.252.14) 10.405 ms 10.408 ms 10.535 ms 8 222.200.129.22 (222.200.129.22) 236.715 ms 236.832 ms
影响用户体验的因素-用户端
Web内容用户端 cache静态内容浏览器 cache 后在过期前本地读取
0 0.5 1 1.5 2 2.5 3
imagestylesheet
scriptscript
dns lookupimageimageimageimageimage
dns lookupscript
imageimageimageimageimageimageimageimagescript
imageimageimageimageimageimageimageimagescript
dns lookupimageimage
htmldns lookup1
用户访问 www.yahoo.com
没有做 cache的页面
内容被 cache 后
0 0.5 1 1.5 2 2.5 3
image
imagehtml
Expires header
1user requests
www.yahoo.com
2user requests
other web pages
3user re-requests www.yahoo.com
with a full cache
用户端其他影响因素
页面 http连接数• IE 对于同一主机名允许 2个并发连接• 过多连接请求排队 ,产生大量等待延时
页面大小Qzone空间与 51博客比较:• qzone单个 item速度快• 页面总访问时间长,因下载数据量大
页面静态内容比例• 页面数据量静态比例高 ,有利于提高访问速度
用户体验优化-提升后台性能及系统容量
以相册老系统与存储平台为例:
老系统• 存储容量与读写性能不平衡
• 大量可用存储量无法利用• 专用盘柜价格昂贵存储平台• 采用存储服务器价格低廉• 总体读写性能高• 实现去重功能• 可按 set 平滑扩容
结论 :可以支持更高的用户访问量
160.00 单位有效存储月 TCO (元)
0.137 单位用户月 TCO (不含带宽成本)(元)
15.000 预计支撑带宽( G )
425.000 预计支撑用户数( Qzone在线用户)
95.000 实际存储数据( T ),去重
270.000 有效存储容量( T )
43.200 存储部分的月 TCO (万元)
14.860 非存储部分的月 TCO (万元)
新相册系统
146.48 单位有效存储月 TCO (元)
0.290 单位用户月 TCO (不含带宽成本)(元)
8.200 实际支撑带宽( G )
290.000 实际支撑用户数( Qzone在线用户)
190.000 实际存储数据( T ),未去重
472.000 有效存储容量( T )
69.140 存储部分的月 TCO (万元)
14.860 非存储部分的月 TCO (万元)
原相册系统
IDC 运营优化 1
IDC需要保障出口带宽冗余度及稳定性
以西安 IDC 网络优化为例• 西安 IDC定位为公司核心 IDC• 部署包括 QQGame , QQ宠物,相册等重点
业务
初期 : 西安电信网络质量不理想
• 管工协调电信进行持续的骨干网扩容• 电信针对华南地区开通直通车
用户体验优化-业务系统分布策略
分布等级定义:
0级-深圳本地单个 IDC 无按运营商分布( 1个 IDC )
1级-深圳本地 IDC按运营商分布或代理( 1-3个 IDC )
2级-外地三通 IDC按运营商分布( 1-3个 IDC )
3级-全国主要 IDC节点按运营商分布( 3- 6个 IDC )
4级-全国 CDN 分布( 15个 IDC以上)
44级-级- CDNCDN分布分布
33级-全国主要级-全国主要 IDCIDC分布分布
22级-外地三通级-外地三通 IDCIDC分布分布
11级-深圳本地级-深圳本地 IDCIDC分布分布
业务的 IDC 分布
以 QQ.com 为例:qq.Com 主要分布于:
深圳电信,上海电信
西安电信,成都电信
天津网通,北京网通
北京教育网
集中分布于电信,网通及教育网的核心节点,从全国用户访问情况看效果很好
5.47 QQ.COM 14
4.65 中搜 13
4.65 Live.com 12
4.6 265 上网导航 11
4.47 谷歌中国 10
4.24中国移动通信 9
4.15凤凰网 8
4.03汽车之家 7
3.31和讯 6
2.48搜狗 5
1.89中国工商银行 4
1.08SOSO 搜搜 3
1.05网易 126免费邮 2
0.7百度 1
响应时间 (秒 )网站名次
第三方监测中国热门网站用户体验排行榜
GSLB
GSLB: 全球服务器负载均衡
能够跨越多个 IDC 提供负载均衡和高可用性
用户访问被定向到可提供最短响应时间IDC
当 IDC 发生故障, GSLB 能够透明的将用户定向到最优备用节点,提供无中断服务
GSLB 工作原理
Root DNS Server
LocalDns Server
上海电信用户
QQ DNS Server
1
2 34
56
7
8
9
SLB
Server&Cache
网通IDC1
SLB
Server&Cache
深圳电信IDC2
SLB
Server&Cache
上海电信IDC3
GSLB控制器
IP 地址库
SLB
Server&Cache SLB
Server&CacheIDC1
IDC2 SLB
Server&Cache
IDC3
GSLB
控制器
监控系统
GSLB采集系统
GSLB监控及配置管理系统
GSLB配置管理系统
Internet
DNS
1
2
3
4
5
67
业务三通 IDC部署及本地代理
业务后台部署于单个 IDC其他 ISP机房通过反向代理接入
解决 : 用户跨运营商访问问题 ,以 qzone 为例:
SLB
QZone
Server
深圳电信
SLB
反向代理
深圳网通
SLB
反向代理
深圳教育网
飞亚达
教育网用户
10G光纤
10G光纤
10G光纤
1
2 3
4
增加 http可并发请求
若不能降低请求数量 , 提高并发请求数也可以加速页面下载以 Sina 首页为例 :
静态图片采用 4个子域名 (i0.sinaimg.cn-i3.sinaimg.cn)进行下载
说明 : • 提高并发性 ,降低了 http请求用户端等待时间• 一般设定不超过 4个子域名 , 过多的域名请求会增加域名解析
耗时及客户端处理负担
静态文本内容 gzip压缩Apache配置文本内容进行 gzip预压缩,可以降低外网流量及实际传输的数据
量:Apache 2.x: mod_deflate
AddOutputFilterByType DEFLATE text/html text/css application/x-javascript
HTTP requestAccept-Encoding: gzip, deflate
HTTP responseContent-Encoding: gzipVary: Accept-Encoding
以 imgcache 为例:
• 对于静态文本(包括脚本,样式表, XML等)全部做 gzip预压缩
• 压缩后降低公网带宽 800M
设置 cache 过期时间
yahoo.com.cn设置的静态文件应答头
Expires设置超过 8年,可以看作永久 cache :HTTP/1.1 200 OKLast-Modified: Wed, 21 May 2008 06:11:32 GMTExpires: Fri, 15 Apr 2016 20:00:00 GMTContent-Type: image/gifContent-Length: 7424Date: Wed, 21 May 2008 06:13:14 GMTAge: 339592
长期 cache适用于较少更新的静态文件 , 例如相册业务 :Cache-Control: max-age=8640000
Cache 时间超过 3个月
取消 etag 功能
一般业务是多台接入服务器做负载均衡,则server 每次返回的 etag可能都不同
ETag 格式:Apache: inode-size-timestampIIS: Filetimestamp:ChangeNumber
当主机数 >1 server 将返回很少的 304(n-1)/n
清除 etag :Apache: FileETag noneIIS: http://support.microsoft.com/kb/922703/
避免 http请求携带 cookie 信息
Cookie pvid=360028384; flv=9.0; 1531785_CODE=000596_51|399001_51|000001_1|600028_1|600048_1|600068_1|600816_1|601398_1|601628_1|601857_1|; 1531785_HKCODE=; 1531785_JJCODE=; stk_uin=1531785; pt2gguin=o0001531785; airkey=788e8a9fc4015d1e8b8ba0c46ad2d9775afb77236084753d64969b9d48d8916c; icache=EAGECLA; aduid=ST6F27XY; adid=1531785; adSP=jzlO56pAUEvKZE9W34jAq/mH2AOLhhoQ4xLa1dyWEEQ=_7811_326830_1214527781_; RECENT_CODE=000002_51%7C601628_1%7C600011_1%7C600048_1%7C000596_51%7C600816_1%7C601857_1%7C600050_1%7C600030_1%7C580989_1%7C; ispai2_1531785=2; uin_cookie=1531785; euin_cookie=AQAYGxjgIbJvQFgGjIbzPOZVqsRv9vhKHEWGGAAAAADEby+pcvO+YAsKo2Mdqn2DSj75qA==; pgv=ssid=s182297792
qq.com携带的 cookie 信息超过 660字节对于静态文件一般 cookie是无用的使用非 qq.com 的独立域名 , 例如 :
www.tcimage.cn
减少 DNS lookup 时延
降低页面中域名数量
• 可以减少 DNS lookup频次
• Lookup 时延对于不同 ISP 及地区访问时间不同
• DNS server需要跨运营商及地区分布
• 页面中图片、 css、 js、 flash文件等,不要分散在不同域名中
总结
用户体验质量我们和竞争对手还存在差距
用户体验质量随着用户访问量,骨干网带宽冗余量, IDC 的运营质量变化而变化
用户体验质量与运营成本的平衡关系 --并非越快越好
用户体验的监控和优化是一项长期工作
腾讯要成为受人尊敬的互联网企业,用户体验质量是一块基石