五月综合激情婷婷六月,日韩欧美国产一区不卡,他扒开我内裤强吻我下面视频 ,无套内射无矿码免费看黄,天天躁,日日躁,狠狠躁

新聞動態(tài)

游戲服務(wù)器如何實現(xiàn)全球同服

發(fā)布日期:2021-07-24 17:28 | 文章來源:阿里云

  【小Y提示】文章部分內(nèi)容源于互聯(lián)網(wǎng),僅作參考!如需咨詢“游戲服務(wù)器如何實現(xiàn)全球同服”等有關(guān)服務(wù)器、云主機(jī)租用、托管、配置、價格問題,請隨時咨詢YINGSOO客服,獲取專業(yè)解答!

  【爆款主機(jī)】美國CN2服務(wù)器 | 德國物理服務(wù)器 | 韓國高防服務(wù)器

  【精選內(nèi)容】香港大帶寬服務(wù)器租用全面解析!

游戲服務(wù)器如何實現(xiàn)全球同服

  剛從東家離職,得知之前設(shè)計的服務(wù)端架構(gòu)被阿里和本公司以及本公司推薦,看起來不怎么普及解決方案,本著開源精神分享一下思路吧。

  既然面對全球用戶,必然是要做到服務(wù)的動態(tài)拓展,自動化部署,歸根結(jié)底還是如何改造成分布式服務(wù)器,老話題了。

  服務(wù)器的不同業(yè)務(wù)分別在不同模塊運(yùn)行應(yīng)該是共識吧,要是所有業(yè)務(wù)堆在一起,無法讓核心業(yè)務(wù)實現(xiàn)分布式,也就失去全球服的意義。

  不同模塊的通訊協(xié)議定制,簡單說就不同業(yè)務(wù)分布在不同進(jìn)程,他們之間的通訊能在局域網(wǎng)范圍內(nèi)也能彼此連接。

  然后要做的是業(yè)務(wù)最大程度解耦。比如郵件業(yè)務(wù)壓力比較小,只需要一臺服務(wù)器就能滿足需求,而戰(zhàn)斗服務(wù)器在同樣量級需要兩臺服務(wù)器,如果這兩個業(yè)務(wù)放在一起就不太合理了。

  如此帶來的問題是,面對繁多的業(yè)務(wù)類型如何部署。我能想到的方案是所有服務(wù)都打包進(jìn)docker,啟動時加入環(huán)境變量來區(qū)分不同服務(wù)。

  關(guān)于服務(wù)發(fā)現(xiàn),有現(xiàn)成的開源方案consul+registrator,consul為核心,registrator監(jiān)聽docker.sock文件將新啟動的服務(wù)注冊到consul內(nèi),docker.sock內(nèi)有container啟動參數(shù),這樣獲取類型版本都能實現(xiàn)了,具體實現(xiàn)官方都有,這里就不介紹了。

  這樣通過consul就能獲得所有的服務(wù)類型以及每個服務(wù)類型下的所有地址和端口。

  解耦完業(yè)務(wù)部分以后,游戲存儲的分布式也有現(xiàn)成的解決方案,最新版本的redis已經(jīng)有cluster集群模式,這里需要在redis前端加一層代理用來計算key值的分布,隨著slot增加,redis會重新分配所有key,而訪問一個slot時,key在另一個slot會返回所在slot節(jié)點的地址,如果在業(yè)務(wù)層反復(fù)嘗試讀取用戶數(shù)據(jù)并不合理,在所有slot前面寫一層代理計算key值所在slot保存業(yè)務(wù)層到數(shù)據(jù)庫的一次通訊可以得到結(jié)果,redis本身是開源的,他的key值分布的算法可以參考,github也有代理項目,自行搜索。

  之后必須要考慮的是所有服務(wù)的緩存問題,如果一個業(yè)務(wù)節(jié)點有用戶緩存,用戶訪問到這個業(yè)務(wù)的另一個節(jié)點就無法保證數(shù)據(jù)一致,因此在做業(yè)務(wù)設(shè)計時最大限度保證服務(wù)無狀態(tài),如果某個服務(wù)必須有狀態(tài)可以在某個kv存儲服務(wù)存下一個用戶對應(yīng)服務(wù)節(jié)點信息,在服務(wù)集群前面再加一層代理解析用戶信息獲取節(jié)點信息再做轉(zhuǎn)發(fā),目前nginx已經(jīng)支持tcp連接轉(zhuǎn)發(fā),還有haproxy也能用。代理需要做的是解開第一個包找到節(jié)點再做轉(zhuǎn)發(fā)。這里有個小trick,登錄服務(wù)如果作為一個代理轉(zhuǎn)發(fā)到業(yè)務(wù)服務(wù)可以控制根據(jù)客戶端發(fā)來的信息做不同版本區(qū)分從而實現(xiàn)業(yè)務(wù)服務(wù)器的灰度更新。

  總結(jié)下來所謂的全球方案只是解耦和服務(wù)發(fā)現(xiàn),根據(jù)需求使用不同工具,具體的坑還要踩,整體方案還是挺靠譜的,畢竟之前設(shè)計的架構(gòu)已經(jīng)成為成功案例了,呵呵噠,但是不論架構(gòu)多好都救不了業(yè)務(wù)出現(xiàn)問題。架構(gòu)層面能做的就是這些,當(dāng)然要真正做到全球同服還要服務(wù)提供商的支持,如何保證全球玩家連接通一服務(wù)器的延遲可以不影響游戲等等。全球服的架構(gòu)帶來的不僅僅是可以將所有玩家集中到一起,也可以降低服務(wù)器成本,運(yùn)維成本,維護(hù)成本。當(dāng)然也可以基于這樣的架構(gòu)做分服,只是把不同服的玩家分開處理業(yè)務(wù),可以說是能夠兼容分服,業(yè)務(wù)層面可以完全實現(xiàn)。

  暢銷產(chǎn)品:香港站群服務(wù)器租用去首頁注冊領(lǐng)券!YINGSOO推出PHA挖礦服務(wù)器、PHA挖礦教程Chia奇亞服務(wù)器、Swarm物理節(jié)點服務(wù)器、Swarm母雞服務(wù)器Swarm云節(jié)點服務(wù)器、《Phala PHA挖礦資料大全》、《swarm bzz挖礦資料大全》,Swarm Bee節(jié)點租用請咨詢YINGSOO客服

版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。

相關(guān)文章

實時開通

自選配置、實時開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對1客戶咨詢顧問

在線
客服

在線客服:7*24小時在線

客服
熱線

400-630-3752
7*24小時客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部