• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content

Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this presentation? Why not share!

腾讯大讲堂40 web类服务用户体验优化综述

on

  • 1,255 views

 

Statistics

Views

Total Views
1,255
Views on SlideShare
1,255
Embed Views
0

Actions

Likes
1
Downloads
26
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • 二层交换机属数据链路层设备,可以识别数据包中的 MAC 地址信息,根据 MAC 地址进行转发,并将这些 MAC 地址与对应的端口记录在自己内部的一个地址表中。 路由器工作原理是在路由器的内部也有一个表,这个表所标示的是如果要去某一个地方,下一步应该向那里走,如果能从路由表中找到数据包下一步往那里走,把链路层信息加上转发出去;如果不能知道下一步走向那里,则将此包丢弃,然后返回一个信息交给源地址。 虚拟局域网( VLAN )的出现打破了传统网络的许多固有观念,使网络结构变得 灵活、方便、随心所欲。 VLAN 就是不考虑用户的物理位置而根据功能、应用等因素将用户逻辑上划分为一个个功能相对独立的工作组,每个用户主机都连接在一 个支持 VLAN 的交换机端口上并属于一个 VLAN 。同一个 VLAN 中的成员都共享广播,而不同 VLAN 之间广播信息是相互隔离的。这样,将整个网络分割成 多个不同的广播域。 4 - 7 层交换机: 第 4 - 7 层应用交换机中,通过检查信息内容,并将信息转发至特定机器来实现向独立机器传递信息的过程,从而满足设备或应用程序的需求。内容交换机 (第 4 - 7 层交换机)监控每台设备的安全操作,并提供灾难自动恢复功能,即向该组中的剩余设备传递信息,这还基于策略设置以提供所需的操作。通过先进的技 术策略,这些策略是传统的 LAN 交换机和路由器所不具备的,内容 / 第 4–7 层应用交换机能提供智能流量管理性能,包括本地和全球服务器负载平衡、访问控制、服务质量和带宽管理等。   内容 / 第 4–7 层交换机为复杂的动态 web 服务主要提供以下优点: 内容可以灵活分配; 可以维持“持久”会话; 服务器的高效利用; Web 站点性能得到改进; 支持区分服务和带宽管理; 支持虚拟主机; 可执行灵活的基于内容的服务器安全校验。

