![]()
2019年年初,在930變革3個月后,騰訊宣布了兩大技術戰略:開源協同和自研上云。
如果說開源協同意在推倒公司內的技術煙囪,讓曾經封閉在煙囪中的技術人員建立連接,互相看得見,實現“車同軌,書同文”的技術中臺夢,那么自研上云則是為“同”指明方向,是一次對公司技術價值觀和研發文化的全面審視。
不同在于,自研上云是一次自上而下的變革,這種變革方式沖擊著騰訊這家公司過去更習慣的文化基因:依賴和重視自下而上的創新力量。這個過程考驗一家公司底層基因的強韌度,也驗證那股底層創新力量的自我進化能力。
把大象放進冰箱,從來不是一個笑話。所有獲得過巨大成功,也因此成為龐然大物的公司,在新的技術條件下想要保持年輕,保持公司的使命,保持組織的活力,都是一個把大象放進冰箱的過程。
而且要大象自己走進去。
一個靈魂拷問
930變革前夜,湯道生在香港總辦會議上被委任以To B業務重任的同時,也向馬化騰、劉熾平提了一個條件:公司要全力支持CSIG推進騰訊內部自研上云的技術戰略。
“既然公司已經明確CSIG要牽頭去做To B的業務,把云業務作為這個BG業務體系最核心的事兒去干,那我必須要解答客戶其中的疑問:騰訊的業務有沒有用騰訊云”。
“如果微信、QQ都不上云,我們出去怎么跟客戶談?”
這個問題真正值得焦慮的地方,不是客戶會因為微信、QQ沒有上云而拒絕騰訊云,而是關于騰訊云究竟是騰訊的“云”,還是僅僅是騰訊云。
為了解釋這一點,騰訊云高級副總裁、CTO王慧星復述了一位客戶曾經對他說的原話:
“我看你們微信一直還是很穩定的,為什么騰訊云提供給我們的KV存儲會有毛刺?你們內部微信是用這個東西嗎?”
“毛刺”簡單理解就是計算資源利用不均勻、不充分,屬于一種常見而惱人的計算機“異常”,需要技術人員后臺解決。
王慧星認為,客戶真正想問的其實是:微信、QQ、游戲等自研業務上的技術積累和技術優勢,能不能通過云,復用到自己的業務上?
但答案無奈而殘酷:不能。
騰訊成立于1998年。這個時間和之后幾年屬于2G時代,國內的基礎網絡設施建設和互聯網技術都處于原始起步階段。
QQ,當時還叫OICQ,上線的時候,是創始人之一的曾李青靠刷臉從老東家深圳電信那里租來了一臺服務器。幾個創始人同時還忙乎另一個產品:網絡尋呼業務,QQ并非唯一押注的產品。
這大概是騰訊最早的“賽馬”,在當時看來,后者似乎還更有成功氣質,幸運的是他們也沒有放棄QQ。
為了應付網絡不穩定和租不起更多服務器的問題,騰訊沒有用當時即時通信軟件常用的TCP協議,而是選擇了UDP協議。兩者的差異是,TCP協議傳輸穩定性好,但是需要一直維護連接狀態,消耗服務器;UDP不穩定,會丟消息,但傳輸快,能連多臺服務器,省錢。
本著修修補補能用就先不花錢的原則,技術小組靠在上層不斷優化和重寫慢慢解決傳輸不穩定的問題。據《騰訊傳》記錄:QQ推出第一周就連續完成三個迭代版本,極大地“激發了用戶的使用熱情”。
創始團隊本來預估,3年后QQ能達到1萬用戶。騰訊初代CTO張志東還根據這個規劃算了筆賬,“如果用戶數量在一萬人以內,每年的人員開支、帶寬租金和服務器費用不會超過10萬元,應該是養得起的。”
然而上線兩個月后,用戶增長開始幾倍幾倍往上翻,服務器一次次瀕臨崩潰,張志東不得不經常跑到深圳電信的機房調機器。
服務器太貴了,一臺配置稍微好點的服務器要五六萬,公司花不起這個錢,技術團隊于是圍繞服務器性能做了大量優化,“包括算法的精巧、降低CPU的消耗、把一些運行放到更底層的數據庫等”。
這種因陋就簡、用技術能力柔性解決和支撐業務發展的技術文化,是騰訊“海量之道”的雛形。它支撐了騰訊在PC時代以及移動互聯網時代的海量并發,也讓騰訊在底層存儲、網絡異常甚至遭遇數據中心斷電時,逐漸積累起強大的容災和調度能力。
自此騰訊在科技行業的坐標系里,形成了自己的技術哲學:找到一門業務,通過技術加持和技術優化,把這門業務延伸出更寬廣的科技意義。
這種技術哲學的特點是與業務深度綁定,技術研發人員有廣闊的發揮智慧的天地,技術的根穩穩扎在業務上,它的好處是業務可以借此更快的繁茂生長——騰訊幾乎所有的成功的產品都離不開這一點。短板是,“技術專用”,“人才專有”,導致很難在其他業務快速靈活復用。
在依賴產品能力打天下的消費互聯網時代,這一技術哲學的短板幾乎可以忽略,但是到了以云計算為先鋒的產業互聯網時代,情況不同了。
![]()
云計算最開始是作為一種更靈活、更方便的計算資源誕生的,被稱為互聯網新時代的水和電,但是互聯網語境下的“水”和“電”,只代表重要,不代表稀缺。
對客戶來說,用哪一家的云,只是采購方式不同,技術體驗差別不大。這注定了云計算從一開始就要面臨價格戰的血雨腥風,也注定經歷價格戰洗禮后,各家云廠商的基礎服務能力會趨于同質化。
“過去大家理解的云主要是IaaS,有一定規模的客戶會逼著你虧損地提供服務,CDN就是一個很好的例子,如果很在意收入規模,虧損也要給他們。在這樣一個競爭激烈的市場,毛利率很低,作為云廠商,說實話很痛苦。”
5月下旬的一次采訪中,騰訊公司高級執行副總裁、云與智慧產業事業群CEO湯道生沒有避諱行業競爭的慘烈。
在國內公有云市場整體規模和騰訊云營收連續增長的背后,他看到的是:“資源型的公有云業務,天然就很難做成高利潤”,而騰訊其實并不適合做集成商的角色。因為騰訊的基因里面,需要向最優秀的技術人員提供市場上最好的待遇,一旦進入同質化競爭的紅海里,這個承諾就失去基礎了。
中國云計算市場與美國不同,移動互聯網之前,美國已經培育了成熟的面向B端的軟、硬件市場,養活了包括甲骨文,IBM,SAP在內的一大波企業服務商。
而國內企業級IT消費處于初級階段,大量中小企業每年的信息化投入其實是買電腦。據國家統計局、Gartner、美國國家軟件與服務公司協會的數據,2019年中國IT支出只占GDP的1.4%,其中設備和通信服務占了大頭,企業軟件和IT服務支出在全球市場的占比分別只有3.1%和4.2%。
當云計算市場的客戶主體從互聯網行業,切換到傳統行業之后,云廠商必須面對客戶技術基礎和技術能力不足的問題。如湯道生所說:“傳統行業對云的需求不僅僅是資源”,那么,“賣資源的同時,如何體現我的價值?”
騰訊云的價值就藏在客戶的拷問中,所有人都心知肚明:騰訊在各種海量業務上積累的技術優勢,既是競爭激烈的云計算市場敬畏的,也是云計算市場需要的。
然而就像“奢侈品手工制作大師的經驗,無法直接用于指導工廠流水線生產”一樣,在騰訊層層遮蔽的技術堡壘中,那些看起來非常厲害的技術,卻如同無法產品化、工程化的屠龍刀,只能驕傲而孤獨的被傳頌。
舊制度與大趨勢
更大的危機在于,2018年的一篇文章,讓騰訊在技術上一貫的驕傲被打翻在地,2萬多名研發人員的困惑和焦慮,最終演變成一場內部輿論風暴。
這一年是騰訊歷史上可以跟3Q大戰那年做對比的年份。不同在于,這一次的痛苦在內部觸手可摸。首先是高管們從后臺看到公司整體的基礎流量指標在下降——骨干網上的帶寬占了多少,是衡量一家互聯網公司業務活躍度的最好指標——流量下降,意味著有對手兵臨城下。
壓力映射到員工層的表現,是業務團隊開始悄悄討論公司在短視頻賽道“丟球”的傳言,而技術團隊則在“騰訊沒有夢想”的外部質疑中,陷入深深懷疑,“騰訊是不是也沒有技術?”
騰訊有一半以上員工是研發人員,技術氛圍濃厚,技術討論的氛圍更濃厚,930之前公司內網上每天高瀏覽量、高回帖量的熱門帖子,至少一半是技術問題。
“一開始覺得咱們那些自研的組件能做到海量高并發,覺得很牛,但是看到很多業內開源的組件后,慢慢覺得別人的組件做得比我們更好。如果我們一直用現在的后臺技術棧,整個團隊也好,個人也好,都會跟行業的技術脫軌,并且越來越落后。”
“行業內已經基本上做容器化跟做彈性伸縮了,自動擴縮容是不用耗人力的,但是QQ還是要申請機器資源再去擴容,雖然從業務上來說,業務也能頂得住,但是研發效率跟研發技術是有點偏落后的。”
“value就只支持一種數據結構,所以只能寫很多業務邏輯代碼,把這一堆業務邏輯代碼序列化再塞到CKV的數據結構里面去。如果用redis,完全可以寫很少的代碼實現相同的業務需求。”
剛開始,總辦成員們會盯著內網上的熱榜,看到提意見的帖子,就發到技術委員會的群里,“該誰的,趕緊上去認領,趕緊回”。之前的要求是看到問題必須第一時間回貼“收到,請等待我們解決”,然后一天或者半天之后,問題解決完了再回去回貼解釋清楚,如果短時間解決不了的,就回貼承諾在什么時間內去解決。
后來發現,很多帖子沒法回了,大量的吐槽帖子后面跟著的總結和回貼,已經是完全的負能量輸出,失去了解決問題的導向。
私下里,技術人員的擔憂和焦慮更現實:
“如果還是按照騰訊內部很多自研組件的那些輪子,你就算掌握了那些組件的一些能力,出去之后個人也不會找到特別好的工作。”
“一個封閉的循環,不與外部接軌的情況下,技術演進的唯一動力就是你的業務需求,最終你這個技術的發展,基本上都是會陷入停滯,自研—優化—推翻形成這樣一個循環了。”
所有不滿最終指向了騰訊的技術路線,曾經將技術人員綁在業務線上,造就技術人員“專”與“精”的同時,也因為技術的根長在業務上,壓抑著技術和技術人員跳出業務圈子、向外眺望的沖動。
輿情洶涌,一浪又一浪。
“如果吐槽的聲音上到總辦這個層面,那肯定是我們有沒做對的地方”,騰訊總辦成員逛內網是一個例行工作。內網是初代CTO張志東退休前力主建立的,為的是公司大了之后,留有一個員工跟管理干部直接溝通的渠道。內網的發帖規則是,發帖可以匿名,評論必須實名。所以吐槽總是最狠的,回貼解決問題的則往往要謙遜一點。
湯道生跟內部的員工做了大量訪談,結果發現,“任何一個技術人員,不管是在騰訊內部還是騰訊外部,如果他們要出去創業、要打造一個互聯網服務,他們一定會在云上開始。”
“他們也不希望在老的架構里去做只有在騰訊特定團隊才有意義的支持,還是希望能夠面向未來。云那個時候已經很清楚,就是未來。”
既然大趨勢已經這樣,大家都希望公司內部的工作“不再是基于只有在騰訊內部有用的技術技能”,還希望能夠更面向未來。湯道生覺得自研業務、自研產品的轉型——基于云的架構來設計——可能是時候了。
2018年底,正在參加部門年會的鄒輝,接到一個電話,電話內容是讓他們研究一下騰訊內部業務如果要上云,該以什么樣的方式上云,“到底是上到虛擬機,還是上到K8S這一層,讓我們說明一下技術趨勢和優勢。”
作為騰訊云容器產品中心總經理,鄒輝對這個電話記得特別清晰。
多年來他的團隊一直為割裂的研發環境痛苦,“一方面要給用戶提供一個非常先進的、能夠提升效能的容器產品,另一方面我們自己還需要用傳統的物理機、虛擬機打包,非DevOps的研發模式。”
而這個電話讓整個團隊興奮起來了:騰訊總辦領導正在著手解決這種“割裂”。
他們不知道的是,就在他們研究匯報完后不久,關于自研上云的“云”究竟是什么,在總辦會議上鬧僵了。
爭議“真假”上云
2019年初,CSIG代表整個公司做云基礎設施的團隊去匯報,匯報做了一半,被TEG負責人盧山叫停:
“是不是只要用上運管放出來的騰訊云的虛擬機,你們就算上云了?”
“是。”
“不好意思,這不是我理解的上云。”
會開了半截,開始停下來討論。
盧山很堅持:必須通過容器上云,根本性建立起面向未來的底層技術架構。
但盧山也理解CSIG的苦衷:“他們肯定之前討論過無數次,各個BG都有自己的考慮。因為公司要求自研上云要有一個結論,他們就說算了,反正你好我好大家好,糊弄過去。”
虛擬機和容器是云計算里兩種不同層級的技術應用。
虛擬機是通過在物理機上加一層應用,把一臺物理機虛擬切割成多臺云服務器,然后實現對底層資源的靈活調度,是最基礎的云計算代表。
容器是在物理機的操作系統層面之上,把應用和依賴的環境打包成集裝箱,因為搬遷轉移的時候不需要運營操作系統,比虛擬機更輕,對各種部署環境也更適應,是一種更靈活的彈性調度技術。尤其自2016年,Google開源了容器集群管理技術K8S后,以K8S為基礎的容器云已經成為業界最主流的彈性調度技術。
![]()
CSIG匯報自研上云方案時,有一個特別打動總辦的故事:
以前各BG有各自的資源池,為了預備不確定什么時候會到來的流量高峰,每個團隊都會在資源池留一部分空閑資源,相當于每個業務都有一個buffer,一個業務一個,六個業務就是六個buffer。
自研上云后,各BG聚到一個資源池子,就可以只留一個buffer。
大江大海里騰挪空間大了,還能利用上各個業務不同的流量高峰,以前各顧各的,過了高峰期,后臺算力就閑置了,聚到一個池子后,可以通過錯峰利用,把一些離線訓練放到那些暫時閑置的服務器上,省下原來需要部署離線業務的服務器。
總之,自研上云能做到成本優化。
但這個故事在各BG那里沒什么吸引力了。
2018年和2019年初,互聯網行業還沒有經歷之后的政策颶風,騰訊的股價雖然跌了,不過公司賺錢的產品還是很賺錢,降本增效還不是一件十分緊迫的任務。
一般來說,體量大、消耗資源多的業務上云更容易實現成本優化,然而矛盾在于,各BG里最大的業務往往也是最賺錢的那個業務,因為“大”,資源成本在總成本里本身就是很小一塊,因為盈利能力強,對成本也沒有那么敏感。
騰訊當時的情況是,騰訊云做虛擬機的時候,各BG其實也已經有一部分業務用了虛擬機,只是都放在各自的資源池。池子雖然小,好處是可控,底層用市面上性能最好的物理機,一買都是同一批號,好調度,好管理。
而那些仍然用物理機的,則一般都是因為物理機在滿足業務特性上有一些不能替代的優勢。在虛擬機技術上折騰投入,不如直接用物理機省心省事兒。
所以如果自研上云是上到虛擬機這一層,CSIG需要證明自己在虛擬機技術上有獨特優勢,不僅比各BG好,而且可以達到各業務以前依賴物理機的技術要求。
這當然也挺不容易,但是作為一家重視技術的公司,技高一籌,多數時候還是有說服力的。上到虛擬機這一層,對各業務來說,只是改變了底層資源的供給方式,相當于連接上了云社區,不再需要自己“挖井吃水”、“挖煤發電”。雖然不同業務對水壓水質、電壓高低或者電壓穩定性有要求,不過終歸是技術范疇的難度。
用統一的容器,卻是另一回事。
打個類似的比喻:用統一的容器,相當于讓“業務”搬到一棟共享辦公樓,不僅共用水電,還要共用空調、安保、電梯、通風——按照盧山的要求,真正的云原生是以后前臺、打印機、保潔等服務,也要共用的。
問題是,騰訊云在2016年推出基于K8S的容器平臺TKE之前,自研業務基于各自的業務特點,也搭建有各自的彈性調度技術,這些技術有些是基于K8S,有些是自研自建,但是它們運行多年,與業務結合地親密無間。
就技術能力來說,自研業務反而更自信一點。
一個直觀的數據是,當時每個業務的彈性調度平臺,直接服務的內部業務都有幾百萬核,而騰訊容器云在2019年,整體規模只有幾十萬核,是每個BG的1/3—1/4。
“人家少的幾十個人,多的上百個人的團隊在做這個事情,已經做了那么多年,現在讓統一到一起做,這個過程中阻力一定很大”,盧山理解其中的難度。
但他和湯道生都認為,上云上到虛擬機這一層,意義不大,就好像是只是把機房從深圳搬到清遠一樣。
“在PC互聯網時代,技術私有化是沒有問題的,只要能支撐好這個生意,不管是用開源的組件,還是自己閉源的私有化解決方案都是沒有問題的”,但是今天,“只要在云原生上掌握那些函數,找幾個能寫邏輯的程序員就能搞定”。
只有讓業務在云上生長,完成云原生改造,才能讓2萬多技術員工隨時看得到外面,才能保持騰訊在技術上的先進性。而在底層使用統一的容器,是云原生改造的第一步。
當時參加CSIG匯報的還有劉熾平,盧山跟劉熾平解釋了之后,后者也很快聽懂了。
騰訊的總辦會議不是表決制,沒有少數服從多數那一套,有異議的決策,一般會先擱置。但自研上云是一個大家都能看明白的事,“云原生作為技術開發已經成為一個共識,那些有知識的管理干部很難說不做這個事情。”
最終在這次會議上,大家同意,把K8S定為開源協同的三大項目之一,同時也把自研上云的調子定到了“必須上到騰訊云的TKE”。
沒有尚方寶劍
盧山大概是騰訊總辦最喜歡自黑和自嘲的老板。他負責的TEG是騰訊內部的核心技術支持平臺。930之后湯道生負責CSIG,在前方直面B端市場,TEG則以類似武器研究部門和彈藥庫的角色,提供技術和服務支持。
盧山曾放話:對CSIG,要往死里幫。
這背后其實有盧山和湯道生多年背靠背作戰結下的深厚情感。TEG在2012年成立,定位是做基礎設施,比如數據中心、服務器、安全、存儲、計費等。其中,TEG第一個真正意義上具有核心業務價值的研發團隊是存儲團隊。而存儲團隊成立在2007年,隸屬于當時的O線,成立這個團隊的時候,騰訊內部存儲需求最大的團隊就是湯道生掌管的QQ空間業務。
換句話說,存儲團隊今天出色的技術基礎,是由QQ空間的業務“磨練”出來的。在可以自己造輪子的情況下,湯道生卻選擇了支持和信任TEG的團隊。
對盧山來說,支持湯道生和騰訊云,除了大局為重的理性選擇,也還有一份“報恩”的溫情。
2019年初,騰訊宣布成立技術委員會,推動開源協同和自研上云兩大技術戰略。其中自研上云的技術底座由TEG和CSIG共同承擔。
戰略定了,不一定能跑起來。
TEG運營管理部的鄭亞峰經常感到無奈,“每次開會的時候,大家沒有反對的,都是很好很好,一出會場,沒人記得這件事。”
他們自嘲這叫“令不出技術委員會”。
“大老板坐在一起說要上要上,然后我們去執行去溝通的時候,卻苦大仇深、挑戰重重。”一位騰訊云的員工回憶最開始上云既無奈又委屈。
2019年初,關于容器上云的會議開了七八次,還是推動不下去。后來各個BG勉強同意,其實是又在CSIG做的TKE基礎上包上外殼,在殼上再去做管理工具、調度,公司于是出現了一堆XXTKE。
“等于對TKE又做了大量的魔改”,盧山跑過去問,“到底有什么是CSIG不能做的,非得上去插一刀?”
![]()
TKE團隊封閉開發
大家各有各的理由,而且并非全無道理。
比如騰訊游戲,不同的游戲,對應著各不相同的架構,要做云原生改造工作量特別大。另外,游戲本身屬于內容性質的服務,以往更多的精力也放在內容開發上,架構上面的技術投入本來就相對偏少,想立刻馬上搞定云原生是很不現實的事情。
另一方面,當時騰訊云的容器化也沒有做得特別穩定,經常會有成功率降低或者兩個pod容器之間網絡不穩定的問題。這些會直接導致前端業務出問題,各業務線里支持容器統一、云原生的運維人員,需要承擔業務老板拋過來的巨大壓力。
對業務來說,多加一層容器,系統的復雜程度更高了。以前調度系統可能不夠“自動化”,但穩定可控。切換到云原生后,既不可控,又影響到穩定性的話,在“重視用戶體驗”的大前提下,幾乎可以一票否決。
更重要的是,技術人員也會有“安土重遷”的情結。很多業務線在多年前搭建了自己的資源調度平臺,這些平臺運行多年,見證了業務的發展壯大,有些還做得不錯。
比如微信的Yard平臺,是在微信增長最快的時候,拉出來一支很強的技術團隊去做的。那時候K8S還沒有開源,等K8S成熟的時候,Yard也用順手了,前幾年微信利用這個系統在閑時錯峰做了一些離線訓練,還拿過一個圍棋AI的比賽冠軍。
像這樣的情況,技術團隊不僅要做技術上的準備,也需要心理上的緩沖。
而騰訊不是一家追逐“鐵血文化”的強執行力公司,馬化騰看重自下而上的力量,相信“很多創新往往是自下而上”,公司文化一向鼓勵試錯,也容忍失敗。
盧山雖然在總辦會議上很堅持、很篤定,但推進開源協同中,看到技術團隊不配合的朋友圈內容:“我憑本事打下的江山,憑什么要讓出去”,也只是氣得把電話打給團隊負責人賭氣說,“要不我們別做了”,而不是以職位壓過去一個“必須怎樣”的命令。
湯道生更是直白的承認,自己“沒有殺手锏”,“強迫不了業務團隊的技術決策,只能從(提供)價值去做”。
所以在騰訊,一直以來都是自下而上的行動會很迅速,而自上而下的時候,卻總是必須得“先把道理講通”。
“我上云了,會有什么好處?沒有好處,為什么要上云呢?要不成本降低,要不性能變好,要不然穩定性提升一大塊,肯定是有一些訴求的。”
騰訊云副總裁高向冉2008年大學畢業進了騰訊公司,講起話來有東北人的爽朗和幽默,他形容自研上云最開始幾個月的狀態是:“隨意”。
“開始是很自發性的,’大家來上云吧’,是這種感覺。”
一說上云,都來了。有的是BG來申請,有的是產品組來申請,有的說我們是某某部門申請,還有的說我個人也想申請。
涌過來之后發現,云的官網上沒有符合自研業務訴求的產品,所有產品都是都是面向外部的。
這下炸鍋了,大家又涌到內網上吐槽,“自研上云就是自己研究上云吧”。
騰訊云也很頭疼,一堆申請,有的連是誰申請的都弄不明白,到底給什么權限呢,肯定不能一樣,但是怎么定?
“它沒有一個統籌的概念,說公司讓上云,就是必須上云、強制上云。相當于自研上云剛開始不是一個軍令狀,是一種文化建設。”
然而,不管是文化建設還是看起來過于“隨意”的狀態,自研上云最終還是搖搖晃晃開始了。
雖然這個自上而下的技術戰略,跟這家公司的技術路線和文化基因處處相悖,但湯道生、盧山,包括馬化騰和劉熾平還是愿意相信,這家從誕生之日起就充滿危機感的公司,其底層蘊藏一股強烈的自我變革的力量。
這股力量現在要經受一次考驗,它有可能在一次事關它自身根基的戰略中受到損傷,或者讓那個豪情萬丈的戰略半路夭折。但是,仍然有一種更有希望的可能:它最終會與自上而下的戰略在碰撞中匯合,然后為這家公司沉淀出新的進化能量。
最難搞的客戶
2019年2月初,自研上云出師不利,首個自研上云可用區的交付時間比原計劃延遲了3天。云團隊一槍沒開,先啞火了。
延遲的原因其實很無厘頭,不是卡在技術能力上,是卡在流程上。原定在周五交付,因為賬號、計費上的流程細節沒梳理好,騰訊云搞到當天凌晨一兩點鐘,不幸后面跟著周六周日,最后成了延遲3天。
這個事件幾乎是整個自研上云的一個縮影。它是騰訊內部在經歷十幾年的技術封閉開發后,身處不同技術堡壘的團隊初次嘗試連接對方的必然結果:尷尬、瑣碎、曲折,以及遠不及想象中美好。
自從公司宣布自研上云,經歷了最初的興奮后,云計算產品策劃經理劉潔欣意識到,服務內部客戶遠比想象的更有挑戰。
她只是沒想到,第一個被挑戰的是云服務器的性能。服務外部多年,云團隊以為自己的虛擬機性能至少是行業前列。
然而自研業務第一輪壓測后給出一個崩潰的反饋:“云服務器的性能跟物理機性能相似度只能達到85%,差了15%,差異太大了,性能差異至少要降到8%,否則上不了。”
自研業務不是故意這么苛刻,那些超大體量的巨無霸業務,只能是逐步切到虛擬機上,如果性能差異太多,會影響業務前端體驗。
以前外部客戶做虛擬機測試,都是測單臺云服務器的計算性能,但是自研業務做壓測,是把所有云服務器放到一臺物理機上,同時壓測它們,看看互相之間會不會有影響。
云團隊后來發現,自研業務不僅在單個指標上測試嚴格,不同的自研業務內部,還會根據不同的業務場景再提煉模型,做多種測試。比如QQ業務下,QQ群有一個套測試指標,QQ紅包又有一套測試指標,而每一套都復雜細碎。
“我記得當時好像是QQ紅包,它分兩塊,分場景測試和性能壓測,我不記得是不是還有個穩定性測試。然后其中場景測試又區分了三種場景,然后每一個場景里面都涉及到近十個的指標項,比如延時、丟包率等等。”
差不多整個2019年,劉潔欣參加自研上云周例會的心情都像是去參加考試,每次周例會云計算產品團隊都能接回一堆問題。劉潔欣聽過最多的話是,“你這個問題解決不了我就用不了。”
![]()
騰訊云CVM團隊
服務外部客戶的時候,騰訊云也會遇到苛刻的要求,但內部客戶的要求往往更直接精確,他們在技術上積累深厚,衡量技術實現的標準又多又復雜,而且往往有理有據。
有一段時間,騰訊云音視頻團隊發現全民K歌海外版“WeSing”的量突然不動了,就找過去問原因。結果對方直接丟過來一個很大的文檔,“你們自己看看比得過人家競品嗎?”
文檔上面列滿了騰訊云音視頻和競品的各種質量對比,“進房耗時沒有人家好”,“清晰度沒有人家高”,“秒開率沒有人家高”。
原來“WeSing”同時用了騰訊云和競品的音視頻產品,兩邊對比后,發過來這么一個質量報告。
這個報告逼著音視頻團隊做了好幾個版本的迭代,每天跟著做對比、優化,一點點趕齊并且最終各項指標都明顯超過了競品,才慢慢重新完全贏回“WeSing”。
這些還都屬于技術上有比對、有參考的。對云團隊來說,更難的那部分是那些聞所未聞的要求。
2020年初,騰訊云高級副總裁、CTO王慧星帶著騰訊容器云團隊,從深圳跑到廣州跟微信開會,商量微信的整體上云。
剛見上面,微信架構部門就提了一個尖銳要求:云原生改造后所有架構都要做多地三園區容災,容器團隊最好能出個報告,看看到底哪些模塊能做好,哪些做不好。
跟著一起去開會的于廣游驚呆了。
他在2014年加入騰訊,經歷了騰訊最好的年份,然后又在2018年與所有技術人員一起,經歷了“非常痛苦的過程”,他對內部業務能用上TKE盼了很久,誰知道第一個坎兒就這么可怕。
多地三園區的意思是,要在不同的地方搭建完全相同的系統,某一個地區出現重大故障后,比如地震,可以無縫切到另一個地區。然后同一個城市下面,要有三個機房,三個機房的網絡和電力必須是獨立的。這樣三個機房中有一個出了故障,就不會對業務造成任何影響。
這個要求其實是微信真實踩過的坑。2013年,因為光纜被挖斷,微信曾斷線幾個小時。自此之后,多地三園區容災成了微信最基本的架構要求。
但于廣游沒見過這種要求,他的第一反應是,“有一種不被信任的感覺”,然后一種強烈的自卑升騰起來,“我們技術做得很差”。
后來于廣游遇到了更多類似“崩潰”的時刻。
PCG好不容易同意用TKE了,卻指定了特別多的參數,多到讓于廣游懷疑,他們根本就是不準備用這個容器,而是要在上面搭建自己的運營平臺;
IEG說有他們有很多老舊業務,如果要遷到容器上,需要容器云這邊能幫他們做到固定IP。但云原生的特點就是不讓容器關心IP,這是容器技術之所以輕便的原因。
最初的一段時間里,于廣游經常痛苦地思考,他們是不是根本就不想上云?
但是跟云計算產品中心的劉潔欣一樣,他們很快發現,這些看似苛刻的要求,最終幫騰訊云長出了更強壯的肌肉,成為服務外部客戶時的新能力。
“我們的客戶越來越專業了,近年來提的需求的標準也越來越高了”,劉潔欣舉了一個例子,“2019年那個時候,只有自研業務會去關注穩定性怎么樣,從2020年底到2021年,漸漸地很多客戶也會問,’你這個服務器是不是飽和的’,就像這些比較基本的去確保穩定性的問題。”
音視頻團隊的技術專家一邊咬牙切齒:“私下說,我們挺‘煩’他們的,因為他們要求太高了,稍微有一個網絡波動或者稍微有一臺機器死機了,他們都會發現。”
一邊又十分傲嬌:“但是從另外一個角度來說,我們也挺感謝他們的。因為如果不是內部的客戶這么細致,他們的系統做得這么健全,他們對用戶這么負責任,我們的產品也不會提升這么快。”
于廣游現在心滿意足。他覺得自己像上帝選中的人,“我既有內部客戶去背書,也能夠打磨我的產品去做技術創新”,自研上云提升了他對騰訊云以及騰訊的信心,“反正就特別有信心”。
打開部門墻
2020年10月底,在騰訊云覺得主機上云差不多終于算是闖關成功、甚至已經開始收到業務團隊送過來的感謝小蛋糕的時候,內網上突然爆出一個高熱匿名帖子:
“作為騰訊自研排面的《天涯明月刀手游》最近游戲體驗太差了吧,天天活動時間卡、掉線、排隊?”
一位天刀手游運營人員在次日回應這一匿名提問的時候,將問題核心指向服務器硬件的性能問題。
公司的游戲業務用云用出了事兒,全公司上下震動,都開始追問“到底怎么回事?”
騰訊云在服務自研業務上云的過程中,雖然遇到很多性能挑戰,但是基本上都是在前期測試的時候,就把一些性能標準對齊,同時也優化到業務所需的數值了。實際業務部署上去之后,在真實業務運行的過程中,基本上都是沒有遇到過問題的。
這是第一次用云跑實際業務的時候出現這么嚴重的問題。
由于承擔了游戲用戶在前端的一些很負面的反饋和壓力,天刀手游業務團隊的情緒已經處于極度焦躁,跟騰訊云的合作意愿也有所降低。
“我的數據在這,你們自己去看吧。”
騰訊云和相關團隊的研發、運維定位了兩天一夜,終于搞明白,這并不是一個復雜的技術故障。除受游戲火爆程度超過預期、以及MMORPG游戲多玩家聚集特點影響之外,雙方因為前期需求溝通不夠充分,最初在服務器的選型上沒有選到最優方案,應該部署計算型的云服務器,但是選了標準型,導致性能跟業務要求不匹配。
![]()
這件事再次證明,內部業務線之間不僅需要技術上的互通互補,也需要更全面更充分的交流溝通。
自研上云開始后,盧山和湯道生發現,上云過程中,公司的業務是強勢方,是甲方,作為承載上云任務的CSIG是乙方,雙方是一種不對等的溝通。
2019年末,自研上云推動將將一年的時候,TEG下屬的運營管理部被拉到自研上云項目小組,充當起溝通仲裁的角色。
運營管理部的成立有一個插曲。
2013年,騰訊的搜搜合并給王小川的搜狗。談完合并,劉熾平跟王小川聊天的時候,無意中問了一句:你們后臺用了多少服務器?
王小川說2000臺。回來之后劉熾平又問搜搜用了多少臺。
得到答案說4000臺。劉熾平回了一句很重的話:富二代。
當時騰訊每年運營成本增長飛快,每個業務都在飛奔向前,后臺資源浪費嚴重。因為搜狗搜搜合并的事情,劉熾平開始抓著各BG做成本優化,后來專門找了一批懂后臺技術的人,深入到各業務“從生產環節就盯著看”資源利用率是不是達標,技術實現的方案是不是合理。
這批人員后來就成了運營管理部,專門負責各業務線降本增效的目標和考核,而降本增效事實上也跟技術人員的晉級加薪直接掛鉤。
參與自研上云后,運營管理部給每個業務線定了每年上云的目標,但它更重要的角色,還是仲裁和溝通橋梁:一邊是它為各業務指定了唯一云服務商騰訊云,另一方面,它也需要把乙方的要求,壓給騰訊云,確保云團隊不怠慢業務方。
事實上,自研上云的大部分時間里,建立信任都是第一重要的事情。
技術骨干們像保險推銷員一樣,幾乎每周都要到各個BG跑一下,當作拜訪客戶,“最近怎么樣,有沒有問題,要不要測試一下”。如果業務團隊對云或者上云有任何的疑問,他們就幫業務搞一個培訓。也會偶爾問問,發布了新功能,要不要體驗一下,或者有什么技術問題需要解決。
“內部大家本身是有一個政策前提的,其次大家也是有一些信任的,等你多跑幾次,大家一塊解決幾次問題,然后做幾次技術交流、一塊吃幾頓飯,大家覺得騰訊云這幫人還不錯,真的是可以搞搞的。”
一個騰訊內部的技術專家總結上云經驗時說:“把內部的客戶也當外部的客戶來服務,怎么蹂躪我都行,我的目的就是幫你做好。”
在最難推進的容器統一上,騰訊云和TEG一起牽頭成立了K8S Oteam,TKE團隊和其他業務團隊的技術人員都屬于Oteam的一方。
“你可以把老的東西貢獻進來,我也可以把我的東西貢獻進來。”
云團隊希望能夠在跟技術小組的協作中表明心跡:TKE這個平臺的技術代碼是由大家共同貢獻的,統一容器化技術,絕對不是把業務原來的平臺全部廢掉,全部遷到TKE上,而是集大家之力,共建一個更好的容器。
自研上云期間,騰訊內部幾乎所有培訓平臺和學習平臺都被云團隊用上了,他們在內部找了很多講師,不僅有來自騰訊云的,也有來自各業務對上云有獨特理解的。這些內容有的做成了錄播課,有些是直播,還有一些直接以技術研討會的形式現場“selling”。
技術人員聚集的內網也成了最好的上云宣傳渠道。容器團隊定下內部任務:每天一篇容器相關的技術文章。為了醒目,團隊在每篇文章的“前面都加個小括號,寫上TKE團隊,后面才是標題”。
“逢山過山,逢海架橋,沒有什么捷徑”,作為看得見的最大受益者,2019年初做自研上云規劃時,騰訊云的管理層就定下這樣的策略,“性能不行就要把性能提升上來,成本不行就要把成本降下來,服務沒跟上就把服務細化到位”。
騰訊云不是孤軍作戰,各業務內,積極擁抱云原生的技術人員,是另一股沖破部門墻的強大力量。
“云原生的好處再清晰不過了,從軟件開發,到業務交付周期,到業務運營運維的難度,再到每個同學的職業發展、開發者的職業幸福感,云原生都是可以帶來好處的,這是大勢所趨。”
這股力量來自技術人員對技術本身的敏感,也來自騰訊基因中對危機的敏感。
“我們也反復跟業務團隊、產品團隊溝通,不優秀的架構、大量的生產環境缺陷,這些都是債務,你可以背負債務前行,就像企業可以貸款一樣的。但是債務過多,每一次前行、每一次迭代需要償還的利息都過重的時候,你就必須停下來償還債務了,不然它就拖垮你的業務往前奔跑。”
一些業務團隊在內部對云原生的布道甚至早于公司宣布自研上云。騰訊文檔后臺開發中心一位員工說,“我對現代工業化的軟件研發模式是非常擁抱的,在上云原生之前,就一直給團隊講工程化的理念、做研發文化上的建設,所以這一塊我是沖在前面的。”
時至今日,幾乎每一個參與自研上云的人,都可以輕松總結出諸多上云的好處,它讓騰訊云更強大了,業務線調度資源更從容了,技術人員的視野更寬廣了,公司內的交流前所未有頻繁了。
看不見的云
騰訊是一家從誕生之日起就有強烈危機感的公司。馬化騰很早就在一次采訪中說,“騰訊從來沒有哪一天可以高枕無憂,每一個時刻都可能是最危險的時刻。”
他認為這種心態不是“焦慮”,而是一種始終處在“昨天取得了多少成果”、“今天怎樣能點滴優化進步”、“明天如何應對挑戰危機”三者之間,這是一個反省復盤、重整上行的過程。
這種基因種在幾萬騰訊員工身上,在消費互聯網時代,這是騰訊的制勝秘訣。
騰訊大部分產品是先在內部反復測試,用好了、覺得爽了才放出去。這是騰訊在To C時代屢試屢驗的法寶,微信、王者榮耀,騰訊幾乎所有今天廣受歡迎的產品,都曾在內部被這么虐過、磨過。
騰訊云不是。騰訊云生于“外需”,長于“危機”。
2011年,騰訊走向全面開放之后,接進來的合作伙伴一進來就被QQ巨大的流量沖垮了。
QQ的技術架構經歷過多年高并發考驗,技術人員積累了豐富的經驗,但當時大部分合作伙伴沒有這個能力,甚至雙方當時眼中的高并發都相差著好幾個數量級。
“要把半條命交給合伙伙伴”,馬化騰曾經這么向外承諾,那么合作伙伴需要幫助的時候,騰訊也必須下場拉一把,于是就有了騰訊云。
然而過去大獲成功的賽馬和煙囪,今天已經把騰訊內部分割成若干條毫不相關的領地——這種封閉和私有,與云的開放和共享格格不入,換句話說,自研上云是騰訊迎接云時代的必經之路。
誰都知道大象要裝進冰箱了。問題是,大象裝進冰箱的這個過程,究竟是重復那些疾風驟雨,孤臣孽子的故事(這些故事無論在中國歷史上,還是在中國的商業競爭領域都不乏先例,而且至今被人津津樂道),還是用符合騰訊過去一貫價值觀的方式進行——由頂層發起設計,基層大討論,中層實施,部門合作,整個過程折沖妥協,但是步履不停。
騰訊自研業務上云的這場變革,證明了后一種方式是行得通的。騰訊的基因和價值觀,讓這場變革依然符合帕累托改進的定義,在沒有人變得更壞的情況下,事情整體變得更好了:公司完成了既定戰略,管理者降低了成本,拆掉了部門墻,新的技術平臺讓基層程序員也跟得上技術變革的潮流。
上云本身是一場純粹的技術革命,只有帕累托改進,能讓一家技術公司聚焦于技術變革本身,而不是在變革帶來的陣痛中迷失方向。
2011年,貝佐斯在股東大會上向人們介紹AWS的時候說,“最激進、最具變革性的發明通常是那些讓其他人得以發揮他們的創造力——追尋其夢想——的技術。”
差不多同一時間,馬化騰在分享對中國互聯網的8點看法中,把“云是未來社會的形態”作為第8點的內容。他說的云是指社會資源的聚合方式:平時以水分子形態存在,條件成熟、需要整合的時候,就聚合成云,任務完成又消散而去。
去年五一前后,核心服務差不多已經完成上云的時候,一個BG的項目小組在江西武功山組織了一次徒步爬山,當所有人爬到山頂后,云出現在他們腳下50米、100米的地方。那些后臺技術人員激動了,紛紛發朋友圈:“我們是真上云團隊”。
算法的盡頭,規則由誰制定?
潘石屹的兩次挫敗
沒有出街的海報
含著金湯勺出生的渤海銀行
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.