土豆網黃冬:衡量用戶對帶寬流量的體驗的三把尺子
隨著網站數據量和用戶量的不斷增長,網站帶寬流量成為不可忽視的問題,幾乎所有的互聯(lián)網網站都開始面對大容量的CDN和大規(guī)模的分布式部署。對于視頻類網站來說,這種壓力尤其明顯,因此,其對帶寬流量的管理需求更加迫切。
土豆網技術副總裁、彩虹流量和xBaynet的創(chuàng)立者黃冬先生
在10月21日舉辦的“QCon杭州2011全球企業(yè)開發(fā)大會”上,土豆網技術副總裁、彩虹流量和xBaynet的創(chuàng)立者黃冬先生為大家分享了土豆網在帶寬流量管理方面的經驗和體會,同時,黃冬在演講中也透露了一些帶寬流量計費方面的“潛規(guī)則”。
帶寬流量計費的幾條“潛規(guī)則”
黃冬表示,在與運營商做帶寬將誒算的時候,一般會采用峰值計費法。不過,對于具體的執(zhí)行細節(jié),國內外運營商的計量方面卻有所不同。
計算流量峰值通常會以5分鐘為一個間隔單位,在每個五分鐘里找到一個流量峰值點,這樣在一個月里,你會得到很多個峰值點。那么,運營商做計費時是根據五分鐘內的峰值數據,還是一小時內的總峰值,或是更長時間的計算來找到當天的峰值呢?這一規(guī)則在國內并不是透明的,很多企業(yè)其實并不清楚運營商是如何得出價格表的。而在國外,比較通用的方法是“九五計費”法。我們每五分鐘得到一個峰值計費點,然后將一個月內所得到的所有峰值按從低到高排列,取第95%位置的峰值為計費點來收費。
但是,即便是這種方法,也存在容易被忽略的“潛規(guī)則”。比如,我有三個千兆口,運營商是對三個口分別做九五計費,還是綜合做峰值計費?這兩個數值是不一樣的。
黃冬說,由于企業(yè)很難拿到運營商的交換機數據,所以我們通常是拿企業(yè)自己的服務器來計算。得出的數據通常與運營商在他的交換機上的數據是有差距的。這種差距存在于服務器“握手”時的一些數據、存在于TCP/IP的包頭的數據、重傳的數據等位置。不過,黃冬總結說,這種差距所造成的帶寬損耗率只占實際環(huán)境中測試的3%左右,因此那些網絡流量整形的公司,原則上所能優(yōu)化的范圍不會超過這3%。
衡量帶寬流量用戶體驗的三把尺子
了解到帶寬流量的消耗數據之后,還有一個問題需要我們關注:我們所提供的帶寬流量對用戶來說是不是用戶體驗足夠好的狀況?
黃冬介紹,衡量這個用戶體驗有三把不同的“尺子”:“ 所有互聯(lián)網的應用都是瀏覽器或應用發(fā)出request,然后服務器回應response”。因此,衡量用戶體驗的尺子可以放在三個不同的位置:服務器端、瀏覽器端、中間部分。黃冬介紹說,土豆網采用的度量工具是在服務器端,而騰訊的“尺子”在瀏覽器端,百度的則是在中間層面即網絡層來度量用戶體驗。
之所以將土豆網的帶寬用戶體驗衡量工具放在服務器端,黃冬表示,主要是因為,“在服務器上不用做一點開發(fā)”,他說,“如果我在客戶端放這把尺子,就需要前端的工程師配合我。我在服務器端配置有一次只用了兩小時就做完了”。黃冬介紹說他使用的在服務器端的度量的“尺子”有兩個:Apache2.x中的%D ,nginx中的Srequest_time。
對于三種方法的優(yōu)劣,黃冬表示,在服務器端部署容易,但缺點是只能通過數據“猜”用戶體驗好還是不好,而在瀏覽器端可以看出加載時間快慢,至于中間層的那把“尺子”,由于耗費成本比較大,如果資金不足可以不做。黃冬建議企業(yè)分三步走來衡量用戶體驗:第一步在服務器上做,因為最簡單。第二步是在瀏覽器端上做,最后一步可以選擇在網絡層做。
演講最后,黃冬用五個要點總結了網站計費和流量管理的工作技巧:用尺去度量體驗;用計費去優(yōu)化成本;將來源匹配向最合適的服務點;事后度量;事后審計。
【編輯推薦】