腾讯大讲堂40 web类服务用户体验优化综述 腾讯大讲堂40 web类服务用户体验优化综述 Presentation Transcript

  • web 类服务用户体验优化综述 2008-5 主讲: galen
  • 提纲
    • 如何看待 web 服务的用户体验
    • 检测用户体验质量的工具和方法
    • 用户体验的影响因素分析
    • 用户体验的优化手段
  • 如何看待 web 服务的用户体验 2007-9
  • 这里讨论的用户体验 - 及时响应
    • 用户的划分:
    • 不同地区,不同运营商,不同国家
    • 教育网  不同高校
    • 用户及时获得对其查询和提交信息的反馈
    • 功能性体验的基础
  • 原始的用户体验评价
    • 缺点:
    • 无法反映全体用户体验质量
    • 投诉滞后 , 无法及时响应
    • 发布时:测试人员评价用户体验的好坏
    • 运维时:通过用户投诉判断服务质量好坏
  • 页面访问质量评价指标
    • 页面关键点完成时间
    • 用户访问页面首次点击等待时间
    • 浏览器显示第一屏主页面的消耗时间
    • 下载页面的完整性及正确性
    • 下载页面的安全性
  • 流媒体业务访问质量评价指标
    • 开始播放的等待时间
    • 播放过程中的缓冲次数和时间
  • 中国互联网用户按运营商划分 各大运营商用户比例 各运营商的用户比例和 QQ 每天登录用户比例基本吻合
  • 中国互联网用户按地区划分 0.10% 9 西 藏 0.20% 29 青 海 0.30% 32 宁 夏 0.60% 69 海 南 1.00% 109 贵 州 1.00% 116 内蒙古 1.10% 125 甘 肃 1.10% 126 新 疆 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.05 12270.86 7 广东轻工职业技术学院 0.09 10641.67 12 广东交通职业技术学院 0.11 9993.73 15 广州体育学院 0.11 6437.53 15 广东工贸职业技术学院 0.11 25362.75 16 广东机电学院 0.30 10721.10 42 南方医科大学 0.34 8972.48 48 仲恺农业技术学院 0.37 10392.42 52 广东技术师范学院 0.43 9911.23 60 广东外语艺术职业学院 0.48 7836.41 68 广东商学院 0.53 11057.96 75 广东建设职业技术学院 0.54 17783.54 76 广东药学院 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 成本,提高服务性价比
  • 影响用户体验的三个环节 第一公里: 服务器出口带宽 服务器自身性能 中间一公里: 互联网中的传输环节 运营商的互连互通 骨干网络设备和链路 用户的 最后一公里: ADSL ,有线电视宽带,小区 LAN 接入状况
  • 三个环节的关注点
    • 后台服务器及 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 访问的网络总耗时
  • 了解用户体验的实际状况
    • 优化的前提 : 了解全体用户的真实体验
    • 目前已经建立了各类监测系统,掌握了多种分析方法
    • 有条件及时准确的评估用户体验质量
  • 监测用户体验质量的工具和方法 2007-9
  • 不同环节的测试监控工具
    • 后台服务器 - 网管系统
    • 监控业务流量,服务器负载,业务关键指标量,比如在线数, PV 量
    • IDC, 骨干网 - IDC 测速平台,自动化测试,第三方监测的 backbone 测试
    • 用户桌面 - 业务测速平台,第三方监测 peer 测试
    • 自测试工具- httpwatch, yahoo 性能评测工具 YSlow
  • 网管系统
    • 网管系统分为公司一级网管系统和各 BU 二级网关系统
    • 网管系统通过每台服务器安装 agent ,收集 server 端运营数据(例如流量曲线,用户在线数等),并进行监控告警
  • IDC 测速平台原理
  • IDC 测速平台
    • IDC 测速平台的功能:
    • 各省市运营商所属用户访问公司主要 IDC 加权平均延时
    • 访问成功率及最近 30 天变化趋势
    • IDC 访问速度测试
    • http://idcspeed.oa.com/cgi-bin/index
    • IDC 丢包率测试
    • http://idcspeed.oa.com/cgi-bin/qqpack/index
    • 为各业务的 IDC 分布提供数据支持
    • 当业务出现访问质量问题时,作为 IDC 及骨干网排查工具
  • IDC 测速平台数据展示-访问速度 访问速度慢的省份 跨运营商的访问效果
  • IDC 测速平台数据展示-丢包率 成功率异常 某地区用户访问异常
  • 互联网自动化监控系统
    • 在北京网通,北京教育网及深圳电信网通部署测试服务器
    • 测试服务器根据测试配置访问业务 CGI 或静态内容
    • 计算平均延时,成功率及达标率
    • 自动化监控 itil 展示:
    • http://itil.isd.com/itil/index.php
    • 较实时反馈各业务关键服务的质量
    • 反馈业务日常延时及成功率波动情况
    • 根据合格率考核各业务质量达标情况
  • 自动化监控系统-不达标率,三网速度 出现异常的日期 不达标率最高的 CGI
  • 业务测速平台原理
    • 基本原理和 IDC 测速平台一样,差别在于:
    • 每个业务定制测试需求
    • 设置页面下载的多个关键点
  • 测速平台 - Qzone 为例
    • QQ 空间设置的关键点
  • 全国速度地图 -qzone 全国网通 北方 10 省 南方网通 北京最差
  • 第三方监控 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. 重新缓冲比率 = 重新缓冲的时间 /( 播放的时间 + 缓冲的时间 )
  • 自测试工具 -HttpWatch(QQMusic 为例 ) Blocked 耗时迅速增大 网络延时和总延时比较
  • yahoo 性能评测工具 YSlow
    • 仅限于在 FireFox 下使用
    • QZone 首页的评测结果 :
    • 等级 :F , 分数 :30
    • 看起来很不理想
  • YSlow 详细结果举例
    • 12 个域名 , 超过 yahoo 建议的 4 个以下
    • 过多的 http 请求
    • 重复的脚本
    • Qzone 首页举例 :
  • 用户体验的影响因素分析 2007-9
  • 影响用户体验的因素- server 端
    • 后台服务器的处理性能及访问压力
    • 直接影响用户访问的响应时间, Qzone 为例:
    • 9.3 日开学当天,由于用户在线数下降,自动化测试的 CGI 速度延时有明显变化
  • IDC 出口网络质量 1
    • IDC 外网出口链路的忙闲情况,香港柴湾 IDC 带宽问题为例:
    • 通过测试发现柴湾外网质量明显差于沙田 IDC
    • 香港 HGC 经过检查发现:柴湾-葵冲带宽满导致流量阻塞,影响了网络质量
    IDC 出口网络质量 2 调整时间点
  • 用户与 IDC 的物理距离
    • 骨干网光纤传输
    • 每 1000 公里延时增加 6ms
    • 西安到深圳光纤专线 :
    • 来回 4300 公里
    • 距离延时 25.8ms
    • 实际 ping 值 30ms
    • 北京到深圳来回 5600 公里
    • 距离延时 33.6ms
    12 101 113 22:00-24:00 12 102 114 20:00-22:00 2 95 97 18:00-20:00 14 90 104 16:00-18:00 17 89 106 14:00-16:00 14 97 111 12:00-14:00 8 93 101 10:00-12:00 3 87 90 8:00-10:00 11 72 83 6:00- 8:00 27 59 86 4:00- 6:00 44 69 113 2:00- 4:00 38 83 121 0:00- 2:00 时差 (ms) 广东耗时 北京耗时 时间段
  • 影响用户体验的因素-传输过程
    • 运营商骨干网质量
    • 不同区域的运营商骨干网质量有差异
    • 总体看电信质量最高,教育网最差
    北方电信 南方电信
  • 运营商网络拓扑结构 - 电信
    • 网络结构
      • 国家骨干网
        • 核心层 ( 8 个节点组成)
        • 汇接层 (每省 2 个节点)
        • 接入层 (省网节点)
      • 城域网
      • 网络拓扑图 ( 转下页 )
    中国电信
  •  
  • 运营商网络拓扑结构 - 教育网
    • 全名 教育科研网 (CERNET)
    • 拓扑图
    教育网
  • 用户及 IDC 所属运营商是否匹配
    • 若用户跨运营商访问访问质量一般会大幅下降
    • 以网通和电信为例,北京,上海及广州分别为两家的互联互通点,互联带宽: 2×10G×3
    电信及网通用户访问深圳电信比较 上海跨网访问质量
  • 教育网问题分析 -QZone 为例 广东较周边省份差 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 ms 64 bytes from 222.201.68.10: icmp_seq=2 ttl=119 time=213 ms 64 bytes from 222.201.68.10: icmp_seq=3 ttl=119 time=211 ms 64 bytes from 222.201.68.10: icmp_seq=4 ttl=119 time=221 ms 64 bytes from 222.201.68.10: icmp_seq=5 ttl=119 time=238 ms 64 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 8939.3193 1219 中山大学 14237.0137 1508 华南师范大学 8758.7646 1553 华南理工大学 9075.8047 2033 广州大学 平均延时 访问次数 学校
  • 影响用户体验的因素-用户端
    • Web 内容用户端 cache
    • 静态内容浏览器 cache 后在过期前本地读取
    没有做 cache 的页面 1 用户访问 www.yahoo.com
  • 内容被 cache 后 Expires header 3 user re-requests www.yahoo.com with a full cache 1 user requests www.yahoo.com 2 user requests other web pages
  • 用户端其他影响因素
    • 页面 http 连接数
    • IE 对于同一主机名允许 2 个并发连接
    • 过多连接请求排队 , 产生大量等待延时
    • 页面大小
    • Qzone 空间与 51 博客比较:
    • qzone 单个 item 速度快
    • 页面总访问时间长,因下载数据量大
    • 页面静态内容比例
    • 页面数据量静态比例高 , 有利于提高访问速度
  • 用户体验的优化手段 2007-9
  • 用户体验优化-提升后台性能及系统容量
    • 以相册老系统与存储平台为例:
    • 老系统
    • 存储容量与读写性能不平衡
    • 大量可用存储量无法利用
    • 专用盘柜价格昂贵
    • 存储平台
    • 采用存储服务器价格低廉
    • 总体读写性能高
    • 实现去重功能
    • 可按 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 宠物,相册等重点业务
    • 初期 : 西安电信网络质量不理想
    • 管工协调电信进行持续的骨干网扩容
    • 电信针对华南地区开通直通车
    • 优化前后比较看效果明显
    IDC 运营优化 2
  • 用户体验优化- 业务系统分布策略
    • 分布等级定义:
    • 0 级-深圳本地单个 IDC 无按运营商分布( 1 个 IDC )
    • 1 级-深圳本地 IDC 按运营商分布或代理( 1-3 个 IDC )
    • 2 级-外地三通 IDC 按运营商分布( 1-3 个 IDC )
    • 3 级-全国主要 IDC 节点按运营商分布( 3 - 6 个 IDC )
    • 4 级-全国 CDN 分布( 15 个 IDC 以上)
    4 级- CDN 分布 3 级-全国主要 IDC 分布 2 级-外地三通 IDC 分布 1 级-深圳本地 IDC 分布
  • 业务的 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.08 SOSO 搜搜 3 1.05 网易 126 免费邮 2 0.7 百度 1 响应时间 ( 秒 ) 网站 名次
  • Imgcache 在教育网分布
    • 部署于西安教育网
    • 增加华南深圳教育网节点后效果比较
  • 业务的 CDN 分布- CDN 概念
    • CDN – Content Delivery Networks
  • 传统的 Internet 网络的基本结构和数据传输
  • CDN 对网络的优化作用原理图
  • CDN 网络优势
    • 解决服务器端的“第一公里”问题
    • 缓解甚至消除不同运营商之间因互联瓶颈造成的影响
    • 减轻了各省的出口带宽压力
    • 缓解了骨干网的压力
    • 优化了网上热点内容的分布
  • GSLB
    • GSLB: 全球服务器负载均衡
    • 能够跨越多个 IDC 提供负载均衡和高可用性
    • 用户访问被定向到可提供最短响应时间 IDC
    • 当 IDC 发生故障, GSLB 能够透明的将用户定向到最优备用节点,提供无中断服务
  • GSLB 工作原理 Root DNS Server LocalDns Server 上海电信用户 QQ DNS Server 1 2 3 4 5 6 7 8 9 SLB Server &Cache 网通 IDC1 SLB Server &Cache 深圳电信 IDC2 SLB Server &Cache 上海电信 IDC3 GSLB 控制器 IP 地址库
  • SLB Server &Cache SLB Server &Cache IDC1 IDC2 SLB Server &Cache IDC3 GSLB 控制器 监控系统 GSLB 采集系统 GSLB 监控及配置管理系统 GSLB 配置管理系统 Internet DNS 1 2 3 4 5 6 7
  • 业务三通 IDC 部署及本地代理
    • 业务后台部署于单个 IDC
    • 其他 ISP 机房通过反向代理接入
    • 解决 : 用户跨运营商访问问题 , 以 qzone 为例:
    SLB QZone Server 深圳电信 SLB 反向代理 深圳网通 SLB 反向代理 深圳教育网 飞亚达 教育网用户 10G 光纤 10G 光纤 10G 光纤 1 2 3 4
  • 用户端浏览器访问优化
    • 80-90% 用户响应时间消耗在前端
    • 可以产生明显的优化效果
    • 实施简单
    • 已经被各应用证明是有效的
  • 页面内容静态化
    • 静态化提高服务器处理能力
    • 静态化内容适合 CDN 加速
    • QZone 目前超过 85% 的静态化率
  • 减少用户 http 请求数
    • 合并脚本及样式表 ,降低用户 http 请求数量
    • 用户 http 请求使用 keep-alive
    • 使用图标的合并 image
    • 例: Qzone 的合并 image
  • 增加 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 request
      • Accept-Encoding: gzip, deflate
    • HTTP response
      • Content-Encoding: gzip
      • Vary: Accept-Encoding
    • 以 imgcache 为例:
    • 对于静态文本(包括脚本,样式表, XML 等)全部做 gzip 预压缩
    • 压缩后降低公网带宽 800M
  • 设置 cache 过期时间
    • yahoo.com.cn 设置的静态文件应答头
    • Expires 设置超过 8 年,可以看作永久 cache :
      • HTTP/1.1 200 OK
      • Last-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 GMT
      • Age: 339592
      • 长期 cache 适用于较少更新的静态文件 , 例如相册业务 :
      • Cache-Control: max-age=8640000
      • Cache 时间超过 3 个月
  • 取消 etag 功能
    • 一般业务是多台接入服务器做负载均衡,则 server 每次返回的 etag 可能都不同
    • ETag 格式:
      • Apache: inode -size-timestamp
      • IIS: Filetimestamp: ChangeNumber
    • 当主机数 >1 server 将返回很少的 304
      • (n-1)/n
    • 清除 etag :
      • Apache: FileETag none
      • IIS: 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 文件等,不要分散在不同域名中
  • 用户体验优化 - 以实际效果说话 www.sina.com.cn music.qq.com
  • httpwatch 测试结果对比
    • http 请求字节数和连接数相近 , 有可比性
    • 从 http 返回的字节数看差异很大
    • 从总延时看差异明显
  • 前 10 个延时最大的 item 页面轻量化最有效
  • 总结
    • 用户体验质量我们和竞争对手还存在差距
    • 用户体验质量随着用户访问量,骨干网带宽冗余量, IDC 的运营质量变化而变化
    • 用户体验质量与运营成本的平衡关系 -- 并非越快越好
    • 用户体验的监控和优化是一项长期工作
    • 腾讯要成为受人尊敬的互联网企业,用户体验质量是一块基石
  • Q&A
    • 谢谢大家
    • 答疑时间