必威体育Betway必威体育官网
当前位置:首页 > 网站建设

一秒钟法则:来自腾讯的无线研发经验

时间:2018-03-29 17:00:00来源:网站建设作者:seo实验室小编阅读:74次「手机版」
 

无线法则

优化思路 接入调度优化

接入调度优化首先要考虑的是减少 DNS 的影响。移动网络的 DNS 有如下特点:

骨干网无法识别移动用户在哪个城市,东西南北各个地方的调度没有充分调用,目前有一部分全国范围的 DNS 承载了超过 40% 的全网用户; 很多山寨机的终端 local DNS 设置是错误的。

另外还有一些有线网络也一样会遇到的问题,如终端 DNS 解析滥用、域名劫持、DNS 污染、老化、脆弱等。不过对于这些问题,桌面的自愈性会比较好,而在手机上则比较难以解决。

对于 DNS 的问题,有两条主要的解决思路:

减少 DNS 的请求、查询、更新,也就是做 DNS 缓存; 在终端配置 server list,直接访问 IP,不用 DNS。

但仅仅这么做还不够,因为用户可能来自国内外不同的运营商,还需要进一步优化调度策略:

DNS 缓存需要多建立接入点,用不同域名区分; IP 列表需要更新以适应不同网络情况,要做到主动调度。好比最早我们只服务好移动用户就行,保证移动用户的接入质量优先,因为绝大多数用户集中在移动;现在国内有三个运营商,用户分布的比例在慢慢接近,要区分清楚;智能手机会用 WiFi,接入的是电信、联通还是哪个运营商,不知道,所以你不可能预先设置场景再 if then,必须通过后台调度能力来解决。

再进一步优化,就产生一种融合的方式:

先做域名解析,客户端直接连接解析的 IP,可以用 http 协议,也可以用 tcp socket; 多端口、多协议组合:不同协议有不同的限制,有些只能 http,有些只能 tcp socket,各种环境都要适应,客户端不能只支持一种协议; 终端测速:接入点越来越多,接入哪个合适,要选择,可以通过终端测速来选择最快的。你当然可以每一次新建连接都做测速,但是这样建立连接时间可能会很长;我们可以给用户先建立连接后,在后台根据长期速度监控、当前测速的结果,来做动态调度。也就是说,第一次连接可能不是最优,连接建立后动态测速,再转移到最快接入点。更进一步就是建立网络 profile,终端学习的思路。

测速采样的粒度我也说一下,移动互联网取 IP 段是没用的,比较好的粒度是到网元级别,比如广东有 20 多个 wap 网关,每一个网关的情况都不一样,这就是一个比较合适的粒度。

另外我们后面还有一个 SET 模型,可以就近提供服务。

最后想强调一个所有的接入调度原则:不要把调度逻辑写死在客户端,一定要由后台完成。

协议优化

协议参数优化这块就简单列一下,是我们长期运营过程中总结的一些经验,在启动移动互联网服务时作为运营的规范,可以少走很多弯路:

关闭 TCP 快速回收; Init RTO 不低于 3 秒; 初始拥塞控制窗口不小于 10。因为大部分页面在 10kB 以下,很多请求在慢启动阶段已经结束,改为 10 可以降低小页面资源传输时延。内容越大,这个选项的效果就比较不明显; Socket buffer > 64k; TCP 滑动窗口可变; 控制发包大小在 1400 字节以下,避免分片。

协议优化的原则总结下来是这么几条:

连接重用; 并发连接控制; 超时控制; 包头精简; 内容压缩; 选择更高效率的协议。无论是 TCP、HTTP、UDP、长连接、GZIP、SPDY、WUP 还是 WebP,每一种协议、方案都有其道理,没有最优,只有是否适合你的产品和服务特点,需要大家在运营过程验证和取舍。 WAP 接入点优化

