我正在考慮編寫一個基於服務器的遊戲,並且有幾個客戶端程序連接到它。遊戲(非常)基本上由用戶可以「接受」的項目列表組成,這些項目將從所有連接的計算機的列表中刪除它(這需要非常快速地更新)。編寫基於客戶端 - 服務器的遊戲的建議
我正在考慮爲客戶端使用Java applet,因爲我希望這是可移植的,並且可以從瀏覽器(主要在Windows)中運行,並且可以更快速地更新,並且可以運行C++或Java服務器Linux(目前只是一個家庭服務器,但可能會使用VPS)。
這個遊戲的前一個'化身'在瀏覽器中運行,並且使用PHP + mySQL作爲後端,但是當幾個人連接時(這與大約8人有關,這最終需要以處理更多)。
用戶可能都在同一個物理位置(具有相同的公共IP地址),並且系統每秒會得到幾個請求,所有這些都需要將列表發送回客戶端。
有些計算機可能對它們有防火牆限制,因此您會推薦使用HTTP通信,自定義端口還是通過SSH或某些現有協議?
任何人都可以提供一些提示(線程,一個項目的多個請求?),工具,數據庫(mySQL?)或API,這將幫助我開始這個項目?我更喜歡C++作爲後端,因爲它會更快,但使用Java將允許我重用代碼。
謝謝!
我會看看Boost,謝謝。舊版本的問題是我無法完成推送,所以我使用了輪詢,並在請求中填充了Apache。 – neuropie 2011-01-07 17:29:32
此外,你會建議有一個線程循環爲每個客戶端,或爲他們所有? – neuropie 2011-01-07 17:32:35