我幾乎用node.js和socket.io完成了基於回合的多人遊戲。在node.js中分離遊戲服務器和Web服務器
我express.js作爲Web服務器和其他類充當遊戲服務器,使用socket.io。
我的問題是,這兩個在同一個應用程序中運行。我有一個網絡登陸頁面,用戶可以登錄並查看他們的球員詳細信息並在大廳聊天。現在直到這裏,沒有什麼與遊戲邏輯有關。所以我問自己爲什麼在這個地獄是這個遊戲服務器運行在與web服務器相同的應用程序。另外請注意,未來可能會有不同的服務器,例如(歐洲服務器,美洲服務器,亞洲服務器等),但是登錄頁面和登錄機制保持不變。
那麼達到此目的的最佳方法是什麼?
我應該做兩個單獨的node.js應用程序,一個網絡服務器和一個遊戲服務器。然而,在那種情況下,我能夠在套接字和請求之間共享會話數據嗎?
另一個缺點是,瀏覽網站時,意外的情況可能會導致服務器無法拋出異常,並關閉應用程序從而關閉遊戲服務器也。
發佈此問題後,我對此問題做了更多調查。對於node.js來說,最好的選擇就是你的建議。你的回答在這個問題上是正確的。但我想了解更多。您是否會分享您對這種情況解決方案架構的看法,而不是基於node.js和redis的解決方案? –