起航,大數據時代的承載者_風聞
闪德资讯-闪德资讯,您存储事业的参谋军2019-12-04 19:32
近幾年來,各行各業百花齊放,例如電競的產生,現在網絡遊戲行業是一片火熱,但是這個火熱的背後少不了存儲的承載。
舉個例子,就拿王者榮耀來説,這是當代年輕人必玩的兩個遊戲之一(另一個是和平精英),它是屬於MOBA類手遊,以競技對戰為主,玩家之間可進行1V1,3V3,5V5等多種方式的PVP對戰,還可以參加遊戲的冒險模式,還有人機闖關模式,在滿足條件後可以參加遊戲排位賽等一系列讓用户非常有體驗感的操作安排,讓人樂在其中,欲罷不能,所以它有個外號,叫“王者農藥”。

火爆好玩的遊戲意味着在線人數也多。王者榮耀平均每天在線人數大約將近300萬人,而日活躍量高達750萬人,這就意味着王者榮耀的服務器需要同時支持這麼多人進行對戰。
相信玩過的朋友都知道,在進入遊戲時,需要選擇遊戲大區,QQ區還是微信區,IOS端,還是安卓端。
為什麼有這樣的分類?
以前我們的遊戲,像第一代卡牌類休閒遊戲,是屬於弱交互遊戲,那麼對流量的需求不是很大。
再到第二代網遊服務器,因為電腦與網絡的普及使得我們越來越多的人接觸到了互聯網,互聯網遊戲也因此得到了發展,而此時的服務器架構主要採用還是分服模型。
分服雖然可以解決服務器擴展的瓶頸,但單台服務器在以前單線程的方式來運行,沒辦法充分利用服務器資源,遇到跨服戰便無法進行。
所以均衡是很重要的,比如説,你放技能的及時響應,排位對戰時一堆技能放出,怎麼每個都準確反饋,不卡帶,跨服時的對戰等等。為了讓服務器儘量變得均衡,進入遊戲選擇區服時,基本每個區都有200個以上的具體服務器,那麼這就使得服務器變得更加均衡,可以配合更多的操作,讓遊戲體驗順暢無阻。
服務你們的它,你瞭解多少?
遊戲上線後,服務器基本不能停,這將是一個長期運行的過程,並且它還要服務多個不定時,不定點的網絡請求。所以要非常關注穩定性和性能。如果需要多個協作來提高承載能力,那麼還要關注部署和擴容的便利性;同時,還需要考慮如何實現某種程度容災需求,所以看似玩的很爽的遊戲背後,是不為人知的辛勤付出,你瞭解多少呢?
首先服務器有三大結構:邏輯架構、通信模式、內存架構。
邏輯架構呢,就設計對於CPU調度的方案。設計方便同步、異步等不同的編程模型,主要提高服務器的穩定性和承載量。像是分區分服,世界服等這些方式,其實就是將相同功能模塊劃分到不同的服務器來處理。

通信模式呢,就是決定使用何種方式通訊。根據遊戲類型不同,採用不同的通信模式,比如http,tcp,udp等,這個大家打開瀏覽器多關注網址開頭就知道了。
最後是內存架構:主要決定服務器如何使用內存,以最大化利用服務器端內存來提高承載量,降低服務延遲。
功能約束,是架構設計決定性因素。基於遊戲領域的功能特徵,對服務器端系統來説,有以下幾個特殊的需求:
1,對於遊戲數據和玩家數據的存儲
2,對玩家數據進行數據廣播和同步
3,把一部分遊戲邏輯在服務器上運算,做好驗證,防止外掛。
玩遊戲的都知道,玩遊戲會產生數據,比如存檔,還有實時數據,也就是你打遊戲那些記錄,成就等,這些數據可以存放於同一個集羣中,可以不用再和遊戲服務器綁定在一起,登錄的時候可以根據你的ID去存儲集羣中提取出來,直接繼續遊戲。

