真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

游戲開發(fā)經(jīng)驗談(二):對戰(zhàn)類全球服游戲的設計與實現(xiàn)-創(chuàng)新互聯(lián)

上篇文章《游戲開發(fā)經(jīng)驗談(一):游戲架構里隱藏的五個坑及其應對方案》,我們主要講解了游戲架構設計當中隱藏的一些坑及其應對方案,錯過的小伙伴可以點擊鏈接回溯之前的內容。本期內容,將會重點介紹對戰(zhàn)類全球服游戲的設計思路與技術實現(xiàn)。

鹽池網(wǎng)站建設公司創(chuàng)新互聯(lián),鹽池網(wǎng)站設計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為鹽池千余家提供企業(yè)網(wǎng)站建設服務。企業(yè)網(wǎng)站搭建\外貿營銷網(wǎng)站建設要多少錢,請找那個售后服務好的鹽池做網(wǎng)站的公司定做!

對戰(zhàn)類游戲的設計思路

協(xié)議的選擇

游戲設計之初,需要決定選擇哪種協(xié)議來進行通訊。對于對戰(zhàn)類游戲來說,首先推薦的肯定是UDP。

盡管UDP對開發(fā)基礎有較高的要求,需要開發(fā)者自己實現(xiàn)傳輸成功檢驗、重傳以及可靠性保證等,但相對于低開發(fā)成本的TCP,UDP在效率和時效性上都有極大的優(yōu)勢,它可以根據(jù)業(yè)務特性進行短間隔重傳,或者直接發(fā)送復數(shù)包來提高弱聯(lián)網(wǎng)狀態(tài)的成功率。

游戲開發(fā)經(jīng)驗談(二):對戰(zhàn)類全球服游戲的設計與實現(xiàn)

此外,相比于UDP的低延時,TCP的重傳時間是秒級,對于對戰(zhàn)類游戲來說,TCP的重傳速度無疑會造成非常糟糕的玩家體驗,雖然有BBR一類的技術,但也僅僅只能實現(xiàn)更高效的帶寬利用,對于實際業(yè)務響應效率沒有特別大的提升。

當然,除了技術角度分析,公司的實際情況也是需要納入考慮的重要的一環(huán)??傮w來說,COC、KOA(阿瓦隆之王)等地圖類少交互的游戲用TCP是沒有問題的,而CR(皇室戰(zhàn)爭)、自由之戰(zhàn)、全民槍戰(zhàn)、槍林彈雨,這類MOBA、FPS等強聯(lián)網(wǎng)需求的對戰(zhàn)游戲,UDP基本是必備的。

同步機制

幀同步:快節(jié)奏、同時希望降低服務器不必要負載的對戰(zhàn)類手游,幀同步是不二的選擇。幀同步的好處是可以精減上傳信息,只是做一些簡單的數(shù)據(jù)匯總上報,需要的帶寬非常少。
狀態(tài)同步:安全性很高,但狀態(tài)同步需要的帶寬量遠大于幀同步,而全球服游戲本身面臨著非常嚴峻的全球網(wǎng)絡環(huán)境,甚至很多情況下需要專線來解決網(wǎng)絡問題,這時候,網(wǎng)絡開銷將是比較大的成本。
簡而言之,一句話:如果你想做全球服游戲,請務必學會幀同步。

最后,簡單說一下對戰(zhàn)游戲的幾點特性:1)因為采用UDP和幀同步,數(shù)據(jù)包交互包量巨大;2)玩家快照和幀數(shù)據(jù)保存需要高性能大容量的內存存儲;3)網(wǎng)絡穩(wěn)定要求高;4)架構主要以模塊化為主,有的甚至可以兩地三中心容災,需要敏捷部署。

總體來說,對戰(zhàn)類游戲對系統(tǒng)架構有較高的要求。而云平臺產(chǎn)品,正是為幫助用戶解決這些問題而存在的。

網(wǎng)絡架構設計

