微信技術總監解讀微信架構的秘密
2024-08-03 00:40:11 1
作為2011年中國網際網路上最火的應用之一,微信是如何做到在433天之內從零到一億的增長的?3月27日晚間,騰訊大講堂《微信之道:至簡》活動在廣州中山大學舉辦,騰訊廣研助理總經理、微信技術總監周顥在兩小時的演講中揭開了微信背後的秘密。七百餘位學生和業內人士到場參加,整個會議廳人山人海,擠滿了兩側的過道。
微信的秘密
微信從2011年1月發布以來,在一年之內實現了上億用戶,千萬級在線,在蘋果中國區App Store月下載量排行第一。周顥把微信的成功總結為「三位一體」,即產品的精準,項目的敏捷,以及技術的支撐。
產品的精準
微信產品的精準定位,是建立在多年的產品經驗之上的。微信的靈魂人物張小龍先生有十多年的網際網路產品經驗,從foxmail到QQ郵箱和微信,一直致力於用簡單的規則構造複雜世界。他對微信精準的定位是微信成功的首要因素。
「當時小龍注意到國外的Kik這款應用,他立刻認識到這是一個重大的機會,當即寫信給公司領導說希望做這樣一個項目。公司領導認可了他的判斷,於是我們立刻著手來做這件事情。」周顥這樣說。
項目的敏捷
什麼是敏捷?周顥說,敏捷就是試錯法,用最快的迭代速度不斷追求卓越。敏捷是一種態度,允許發布前十分鐘的變更,並給予產品決策以最大的自由度。
微信的敏捷是建立在強大的基礎組件之上的。這包括自動代碼聲稱框架,邏輯容器,監控/統計框架和存儲組件等等,使得功能和版本更新在很大程度上可以不依賴於複雜的手工操作。周顥說,大多數網際網路產品,最多只能做到一天幾個變更,然而,「微信可以做到每天20個變更。「
技術的支撐
技術支撐方面,微信使用的同步協議叫做SYNC,參考了微軟的ActiveSync,用一個Key來實現狀態同步。這樣一種協議在後臺實現上比業界通用方案要複雜許多,但是能把客戶端的實現大大簡化,同時在很大程度上能夠滿足iPhone,安卓,塞班等多個作業系統的不同需求。
微信秉承「重後臺輕客戶端」的思路,因為客戶端安裝在用戶手機上,變更成本很高;而後臺則可以實現迅速的變更,在不發新版本的情況下實現新功能。對此,周顥舉了一個例子:微信的最初版本是不支持群聊的,第二個版本支持了群聊,但第一版客戶端仍然可以在後臺的變更處理之下參與群聊,只是不能夠發起群聊而已。
到場觀眾對微信都充滿了興趣,並提出了一系列高水準的問題。當周顥統計現場有多少人用過微信時,超過五分之四的觀眾舉起了手。值得注意的是,最後的抽獎環節是使用微信的「搖一搖」功能實現的,全場數百人同時打開自己的微信並「搖一搖」,周顥搖到的觀眾都得到了可愛的QQ公仔。
本次活動還提供了線上視頻直播和微博線上答疑。微信的兩位專家通過微博上牆,不間斷地回答來自微博和手機的關於微信的問題,#我在騰訊大講堂#話題下微博達近2500條。