不過這種設計有一個最需要解決的問題,那就是遊戲服務器系統的擴容和容災。
擴容就是加入新的服務器,容災就是減掉失效的服務器。
這兩個操作都在無狀態的服務器進程上操作,都只是更新一下連接配置表,然後重啓一下。
但是,由於遊戲存在大量的狀態,包括運行時內存中的狀態,以及持久化的存儲狀態,這就讓擴容和容災需要更多的處理才能成功。
最普通的情況下,在擴容和容災的時候,首先需要通知所有玩家下線,把內存中的狀態數據寫入持久化數據進程;然後根據需要的配置,把持久化數據重新“搬遷”到新的變化後的服務器上。

如果一個遊戲有幾千萬用户,這樣的數據搬遷將會耗時非常長,玩家也被迫等待很長的時間才能重新登錄遊戲。所以在這種模型下,對於數據存儲的設計是最關鍵的地方。
針對上面所説的的需求特徵,對於服務器,主要關注的還是對電腦內存和CPU的使用,希望可以在特定業務代碼下,能儘量滿足承載量和響應延遲的需求。最基本的做法就是“空間換時間”,用各種緩存的方式來求得CPU和內存空間上的平衡。
所以這就是遊戲更新為什麼很花時間更花內存的原因。
離不開的存儲
其實服務器內存也是內存,它與普通PC機內存在外觀和結構上沒有什麼明顯實質性的區別,主要是在內存上引入了一些新的特有的技術,如ECC、ChipKill、熱插拔技術等,具有極高的穩定性和糾錯性能。

服務器內存和PC機內存一樣,內存的頻率可以用工作頻率和等效頻率兩種方式表示,工作頻率是內存顆粒實際的工作頻率,但是由於DDR內存可以在脈衝的上升和下降沿都傳輸數據,因此傳輸數據的等效頻率是工作頻率的兩倍。
既然服務器由內存承載,那麼它的市場又是怎樣的?
一般來説服務器是存在3年左右的更新週期。2017跟2018年的服務器採購量分別是1020萬台、1180萬台,那麼它們更新節點就是2020和2021年。因為5G+AI智能的雙重技術的到來,存儲需求不斷增長,可以設想未來兩年的服務器需求將會非常樂觀,有機構預測2021年全球服務器出貨量將達到1300萬台。
根據相關數據顯示,服務器內存市場成長最高,有望在未來三到五年內超過行動式內存市場。

根據IDC數據,2019Q2服務器行業前5大廠商集中度由54.6%上升至56.2%,市場領先地位繼續鞏固。雖然整體增速下滑,但中國廠商浪潮等逆勢上升表現亮眼,兩家中國廠商的份額從上年同期的11.7%增長到13.3%,其中浪潮商用機器,營收同比增長32.3%,全球市佔率達到7.2%,較2018年同期提升2.4pct。


從全球廠商的銷售額增速來看,浪潮本季度增速高達32.3%,繼續在全球領跑,而且是前5大廠商中唯一實現正增長;IBM廠商下滑27.4%,低於行業11.0個百分點,反映出了超大規模雲服務廠商需求的疲弱,那麼內存市場又是怎樣呢?

從整體來看,全球2020年內存市場成長預估僅為12.2%,相較於2019年的19.0%有很大的下降。儘管如此,服務器內存市場的增長依舊可觀,預測該部分在2020年的同比增長達到20.1%。佔整個內存市場的比例從2019年的32.6%增長到2020年的34.9%。

從需求側分析,服務器還在持續增長。

到2020年,全球內存需求將增長17.5%,其中基於智能手機與服務器的領域佔比最大。兩者相加幾乎佔到7成市場。

再看產業營收預估,2019年,內存廠高庫存水位難以紓解,第三季度日韓問題帶動拉貨力道,第四季度服務器需求提成,讓庫存逐步下降。到了2020年,內存廠產出保守,獲利是他們的主要目標,將帶動市場的供需平衡。
由此看得出,服務器的需求增加以後,內存的需求也隨着上漲,兩者互利共贏,帶動市場的供需節奏,預計在2020年會有更明顯的體現。