遊戲伺服器當中有哪些使用RPC通訊的場景?

時間 2021-06-01 05:06:46

1樓:ggffss

其實現在如果有條件的話一般都用RPC。

原因:從封包到解包實現了自動化。

簡化了開發流程。

但是在效能上相比原始的封包應該是稍微差點的。

2樓:馬玉冰

我認為你想問的其實是遊戲中哪些場景需要使用長連線而不是短連線(http)。

基本上MMO、需要實時對戰的遊戲都需要長連線。比如夢幻西遊,皇室戰爭的對戰場景,王者榮耀等等。

從本質上講,長連線主要是要解決乙個從伺服器端推送資料的問題。你應該知道http是客戶端從伺服器拉取資料,那麼請問你在玩王者5v5的時候,你要如何在同一時間獲取隊友、敵人的位置、屬性、等等資訊呢?從效能上講用http幾乎是不可能做到的。

而使用長連線可以通過頻繁的推送,以廣播的方式將資料傳送到10個人的客戶端,這就是長連線的最重要的使用場景。

至於使用哪種長連線的實現方式,RPC或者是socket,都無所謂了。

3樓:「已登出」

所有的通訊協議,終極抽象都是rpc。各種收包發包不過是土法實現的rpc。

除了request和response之外,還有callback,authentication等需要考慮。更深考慮可能還有事務,集群等特性。

4樓:郝佳男

希望題主詳細描述一下問題。比如MMOG和Lan Game就差別很大。

我先預設為MMOG。

我猜題主得出遊戲伺服器偏好RPC是因為很多遊戲框架(如Unity)就用RPC來負責Client和Server間的互動。簡單說,好處就是RPC提供了乙個抽象框架,讓開發者能夠像呼叫本機函式一樣操作遠端節點上的資料,不用關心怎麼編碼、傳輸。

和一般基於Message的分布式框架(如MPI)相比,RPC更加抽象,也更方便理解。

不過在底層,無論是RPC還是MPI,終究還是要轉化成TCP/UDP包發來發去的。

遊戲伺服器怎麼選?

磐石雲 1 伺服器CPU的挑選 網頁遊戲伺服器每天接受至少幾百 至多上千萬的訪問量,對CPU的快速吞吐量 穩定性 長時間執行都有著嚴格的要求,因而伺服器CPU是衡量伺服器效能的首要指標。可以根據遊戲的客戶量來進行選擇,當然,也可以前期選擇較低配置,當然不能太低,否則影響玩家的體驗。遊戲使用者量增加之...

遊戲伺服器運維疑惑?

批量伺服器管理方面,可以用ansible 建議學一下python,用於運維工具開發 乙個管理伺服器配置資訊的後台,可以讓會PHP的人開發,當然用python也可以 乙個儲存伺服器配置資訊的cmdb 運維工具通過cmdb獲取遊戲伺服器資訊 IP 埠 然後呼叫ansible的介面。 1 必須要有cmdb...

單機遊戲線上伺服器和網路遊戲伺服器的區別是什麼?

堅果矩陣 您題目中所描述的單機遊戲線上伺服器,如果是gta5或使命召喚這樣的多人遊戲部分,那它本身還是對戰型 MMO型的強聯網伺服器,那和一般意義上的魔獸世界這樣的網路遊戲在伺服器層面講區別不大,都是通過需要遊戲客戶端與遊戲伺服器進行實時連線的,一般是socket這樣的技術來實現的。現在遊戲收入比如...