前言
隨著游戲市場的火爆,游戲行業(yè)逐漸向精品化、IP 化、多樣化的格局邁進,這也對游戲開發(fā)者提出了更高的要求。如何保證游戲性能穩(wěn)定,為玩家提供流暢的開黑體驗?這個雙11,準備嘗試用下華為云的服務(wù),沉浸式感受游戲云端部署解決方案的強大。
1、游戲架構(gòu)介紹
1.1服務(wù)器架構(gòu)
不同的公司有不同的游戲服務(wù)器架構(gòu),所以部署的具體細節(jié)大多不相同,但是基本的部署準備還是一樣的,先看下我們的游戲架構(gòu),方便讀者朋友了解后續(xù)的準備工作。
1.1.1服務(wù)器角色具體介紹
Client:游戲客戶端。
Gate:網(wǎng)關(guān)服,這里不承載游戲的鏈接,僅僅做游戲服務(wù)器的地址發(fā)放,玩家從gate服獲取正式游戲服的ip和端口。
Game:玩家主要在的游戲服務(wù)器只有一個。
Room:房間服,玩家匹配進入戰(zhàn)斗后將進入戰(zhàn)斗服,如果戰(zhàn)斗多可以做動態(tài)擴展。
Gm:后臺管理服務(wù)器,可以做活動的發(fā)布或者管理玩家數(shù)據(jù)。
Redis:主要用來做緩存,避免數(shù)據(jù)庫的頻繁訪問壓力。
Mysql:主要用來做數(shù)據(jù)的持久化。
1.1.2玩家數(shù)據(jù)流
玩家(client)通過http方式訪問gate服務(wù)器,獲取game服務(wù)的ip和端口。
client通過拿到的ip和端口直連game服務(wù)器,這樣玩家就登錄進了服務(wù)器。
當玩家操作角色進行匹配戰(zhàn)斗的時候,匹配成功后會將需要的數(shù)據(jù)傳入room服務(wù)器,所有的戰(zhàn)斗指令也會被傳入room服務(wù)。
當玩家需要查詢數(shù)據(jù)時,比如想獲得背包,game服會先像redis查詢,如果數(shù)據(jù)不存在,則像mysql查詢,查詢到數(shù)據(jù)后會存入緩存。
當玩家角色數(shù)據(jù)發(fā)生變化時,比如獲得了新的道具,這個時候需要操作數(shù)據(jù)庫,game服務(wù)器會先更新數(shù)據(jù)庫然后更新緩存。
當發(fā)布活動和修改玩家數(shù)據(jù)的時候使用gm,通過發(fā)布指令到game服。
1.1.3服務(wù)間交互協(xié)議
http協(xié)議:主要發(fā)生在訪問場景比較少的地方,client和gate,game和Gm之間。
dubbo協(xié)議:主要使用在內(nèi)部服務(wù)器之間交互數(shù)據(jù),簡單直接,像操作本地方法一樣。
Webscoket:主要用在client和game之間,因為這是一個網(wǎng)頁游戲的服務(wù)器,所以使用了websocket。
1.2部署方式
這里使用docker的方式,原因有幾點:
標準化應(yīng)用發(fā)布,避免環(huán)境帶來的問題。
節(jié)約時間,方便快速部署和啟動。
團隊同學(xué)比較熟悉,降低犯錯的可能性。
2、部署準備
2.1環(huán)境準備
2.1.1機器準備
對服務(wù)器的配置做了一個表統(tǒng)計,準備好服務(wù)器就好,下表是參考華為云官網(wǎng)。
注:具體價格實際以官網(wǎng)價為準
2.1.2解決方案構(gòu)成
·彈性云服務(wù)器ECS:是一種云上可隨時自助獲取、可彈性伸縮的計算服務(wù),幫助打造安全、可靠、靈活、高效的應(yīng)用環(huán)境。
·彈性負載均衡ELB:將訪問流量自動分發(fā)到多臺云服務(wù)器,擴展應(yīng)用系統(tǒng)對外的服務(wù)能力,實現(xiàn)更高水平的應(yīng)用容錯。
·云數(shù)據(jù)庫 RDS for MySQL:擁有即開即用、穩(wěn)定可靠、安全運行、彈性伸縮、輕松管理、經(jīng)濟實用等特點,讓客戶更加專注業(yè)務(wù)發(fā)展。
·分布式緩存服務(wù)Redis版:業(yè)界首個支持Arm和x86雙架構(gòu)的Redis云服務(wù),支持雙機熱備的HA架構(gòu),提供單機、主備、Proxy集群、Cluster集群、讀寫分離實例類型,滿足高讀寫性能場景及彈性變配的業(yè)務(wù)需求。
·云日志服務(wù) LTS:提供一站式日志采集、秒級搜索、海量存儲、結(jié)構(gòu)化處理、轉(zhuǎn)儲和可視化圖表等功能,滿足應(yīng)用運維、網(wǎng)絡(luò)日志可視化分析、等保合規(guī)和運營分析等應(yīng)用場景。
·DDoS防護 AAD:提供全球化服務(wù),以應(yīng)對DDoS攻擊挑戰(zhàn),可提供毫秒級攻擊響應(yīng)、多維度行為分析及機器學(xué)習(xí)、防御策略自動調(diào)優(yōu)、精確識別各種復(fù)雜DDoS攻擊,以保護您的業(yè)務(wù)連續(xù)性。
·彈性公網(wǎng)IP EIP:彈性公網(wǎng)IP(Elastic IP)提供獨立的公網(wǎng)IP資源,包括公網(wǎng)IP地址與公網(wǎng)出口帶寬服務(wù)??梢耘c彈性云服務(wù)器、裸金屬服務(wù)器、虛擬IP、彈性負載均衡、NAT網(wǎng)關(guān)等資源靈活地綁定及解綁,提供訪問公網(wǎng)和被公網(wǎng)訪問能力。擁有多種靈活的計費方式,滿足不同業(yè)務(wù)場景訴求
·文檔數(shù)據(jù)庫服務(wù)DDS:文檔數(shù)據(jù)庫DDS兼容MongoDB協(xié)議,在華為云高性能、高可用、高安全、可彈性伸縮的基礎(chǔ)上,提供了一鍵部署,彈性擴容,容災(zāi),備份,恢復(fù),監(jiān)控等服務(wù)能力。目前支持分片集群(Sharding)、副本集(ReplicaSet)和單節(jié)點(Single)三種部署架構(gòu)。
2.2鏡像準備
鏡像的準備打包推送到私有倉庫,具體的方法可以使用一些插件,也可以使用Jenkins,或者手動推送,無論哪種方式,這里準備下可能需要用到的手動命令。
2.2.1安裝docker服務(wù)
2.2.2打包鏡像
將jar包拷貝到和dockerfile相同目錄下,執(zhí)行下面命令,打包鏡像。
2.2.3將鏡像打包為本地文件
鏡像導(dǎo)出為壓縮包,方便傳輸。
2.2.4解包鏡像
登錄到服務(wù)器之后,將上面的文件拷貝到本機,使用下面的命令將鏡像導(dǎo)入到當前機器;
2.3部署腳本
注:上述是開發(fā)環(huán)境,環(huán)境變量有些是默認,在正式環(huán)境部署時候需要動態(tài)調(diào)整。
2.4注意點
gate服務(wù)器需要開通公網(wǎng)ip。
excel配置文件要提前規(guī)劃,在docker腳本中掛載。
docker掛載的數(shù)據(jù)目錄和日志目錄需要提前規(guī)劃。
每個服務(wù)器內(nèi)部的端口映射要提前規(guī)劃。
環(huán)境變量需要在腳本中修改,包括mysql和redis數(shù)據(jù)庫地址,需要鏈接的服務(wù)器ip和端口,以及相關(guān)的服務(wù)器配置等。
3、正式部署
3.1環(huán)境調(diào)研
游戲痛點:
新游首發(fā)、海量玩家在線,高并發(fā)訪問擴容不及時;
網(wǎng)絡(luò)時延高,游戲卡頓、玩家掉線;
自建周期長成本高,無法彈性伸縮。
大多游戲服務(wù)器屬于計算密集型的,所以游戲服務(wù)器云廠商選擇核心點有以下幾條:
資源擴容能力,能及時擴容,根據(jù)需求靈活購買資源,實現(xiàn)動態(tài)擴展、成本優(yōu)化,支持游戲開服、擴服、并服等場景的業(yè)務(wù)運行。
計算能力卓越,同類型ECS高于友商15%,PPS領(lǐng)先;容器快速發(fā)放,性能對比開源高20%,BMS可5分鐘發(fā)放。
安全防御,華為云提供了單線路T級DDoS高防IP服務(wù)以及百萬QPS級CC防護,基于黑客攻擊機器學(xué)習(xí)、業(yè)務(wù)風(fēng)控大數(shù)據(jù)智能隔離等AI能力,保障中手游游戲長期安全運行。
簡化云上運維工作,平臺為游戲客戶提供7x24小時服務(wù),專項保障、專家支持,確保重大活動業(yè)務(wù)穩(wěn)定。不僅能夠?qū)崿F(xiàn)快速部署,而且華為云云游戲管理服務(wù)平臺可對游戲內(nèi)容、游戲使用時長進行管控,所有云游戲運營商客戶均可快速接入華為云云游戲管理服務(wù)平臺,獲得全套自動化部署環(huán)境;還可通過游戲開發(fā)及運營一體化,確保在用戶實時在線的場景下即可完成游戲優(yōu)化和體驗升級,讓產(chǎn)品整體交付效率提升。
資費,好用且便宜是每個公司的追求,降本增效,多種計費模式,起步預(yù)算低,按需使用,用多少付多少,有效緩解企業(yè)初創(chuàng)資金壓力,更省錢。
總結(jié):華為云游戲云端部署解決方案,提供覆蓋全球的云基礎(chǔ)設(shè)施,支撐千萬級玩家同時在線穩(wěn)定運行,助力游戲企業(yè)打造精品化游戲,保障游戲彈性部署和無憂運維。
3.2套餐購買
下面是在官網(wǎng)套餐截圖,可以作為參考配置,等到正式生產(chǎn)環(huán)境的時候根據(jù)資源動態(tài)配置。
注:點擊可看大圖
3.3華為云核心優(yōu)勢匯總
數(shù)據(jù)庫能力:高并發(fā)場景,性能穩(wěn)定性優(yōu)于友商Mysql主備切換效率優(yōu)于友商。
海外區(qū)域亞太覆蓋:華為網(wǎng)絡(luò)質(zhì)量(時延和丟包)總體優(yōu)于友商(除日韓、越南、臺灣)。
計算能力:ECS——同類型ECS高于友商15%,PPS領(lǐng)先;容器——快速發(fā)放,性能對比開源高20%。
網(wǎng)絡(luò)能力:內(nèi)網(wǎng)帶寬轉(zhuǎn)發(fā)效率最高,ELB億級并發(fā)。
安全防護:華為云打造租戶隔離的安全平臺,并提供完善的安全服務(wù)保障業(yè)務(wù)和數(shù)據(jù)安全,為您的游戲保駕護航。
極簡運維:云上運維工作,平臺為游戲客戶提供7x24小時服務(wù),專項保障、專家支持,確保重大活動業(yè)務(wù)穩(wěn)定。
高數(shù)據(jù)可靠性:ECS服務(wù)通過商業(yè)和技術(shù)上的合理努力,承諾單實例維度每服務(wù)周期服務(wù)可用率不低于99.975%;單區(qū)域多可用區(qū)維度每服務(wù)周期服務(wù)可用率不低于99.995%;基于分布式架構(gòu)的、可彈性擴展的虛擬塊存儲服務(wù),具有高數(shù)據(jù)可靠性,高I/O吞吐能力,能夠保證任何一個副本故障時快速進行數(shù)據(jù)遷移恢復(fù),避免單一硬件故障造成數(shù)據(jù)丟失。
3.4機器環(huán)境準備
3.4.1安裝docker
遠程登錄到機器之后,切換到root用戶,執(zhí)行下面的命令,安裝docker環(huán)境
3.4.2拷貝文件到目標機器
文件列表如下:
鏡像文件,根據(jù)2.2中相關(guān)命令,拷貝到本地,如果用私有倉庫,則不需要執(zhí)行此步驟。
拷貝配置文件到機器,將所有的excel配置文件拷貝到機器,并在啟動腳本中配置掛載
啟動腳本,在規(guī)劃的目錄下創(chuàng)建并修改啟動腳本,設(shè)置相應(yīng)的參數(shù)。
3.4.3腳本執(zhí)行
在所有的文件都準備好之后,切換到腳本所在目錄,可以直接啟動腳本,下面以game為例
3.4.4驗證服務(wù)器正常
首先查看所有服務(wù)器的日志是否有報錯異常,然后使用特殊賬號進行登錄,驗證服務(wù)器功能正常
驗證點:
可以正常登錄
可以匹配戰(zhàn)斗
http接口正常
服務(wù)器操作正常
主要業(yè)務(wù)邏輯正常
驗證以上邏輯后通知測試同學(xué)進行功能測試。
3.4.5開服
待測試同學(xué)測試通過后,通過gm設(shè)置服務(wù)器狀態(tài)為開服狀態(tài),部署流程結(jié)束。
4、總結(jié)
九層之臺,起于壘土。華為云在游戲領(lǐng)域的發(fā)力,并非一日之計。
好的云服務(wù)廠商可以讓事情更簡單、更容易,華為云值得作為首選。
華為云游戲云端部署解決方案,提供覆蓋全球的云基礎(chǔ)設(shè)施,支撐百萬級玩家同時在線穩(wěn)定運行,結(jié)合云上運維運營,助力游戲企業(yè)實現(xiàn)業(yè)務(wù)的快速上線和彈性擴展,有效應(yīng)對游戲的突發(fā)性需求和游戲企業(yè)出海發(fā)展需求。
目前華為云雙11營銷季正在進行中,眾多云上優(yōu)選的產(chǎn)品及爆款解決方案誠意滿滿,即日起至11月30日,登錄華為云官網(wǎng)可享10000元上云禮包,更有認證付費抽獎、服務(wù)支持計劃等福利玩法,全面助力中小企業(yè)高效上云。機不可失時不再來,感興趣的小伙伴快去看看吧!
- 蜜度索驥:以跨模態(tài)檢索技術(shù)助力“企宣”向上生長
- 后人工智能時代:2025年,在紛擾中重塑數(shù)據(jù)、洞察和行動
- 2025年展望:人工智能推動IT整合
- 量子計算:商業(yè)世界的新前沿與設(shè)計思維的融合
- IDC:三季度全球以太網(wǎng)交換機收入同比下降7.9%、環(huán)比增長6.6%
- Fortinet李宏凱:2025年在中國大陸啟動SASE PoP節(jié)點部署 助力企業(yè)出海
- Fortinet李宏凱:2024年Fortinet全球客戶已超80萬
- 央國企采購管理升級,合合信息旗下啟信慧眼以科技破局難點
- Apache Struts重大漏洞被黑客利用,遠程代碼執(zhí)行風(fēng)險加劇
- Crunchbase:2024年AI網(wǎng)絡(luò)安全行業(yè)風(fēng)險投資超過26億美元
- 調(diào)查報告:AI與云重塑IT格局,77%的IT領(lǐng)導(dǎo)者視網(wǎng)絡(luò)安全為首要挑戰(zhàn)
免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準確性及可靠性,但不保證有關(guān)資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負任何法律責(zé)任。任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應(yīng)及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。