在2023年的qcon北京大會上,infoq的編輯對人人網產品技術高階總監黃晶進行了採訪,其中他談到了關於人人網從校內到現在所做的架構上的轉變,還談到了人人網建立並使用的兩個開源專案。
黃晶,清華大學計算機系碩士,曾在天人互動遊戲公司、空中網、千橡互動任職,現任千橡互動集團人人網產品技術高階總監,負責人人網產品規劃和研發。投身 web2.0和sns事業,秉承以使用者價值為核心的理念,推崇以簡約架構取得最大收益的技術路線,積極推動網際網路開放平台和開源專案的發展和應用,帶領人人網產品技術團隊,實現人人網的穩健高速發展。
黃晶老師你好。
infoq:大家都知道,原來人人網的名字叫校內,而現在叫人人,從最早的校內到現在的人人網,在這個不斷進展的過程中,您在架構上做了哪些改進呢?
黃:因為校內的發展過程非常迅速,幾年之內翻了好多倍,它的技術架構也隨著這個需求也有很大的變化。
在開始的時候,校內是使用比較簡單、比較典型的技術方案來實現的乙個架構。然後,隨著規模的擴大和一些特殊的應用的場景的需要,我們逐步地、越來越多地用到了自己開發的一些系統,以及自己開發的一些框架。比如說我們有一套非常完善、非常龐大而完整的中間層系統和架構,還有使用者處理的系統,這些都完全是由我們自己開發的,而沒有其它可以借鑑的一些產品。這樣的系統可能我們在幾年的積累下,已經逐步完善。像儲存,以前用的是簡單的資料,分布式儲存。而對於web開發的框架我們也根據自己產品的需要,開發了一套自己特有的web開發框架,其中有一些系統,我們考慮是為更多人所用,大家一起來完善它,就考慮把一些系統開源化,讓大家一塊把這些做得更好。
infoq:應該說人人網的技術實力方面應該是非常強,而且對技術方面的投入也非常大的。
黃:我們在技術方面做了非常大的投入,我們公司的文化叫做極致文化,就是特別讚賞那種鑽在技術裡面,不考慮其它事情,想把技術做到極致的那種人。
infoq:您以及您帶領的團隊裡會有很多很多的這種人?
黃:對,我們很多人都是那種每天鑽在技術裡面非常陶醉的那種人,我們覺得如果想把sns這個事情做好的話,是需要很多這樣的人。
infoq:都是非常快樂的程式設計師,我想問一下咱們現在的架構您覺得裡面做的比較完美,比較滿意的是什麼地方?
黃:我覺得我們有乙個比較獨特的、自己開發的中間層系統,這個系統完成了大量的後端伺服器需要處理的一些工作,包括快取,包括一些複雜的業務處理,包括搜尋也整合在裡面。這些系統都放在我們這樣乙個中間層系統裡面,這個中間層系統本身具有高可用性,可以靈活的拓展,增加服務,增加相對性的服務,可以用很少的**量來完成裡面的很多的分布式管理和記憶體方面的分配管理,這些都做了很長時間的積累,這個可能是我們比較大的技術方面的積累。
infoq:那咱們維護工作平時復不複雜?
黃:維護工作還是有一定複雜度,因為我們的業務是不能中斷的,我們經常有很多的維護工作,即使是你的系統設計可以在高可用性下切換,你也必須在低負載的情況下去切換,那樣風險比較低,我們很多的工作就是,除了開發之外,還經常半夜裡要更新系統,要切換伺服器各個方面的管理工作,其實還是比較辛苦。如果把這件事做成自動化有很大的風險,因為裡面有很多會誤判的情況下會有一些振盪,這個風險很大,我們還是半自動的乙個過程。
infoq:對咱們的使用者特別負責的態度。
黃:我們工程師很多都是夜貓子。
infoq:那您覺得現在的系統裡面會對有一些方面還不是很滿意,需要改進的地方呢?
黃:我覺得我們現在是有一些地方我們的系統還需要完善,比如說在某一些資料一致性方面,我們在不同的地方之間還是不能保持很高的資料一致性,這樣對以後變成多個機房工作映象同步關係的時候,可能會有一些阻礙。我們將來的發展方向應該是會擁有多個核心節點的機房,我們要解決這個問題,首先就要解決資料一致性性,也就是資料同步方面的一些問題,這需要乙個比較好的分布式系統的設計去完成。
黃:因為考慮如果是乙個地方,現在**比較頻繁,如果是**或者是火災的話,你的核心節點不能只依賴乙個地區。
infoq:我剛才跟那個黃晶老師交流的時候,黃晶老師提到,最近在做兩個開源專案,這兩個開源專案您給我們簡單介紹一下吧?
infoq:您希望把你們寶貴的經驗,寶貴的知識和全國甚至全世界的程式設計師一起來分享。
infoq:我想知道咱們的key-value系統,是基於什麼樣的需求呢?人人網和facebook,在什麼地方差別特別大,導致咱們覺得他們那種解決方案不適合人人網呢?
黃:對於分布式系統,有乙個理論叫cap理論,有的系統可能在c和p方面做的比較好,這cap三個,乙個是高可用性,乙個是節點容錯性,乙個是一致性,很難做到三個同時滿足的,必須有折中。有的時候,有些系統在不同的取捨方面會有一些區別,這個區別就導致可能有時並不是非常適合,我們自己也希望能夠對乙個系統做到足夠熟悉,在需要的情況下,我們可以直接去改造它的核心部分。基於這些考慮,我們就根據自己的需求,同時去學習別人的思想,做了乙個新的系統。
infoq:在cap這三個中間,做了針對人人網的最好的平衡。
黃:對。
infoq:好的,感謝黃晶老師接受我們的採訪。謝謝!
黃:謝謝。
黃晶談人人網架構
在2010年的qcon北京大會上,infoq的編輯對人人網產品技術高階總監黃晶進行了採訪,其中他談到了關於人人網從校內到現在所做的架構上的轉變,還談到了人人網建立並使用的兩個開源專案。黃晶,清華大學計算機系碩士,曾在天人互動遊戲公司 空中網 千橡互動任職,現任千橡互動集團人人網產品技術高階總監,負責...
黃渤談春晚工裝服 本土設計並非名牌
知名男演員黃渤登上春晚舞台後,其演出服受到不少的關注,調侃道黃渤 把愛馬仕穿出了藍翔技校的感覺 近日,黃渤接受 採訪被問及該話題,回應稱,這身演出服其實是國內設計師專門為春晚演出製作的,是比較時尚的一款工裝褲。近日,黃渤接受新華社採訪,被問及春晚的演出服,有調侃黃渤是把愛馬仕穿出了藍翔技校的感覺。對...
談巨集晶STC微控制器的ISP功能 (晶元保密性)轉
就想辦法著手研究了一下,就寫了一段 在8051核心的64k空間依次讀取所有的資料,最後得到了乙個2k多一點的isp所用的bin檔案,反彙編得到彙編檔案,就在那花功夫細細地看了看實現方法,注意 如果被巨集晶科技的員工看到這份協議,請見諒。因為錯誤也有你們的一半,是你們激發我去開發這份協議得,詳見文件後...