個人介紹:梁定安,現就職于騰訊社交網絡營運部,負責社交平台、增值業務的運維負責人,開放運維聯盟專家委員,騰訊雲布道師,騰訊課堂運維講師。
上回投稿社群總結了騰訊運維多年來對于容量管理和裝置成本管理的實踐經驗,由于社交業務體量巨大,一不小心節省了上億的營運成本,輕松實作了王爸爸的小目标。
看上一篇文章:精細化容量管理的裝置成本優化之路。
衆所周知,帶寬是IT的營運成本的大頭之一,這次我們來一起看看以富媒體為重要内容載體的騰訊社交業務,是如何通過多年的運維經驗積累,一點一滴的榨幹不合理使用的帶寬水份,為公司繼續節省兩億的營運成本。
進入帶寬優化技術環節前,我們先一起學習下營運商對帶寬的收費政策:
IDC 與 CDN 的帶寬租金的計價機關為“元/M/月”,按“周末最高值均值”每月按量收費。
了解完營運商的收費政策,知己知彼好幹活。針對業務形态的不同,實施對應的技術手段或産品政策,在不影響使用者使用體驗的同時,達到帶寬使用最合理的目的。說白了就是要把業務高峰期的帶寬峰谷削掉。
本文不單獨對IDC帶寬轉換成CDN帶寬的優化做介紹,因為這種做法雖然降低了帶寬成本,但是實際上還是産生的帶寬消耗,本文的目的更多的是分享減少帶寬消耗的方法。
如下圖120G是真實的帶寬峰值,100G是上了優化政策後的峰值,直接優化20G帶寬。