那么,我們是如何為對戰(zhàn)類強聯(lián)網(wǎng)用戶提供網(wǎng)絡支撐的呢?首先,在網(wǎng)絡質量方面,我們采用自建的BGP及自有AS號,直接和電信聯(lián)通移動等運營商進行路由對接。相比于找中間商,這種方式在網(wǎng)絡的覆蓋質量、故障容災能力以及高可用上,都有更好的保障。

游戲開發(fā)經(jīng)驗談(二):對戰(zhàn)類全球服游戲的設計與實現(xiàn)

此外,我們將機房和網(wǎng)絡進行了分離,網(wǎng)絡出口各自獨立,通過不同的物理路徑走到不同的出口POP點,這里的POP點就是UCloud自建BGP和運營商建立連接的地方,最底層是可用區(qū),也就是傳統(tǒng)意義上的機房。當用戶在UCloud平臺部署的時候,就是利用了可用區(qū)的架構。

這種方式可以將所有的機房資源池化并通過專線打通內網(wǎng),為用戶免費提供相同地區(qū)不同機房間的網(wǎng)絡互通,方便用戶實現(xiàn)跨機房高可用的容災架構,同時多POP點也可以規(guī)避物理路徑問題或者運營商本地城域網(wǎng)故障(比如北京本地)帶來的影響,保證機房出口的持續(xù)高可用。

基于UCloud云平臺的游戲架構示例

下圖是一個基于UCloud云平臺的全球服游戲架構,首先,數(shù)據(jù)存儲層直接使用了高可用數(shù)據(jù)庫和Redis來降低運維成本,并保證業(yè)務可用性;后端在原生產(chǎn)品的邏輯上,對諸如半同步等功能進行了自研強化,在不改變任何用戶使用習慣的情況下,強化數(shù)據(jù)一致性、安全性、以及查詢性能。

游戲開發(fā)經(jīng)驗談(二):對戰(zhàn)類全球服游戲的設計與實現(xiàn)

此外,服務器區(qū)域采用整體框架集群+高性能負載均衡的接入模式,TCP四層報文轉發(fā),保證大并發(fā)下的性能可靠;而對戰(zhàn)服務器采用了注冊機制,房間管理服務器為主從高可用,由于對戰(zhàn)采用了UDP+幀同步的模式,包量可能會達到5W-8W甚至更多,因此直接采用了網(wǎng)絡增強云主機來承載。

在全局層面,數(shù)據(jù)庫和負載均衡器都采用了UCloud跨可用區(qū)容災的高可用產(chǎn)品和集群,業(yè)務服務器在我們的D/E兩個可用區(qū)對半部署,保證業(yè)務的機房級容災能力。

根據(jù)對戰(zhàn)游戲的特性,簡單總結下對戰(zhàn)游戲架構設計需要注意的幾個點:1)服務集群化。如果要做全球化對戰(zhàn)游戲,服務器需要集群高可用,如果是滾服模式,運維成本以及玩家跨服對戰(zhàn)成本將會非常高;2)服務模塊化。功能拆分時便于管理擴容,并且大化利用效率節(jié)省成本;3)業(yè)務自動化。幫助降低運維成本,在業(yè)務突發(fā)的情況下能夠快速擴容提升敏捷性。

全球服技術實現(xiàn)

全球服游戲將與人斗的主旨放大化,隨著國戰(zhàn)以及其他國別特性玩法的加入,基于全球服的對戰(zhàn)游戲能夠很好地激發(fā)玩家的歸屬感,提升玩家對游戲的黏著度和對戰(zhàn)積極度。落實到技術層面,相比于分區(qū)對戰(zhàn)游戲,全球服對戰(zhàn)游戲的實現(xiàn)難度要高上許多,主要在于以下三點:

