8月12日消息,從2010年4月上線,到2012年,短短兩年時間,騰訊微博已經擁有超過4億用戶,不少用戶的聽眾都已經突破千萬,面對快速的增長,騰訊微博在架構方面有哪些變化呢?8月10日下午,在全球架構師峰會上,騰訊微博事業部技術總監張松國對騰訊微博的架構成長做了詳細的闡述。
張松國表示,互聯網系統如同生命體,隨著發展不斷的生長演進。騰訊微博兩年四億用戶讓架構受到了極大的挑戰,并且隨著移動終端的發展,對微博架構的要求也越來越高。面對這樣的演進變化,張松國認為一定要控制好演進節奏。大節奏方面,版本演進時間長達數月,“先對外后對內,先抗住再優化”;小節奏方面,則要做到敏捷迭代,每周甚至每天都要有不同的版本更新上線。
騰訊張松:微博故障難避免 減少影響范圍是關鍵
上線階段:保證基礎功能
張松國介紹到,在騰訊微博上線之前,內部做了大量的測試工作,保證微博了的基礎功能。而隨著后PC時代來臨,多終端成為發展趨勢,同一功能要在不同終端上體現一致性,騰訊微博力圖做到平臺一致性,一個平臺連接多個終端,使服務和數據平臺化,使用統一的接口。
同時,騰訊微博上線采用了灰度發布的手段,在一個終端試用,然后再大面積推廣,這樣則保證了微博的基礎功能不受影響。此外,騰訊微博還做了大量的數據統計,以滿足運營需求。
優化階段:響應速度是第一體驗
從2010年5月開始,騰訊微博開始做性能優化。張松國說,在騰訊有一個非常重要的理念,即“響應速度是第一體驗”。一個速度不好的應用會讓用戶有心理障礙,因此,性能優化技術,靠近用戶的優化最關鍵。首先要確立優化目標和衡量標準,其次監控指標,包括區域和事件,最后進行優化。
對于整個性能優化最核心的地方就是web優化,騰訊微博采取的方法為減少請求、異步加載、預加載、多域名、多IDC布署、內部代理等。其中最重要的是首屏優化,首屏作為用戶第一眼看到的頁面,直接決定了用戶的粘性,因此騰訊微博的首屏要做單獨優化,在測速之后決定是否減少首屏元素,右側非關鍵元素延遲加載、JS拆分等,保證用戶優先看到時間線。
張松國特別指出,騰訊微博對首屏優化是十分重視的。當用戶瀏覽微博時,后臺會自動加載大圖,保證當用戶點擊縮略圖時會立刻看到大圖,如果用戶使用的是無線網絡,則會關閉預加載功能。
除了首屏優化之外,騰訊微博還進行了大量的后臺優化,幾乎在每一個層都使用了cache,大量使用簡單未定的memcache平臺,優化邏輯層和數據層。
對于數據存儲,騰訊微博也進行了一定的優化,張松國表示,騰訊微博非常注重存儲方式優化,使用索引存儲,內存和SSD并行寫,按照時間分區讀寫,聚合計算在內存中進行,SSD定期將離散數據整理成數據塊,讀寫性能將提高20倍。
建設階段:加強容災系統建設
從2011年6月開始,騰訊微博頻頻出現問題,大家意識到微博應該加強容災系統建設。張松國認為,故障不可避免,關鍵是如何減少故障的影響范圍。根據騰訊微博的調查,產生故障的原因56%是因為程序更新,隱形bug只占到了11%。解決該問題最有效的手段就是灰度發布,通過分階段的方式發布更新,每次只向少量用戶發布,即使出現問題,也不會產生大面積的影響。
張松國說,互聯網是高可靠系統,有可能因為一行代碼就毀掉一個系統。在騰訊微博早期時,一有錯就顯示空白頁,造成大量用戶投訴反饋,所以要進行有損服務,其核心功能就是強容錯強容災,如果某臺索引損壞,就忽略掉該數據,只顯示部分數據,這樣的方式用戶感知小,可以接受。
目前,騰訊微博的容災系統分為三大部分,即核心服務、普通服務、外圍服務。核心服務即為兩地三IDC容災,即便一個城市的網絡崩潰,也不會對整個微博服務產生影響,進行多層次容災建設,具有跨IDC容災能力。在以前,web接入點只有電信和網通兩個,如果一個點出問題,就會掛掉一大片,張松國認為解決這個問題,一定要增加IDC接入點。
未來階段:打造開放平臺
最后在談到未來發展方向時,張松國認為平臺化和開放平臺是騰訊微博發展的主要方向,做到百花齊放。在數據分析和挖掘方面也要增加強度,通過信息篩選、關系鏈挖掘、內容分類和優質內容篩選,深度挖掘用戶關系鏈和用戶圈,更好的進行用戶價值評估。
推薦閱讀
在挑選商家時,一定要選擇有資質的、信譽良好的網站和賣家,在閱讀商品介紹時,留心商品產地、主要成分、生產日期、有效期限等,要認真觀察商品是否實物拍攝,有無盜用別人正品的圖片或經過PS等后期處理;注意比較賣>>>詳細閱讀
地址:http://m.sdlzkt.com/a/guandian/yejie/20120330/118882.html