減少帶寬消耗最直接的辦法就是限速,讓使用者在業務高峰期時以較慢的速度通路,這是最簡單粗暴的做法。
今天我們說點與業務場景更貼切的優化手段,在騰訊多年的社交運維經驗中,我們歸納出七點心法用于帶寬的優化:
騰訊社交業務産品線廣,幾乎覆寫絕大部分的使用者社交場景(文字、圖檔、視訊、音頻、直播、檔案),是以下文我們主要對使用者社交場景的帶寬成本進行優化。
技如其名的優化政策,在帶寬高峰期,針對業務場景如微信公衆号文章、騰訊視訊、空間說說、QQ看點等,含有流媒體(gif、視訊、音頻)、flash這種消耗帶寬大頭的檔案下載下傳時,在産品體驗上取消其自動播放或自動下載下傳的功能,改為由使用者主動觸發後再播放或下載下傳,這樣可以有效的減少峰值帶寬的,在使用者體驗和營運成本中找到平衡點。
作為國内最大的社交平台,我們擁有着衆多PGC視訊、網絡熱文、廣告圖檔等高頻内容,在網際網路病毒傳播的作用下,往往很容易造成帶寬的毛刺消耗,而帶寬的毛刺是營運成本管理中最不願意看到的。
為此,我們通過背景的資料分析,提前發現熱點内容,采用預先推送到使用者本地的方法,降低高峰期使用者通路該熱點内容時,産生的帶寬峰值,進而實作優化帶寬的目的。
舉例說明下,假設在應用寶上有個熱門的軟體有bug需要使用者更新修複,通過資料可以提前分析出使用者主動觸發更新的時間段,那麼我們就可以針對性的提前将更新檔下發到使用者本地,等到使用者點選更新時,則可以直接快速讀取本地的更新檔更新。
此舉從使用者體驗上和營運成本上都是個最優的方案。類似的案例還有很多,如門遊戲更新檔包的下載下傳優化、柴靜《蒼穹之下》在微信朋友圈瘋傳、富土康員工張全蛋的視訊等等。
在社交的場景,使用者免不了用圖文來表達自己的,而在帶寬最優使用的要求下,我們有必要對圖檔、視訊的格式和大小在不影響使用者體驗的前提下,盡可能的優化。
技術上看就是要尋求一種成本效益最高的壓縮辦法,常見是如jpg -> webp -> sharpp的圖檔格式,又如H.264 -> H.265 的視訊編碼。可應用的業務場景很多,如QQ相冊、空間視訊等等。
按需使用帶寬看似很理所當然,但是放在實際的工作中卻往往很難做到真正的按需使用。站在産品經理的角度,一款好産品就是應該給使用者最好的,高清的圖檔、無損的音質、1080p的視訊等等。
但是站在運維的角度産品經理口中最好的并不意味着使用者體驗是最好的,如1080p雖好,但僅當使用者在高速網絡和高分辨率終端的前提下如此,否則盲目的給使用者提供最高清的視訊,隻會浪費了公司的帶寬成本,而使用者既不能節省流量資費更不能獲得極速的速度體驗。
是以,我們很有必要找到使用者體驗和帶寬的平衡點,讓營運成本的每分錢都花到使用者的身上。
舉個業務例子,企鵝電競的遊戲直播分别支援在不同終端上觀看,可以采用不同的分辨率,PC最高清,5.5寸大屏手機次之,小屏手機最低碼率。
營運商不斷為使用者提速,同時降低的資費,在視訊盛行的年代,帶寬費用當然不讓的成為衆多視訊和流媒體公司的成本消耗巨頭。還是那句話,要找到使用者體驗和帶寬成本的平衡點,我們需要最具成本效益的下載下傳管理方案——分段下載下傳,在不提高二次緩沖率的同時,減少多餘帶寬的損耗。
舉個QQ音樂的場景,使用者在試聽歌曲時,往往有個習慣,前10秒或副歌開始時就直接決定了該首歌曲會不會被聽完。這就存在一個優化點,聽完一首歌和下載下傳完一首歌的速度是不一樣的,假設歌曲的平均大小是3M,碼率是128K,使用者使用百兆網絡下載下傳隻需要1秒,但使用者卻隻聽了10秒便切歌了。
在沒有做任何帶寬優化的情況下,約有2M多的帶寬會被浪費掉,而QQ音樂有着1億多的使用者,這個成本的浪費是不可接受的。是以,對于QQ音樂這種場景,需要限制下載下傳速度和分段下載下傳,如當使用者播放音樂時,先下載下傳2個時間片的資料(每片10秒),随後視情況/政策繼續分段下載下傳。此政策在騰訊視訊等流媒體類的應用都适用。
上面提到優化點多為産品政策或營運手段,該優化措施是直接在業務技術上實作帶寬的節省,如裁剪APP安裝包大小、手機上使用P2P技術、音視訊voip技術優化、優化傳輸協定減少無用字段的消耗等等,都是一些可以有效降低帶寬消耗的方法,具體執行的情況建議按二八原則,抓大頭層層遞進的深入。
業務實踐的案例,如sharpp,H.265等都是很好的技術突破的案例。
最後一點,也是網際網路公司遵紀守法的展現的一點,掃黃打非在一些業務場景下效果十分顯著,如群共享、雲盤線上播放等等。大家很容易可以想象到,一個非法的黃色視訊 / 圖檔 / gif 會被頻繁的傳播和點選,不但違法而且浪費帶寬成本,理應被打擊。
與之相關的涉及鑒黃能力在騰訊多年的社交經驗中早已打磨得十分精準,有需要遵紀守法的公司可以在騰訊雲上找到萬象優圖這塊産品。
啰啰嗦嗦的列了很多帶寬成本優化的實踐,算是承接上一篇《精細化容量管理的裝置成本優化之路》裝置優化的續集。同樣的,包括但不限于上述 7 種帶寬優化方法,希望抛磚引玉,在運維圈能夠形成良性的對營運成本優化管理的風氣。
畢竟運維團隊是成本中心,技術資料為業務創造價值之前,咱們得先控制好營運成本。
文中列舉的很多案例,都需要産品和開發的配合,也許這也是DevOps的一種價值展現!
相關推薦
精細化容量管理的裝置成本優化之路
濃縮的才是精華:淺析GIF格式圖檔的存儲和壓縮
系統架構評審方法和思路總結