網(wǎng)絡: 對戰(zhàn)類游戲模式不同對于網(wǎng)絡性能的要求不同,但為了保證傳輸性能,普遍會選用UDP協(xié)議實現(xiàn)業(yè)務可靠傳輸;
代碼: 核心架構可能同分區(qū)的對戰(zhàn)游戲沒有特別大的區(qū)別,但是在網(wǎng)絡設計、部署架構模式、網(wǎng)絡延遲等情況下需要考慮更多;
架構: 不管是集中部署還是分布式部署,架構的本地承載量、模塊化設計都要考慮應對全球玩家涌入的問題。

網(wǎng)絡

我國實際出口的公網(wǎng)主要有電信163、聯(lián)通、移動以及電信CN2四大類,總帶寬方面電信是大的,聯(lián)通次之,移動最小。就實際利用率來說,電信163出口常年擁堵,可用率不足80%,聯(lián)通移動情況稍好,但是由于本身出口量較小,應對網(wǎng)絡波動的能力不容樂觀。

CN2是電信專門為企業(yè)級客戶開通的國際出口,這也是中國當前最優(yōu)的國際出口網(wǎng)絡,但即便是CN2也并非完全穩(wěn)定,根據(jù)監(jiān)控記錄顯示,CN2鏈路每月仍然會有幾次較長時間的抖動,如果正好趕上游戲大推依然會有風險。

最保險的方案就是使用專線,專線具有SLA和可用性保證,并具有高穩(wěn)定、低延遲、零丟包等特性,但是成本相對公網(wǎng)會高上許多。

UCloud在海外采用的同樣是自有BGP技術,并且基于BGP+海外專線,保證最優(yōu)的訪問質量,其基于路由的定位準確度遠高于CDN的智能DNS。

游戲開發(fā)經(jīng)驗談(二):對戰(zhàn)類全球服游戲的設計與實現(xiàn)

此外,在運維和產(chǎn)品保障方面,我們將國內的模式復制到了海外,并且根據(jù)不同的機房情況和地區(qū)特性進行了優(yōu)化,將海外的機房架構和云產(chǎn)品架構在全局上和國內同步,以保證客戶體驗的一致性和服務的標準性。

代碼

此前,我們接觸過一個用戶,他們希望獲得一個有保障的網(wǎng)絡優(yōu)化加速方案來實現(xiàn)全球服,并且要求整個加速過程對業(yè)務無感知無侵入。簡而言之,就是在不更改任何的代碼的前提下,實現(xiàn)網(wǎng)絡加速。為此我們進行了系列技術調研和方案設計,PathX方案由此誕生。

前期的設計實現(xiàn)上,我們針對三四層網(wǎng)絡轉發(fā)以及基層代理這兩種方式進行了深入調研,調研過程中發(fā)現(xiàn),采用基層代理的方式會中斷TCP連接,同時,在使用的過程中還會出現(xiàn)業(yè)務無法轉發(fā)的情況,也就是所謂的“假死”。通過對比,最終我們選擇了三四層網(wǎng)絡轉發(fā)的方案,并且做一個比較廣的協(xié)議支持架構。

游戲開發(fā)經(jīng)驗談(二):對戰(zhàn)類全球服游戲的設計與實現(xiàn)

后續(xù),我們也針對CR的UDP對戰(zhàn)需求進行了迭代,在原有的基礎上融合DPDK和高包量技術,設計了UDP+幀同步高包量業(yè)務的承載轉發(fā)模式。隨著全球服時代的到來,我們將這些特性迭代進PathX產(chǎn)品,如今已經(jīng)是2.0的版本了。

架構

全球服情況下,海量用戶數(shù)據(jù)需要集中的接入、處理和分析,而在大數(shù)據(jù)領域,Hadoop是當仁不讓、最經(jīng)濟的大數(shù)據(jù)解決方案,但是Hadoop的使用門檻非常高,需要至少7-8人的維護團隊。而相對使用簡單的的普通數(shù)據(jù)庫如MySQL集群等,在性能和性價比上都不是非常理想。

