首页 > 娱乐前沿 > 热点
一个基于http协议的优化
青山隐隐V 2015-12-14 14:00:20
某天,@沐然的爸爸 和我说起一件很奇怪的事情,微博在三家运营商(联通,电信,移动)之间的流量对比很奇怪,移动相对另外两家相比,他的http response流量有点高。至于有多高,在移动的http请求量和联通不相上下的前提下,移动的http response带来的网络流量是联通的2.5倍。


于是,我统计了两家运营商下的服务器的访问量比较大的http接口的response size。结果显示,并不仅是某一个具体的http接口有明显的区别,而是很普遍存在的现象。好吧,那我就从其中一个接口入手。


还是分别在联通和移动各选择一台server,使用tcpdump抓取http的数据包。通过抓取的数据,我看到了一条珍贵线索,下边附两张截图,图1是联通的http response,图2是移动的http response。

图1

图2

可以看出,移动的response body没有像联通一样做gzip压缩。通过人肉简单的统计,移动大概有3成的请求都没有做压缩,而联通几乎都是经过压缩的。至此,我觉得文章一开始看到的流量差距的原因找到了。但是很奇怪为什幺移动有30%的response body不做压缩,我们两边在服务器端的配置是一样的,于是我把精力放在了对比客户端的请求特征上。几经对比,还是发现一些规律。那些没有经过压缩的http会话都是走了1.0的协议,相反经过压缩的http会话都是走了http1.1协议。带着这个线索,我翻阅了http server的官方文档,果然官方在做gzip压缩时,默认情况下只对走http1.1的会话进行压缩,如果需要压缩1.0对应的会话,需要修改默认配置。在经过简单的测试后,确认修改后的配置没有对现有功能有影响后,我们顺利的做了对应的配置变更。变更后整个移动的http response网络流量瞬间下降了至少一半,就像图3显示的一样。

图3

至此,我有一个小疑问,为什幺同样的客户端,移动会有这幺多的http 1.0的请求,难道移动的网关会和另外两家运营商有很大的区别?不知道有没有懂这个的朋友给出解释。另外我也在想,通过上边的优化,从此访问手机微博时,中国移动的用户不仅网络流量会省掉一半以上,而且由于少走一半的tcp数据包,是不是刷微博的感受会变好一些,特别是2G网络下的用户。

打赏的人

上一篇  下一篇

I 相关 / Other

不是我冷漠,而是你不值

01前不久,一位中学同学不知道从哪打听到我家地址,直接开着车找上门来,他来找我的目的是借钱,他说今年

我不喜欢这世界

昨天看了《女王的教室》中的一段,引出了自己的许多联想,发此长微博纪念一下。这位老师对学生如此苛刻,我

重逢/Passing By

王麦进门的时候大衣扑张开来,裹进一团寒气,顷刻就溶了。店里非常热,王麦在一张张红扑扑的脸里头搜索着,

好书推荐 | 陈鼓应 《庄子今注今译》(内篇)

庄子今注今译(内篇)陈鼓应 译注中华书局 出版 书籍简介 《庄子》又名《南华经》,是战国早期庄子及其后学

今日下午打赏股

已经更新,打赏9.9元自动回复私信!

I 热点 / Hot