关于 WAP 接入点优化,可能有些人会说,我们的 APP高端大气上档次的应用,是不是就不用做 WAP 优化?实际上我们的统计显示,目前有 5%-20% 的用户选择的接入点是*WAP(CMWAP、3GWAP、CTWAP),这甚至包括一些 iPhone 终端。实际上,WAP 网关本质是个代理,不完全是落后的东西,随着技术的进步也在演进,以后在组网架构中可能有综合网关、内容计费网关来取代目前的 WAP 网关,所以建议也要一并考虑。以下是做 WAP 优化需要注意的一些问题:

资费提醒页面; 302 跳转处理; X-Online-Host 使用与处理; 包大小限制; 劫持与缓存; 正确获取资源包大小。 业务逻辑优化

简化逻辑:交互繁琐的内容尽量用标识更新。举一个例子,我们在老版的手机 QQ 上做过一个测试:假如我有 100 个好友,用手机 QQ 完成登陆,完成好友列表更新一遍,需要 3.5 分钟。这肯定是不合理的。建议用信令状态来通知是否需要更新,同时合理利用缓存。在比如玩游戏,好友给你送了很多星星,是让用户一次一次点还是批量点?从优化的角度肯定是批量点,从用户体验的角度这也更加舒服。

另一方面,延长域名图标的缓存时间也可以有效地优化访问次数。我们把手机腾讯网图标的缓存时长从 120 分钟延长到 2 天后,访问次数优化了差不多 35%。

柔性可用:这个意思就是在网络质量好的时候给高清大图,不好的时候先给用户看小图,点一下再拉取原图。举一个极端的例子,比如万一地震了,基站毁掉 20%,用户要给家人报平安,这时候产品上就必须优化,比如只发送文字,合理降低网络消耗。另外在响应很慢的时候,需要给用户一些合理的页面提示,比如提示用户再过 5 秒会发送,所以你不要一直刷屏,这也可以减少访问对后台服务、对网络的冲击。

最后谈谈对优化方法的实践和结果的评估。QQ 手机浏览器从 4.5 版本、5.0 版本到 5.1 版本,我们对 2G 网络下的连接时间、3G 网络下的首字耗时、wifi 网络下的首屏耗时进行持续监控,耗时降到一秒钟以下还在不断的改进,每个新的版本平均值均有所压缩。这个结果是从每天用户实际使用的运营数据中得到的,覆盖到绝大多数的手机终端和网络环境。

不过平均值只是一方面,我们另一方面还要看“有多少比例的数据满足了一秒钟法则”这个维度,因为无线网络的长尾数据波动很大,这一个维度也非常重要。目前现状是我们 2G 网络做到 79%,3G 网络做到 73%,WiFi 网络做到 69%。目前我们的目标是达到 80%,实现之后,再进一步挑战 90% 的比例,不断追求极致。

相关阅读

【Ubuntu】腾讯QQ安装

参考链接:Ubuntu 16.04安装QQ国际版图文详细教程 安装包下载:             链接: https://pan.baidu.com/s/19Pf7T1X_Kucj-C

腾讯文档与竞品在用户体验上的角逐

竞品分析是基于目的的,目的决定了分析的边界和分析的价值。本文以用户体验的完整服务流程为主线,即产品的获取和使用流程,对比腾讯文

腾讯微视产品策划实习生面试复盘(一面加二面)

笔者围绕自己的微视产品策划实习生面试经历,复盘了面试遇到的问题以及如何针对笔者的回复做进一步的改进。对参加产品实习生面试的

28个心理学效应,产品人的提升法则

普通的产品解决问题,中等的产品服务用户,优秀的产品洞察人性。心理学效应在产品中的应用,可以让产品经理向洞察人性更进一步。笔者从

腾讯QQ正式公布春节活动:转发福袋给好友即可解锁现金红

1月22日,腾讯QQ正式公布2019新春活动——“福气'袋'回家”。在中国人的年俗文化里,习惯通过各种仪式感讨个好

分享到:

栏目导航

推荐阅读

热门阅读