為了解決用戶的高性能大數(shù)據(jù)分析需求,我們研發(fā)了數(shù)據(jù)倉庫解決方案UDW,UDW基于PostgreSQL研發(fā),具有PB級別的高性能數(shù)據(jù)存儲能力,此外,我們根據(jù)用戶的不同需求區(qū)分了存儲密集型和計算密集型,可分別用于數(shù)據(jù)量大或者對計算實時性要求較高的場景。

游戲開發(fā)經(jīng)驗談(二):對戰(zhàn)類全球服游戲的設計與實現(xiàn)

下圖是一個比較標準的全球服游戲架構圖。首先,用戶在美國部署核心業(yè)務服務器,包括數(shù)據(jù)庫、玩家節(jié)點、大數(shù)據(jù)、登錄服等。然后通過全球加速方案,為玩家提供一個質量穩(wěn)定的游戲服務。有的用戶如FPS類的游戲廠商,會在海外額外部署一個小的微型節(jié)點,用來保證對玩家的最小延遲和穩(wěn)定性。

游戲開發(fā)經(jīng)驗談(二):對戰(zhàn)類全球服游戲的設計與實現(xiàn)

架構設計中,還有一個比較重要的點是關鍵幀的使用限制,關鍵幀和游戲預判會嚴重影響用戶對游戲的要求。比如用戶要求延遲控制在60毫秒以內,那么對于60毫秒以上延遲的地區(qū),游戲是無法覆蓋的,超過60毫秒的玩家就會直接掉線。

在部署全球服游戲的時候,除了要考慮網(wǎng)絡延遲對玩家的影響,玩家集中涌入對對戰(zhàn)的影響等問題之外,還要測算出符合游戲要求的核心節(jié)點、不同區(qū)域玩家的最佳訪問路徑、哪個區(qū)的玩家可以連接到哪里的服務器等等,這是問題都需要在游戲設計前期就規(guī)劃好。

全球服游戲設計的一些想法和建議

云商、研發(fā)、運維這三者雖然分工不同,但都是項目組不可或缺的重要組成。以我過往的經(jīng)驗,運維和研發(fā)之間在項目前期的交流通常都非常少,這樣就會導致出現(xiàn)故障時,大家經(jīng)常相互“甩鍋”,運維工程師覺得是代碼的問題,而開發(fā)則認為是運維做得不夠好,這對于游戲項目來說是百害而無一利的。

從項目的角度,建議云商、研發(fā)、運維這三者能夠做到互相深入合作,云商能夠針對游戲用戶的訴求,提供最合適的產(chǎn)品和解決方案;運維是保證整個游戲長遠穩(wěn)定運行的核心人員,業(yè)務如何做到高可用、如何能夠在后期便捷的進行維護,這些都是運維非常擅長的領域;而研發(fā)是整個項目能夠實現(xiàn)的基石,代碼的實現(xiàn)思路會很大程度上固化一個游戲的運維方式。

游戲開發(fā)經(jīng)驗談(二):對戰(zhàn)類全球服游戲的設計與實現(xiàn)

在項目建設前期,三方都不應局限于自己的領域,互相協(xié)作開放。在項目允許的情況下,研發(fā)設計框架時可以聯(lián)合運維、公有云的架構人員一同評估游戲的實現(xiàn)方式,盡量在前期考慮到系統(tǒng)的可用性、穩(wěn)定性以及抗壓性等問題,這樣才能從技術角度避免很多不必要的彎路或者錯漏,比如上篇文章所說的中心服單點問題,實現(xiàn)業(yè)務的長遠發(fā)展。

想要獲取更多技術和活動資訊,可掃關注“UCloud技術公告牌”微信公眾號;或搜索微信ID:ucloud_tech進行關注。

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。


網(wǎng)頁名稱:游戲開發(fā)經(jīng)驗談(二):對戰(zhàn)類全球服游戲的設計與實現(xiàn)-創(chuàng)新互聯(lián)
當前地址:http://weahome.cn/article/dscgsc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部