私はUnityを使用してマルチプレイヤーRPGゲームをプログラミングしています。戦闘シーンでは、プレイヤーがどの攻撃を使用しているかを判断する必要があります。プレイヤーが攻撃ボタンを押すと、プレイヤーはポストリクエストをサーバに送信し、ポストリクエストが合法であるかどうかをチェックし、リクエストが合法であれば、サーバはデータベース値を「オン」にするか、それは例えば "attack_determined"と呼ばれる "0"から "1"になる。データベースの値を5秒間にチェックするのは、10000以上のようなユーザー数が多いと高価ですか?
問題は、この値をチェックするためにhttpリクエストを再度行う必要があることです。バトルに最大6文字あり、すべての人がattack_determinedが0か1かをチェックしたい場合、攻撃要求ごとに6つのリクエストを行います。ユーザー数が10000に増えたと思っていません。私が使っているVPSサーバーに対するこれらの要求を処理することはとても難しいでしょう。リクエスト数を減らす方法はありますか?私はソケットを使いたくない、私はセッションやmemcacheを使うことを考えていた。私は、サーバー側にはPHP、Unityクライアント側にはC#を使用しています。
これはちょうどインタラクティブなものを設計するための本当に悪い方法のようです。 –
@DavidSchwartzに同意します。あなたのアーキテクチャを再考する必要があります。 – Eimsas
Webソケットは、ブラウザ内のUIであったり、専用のソケットプロトコルではなくhttpを使用するクライアントアプリケーションである場合があります。これは、あなたがやろうとしていることに対して非常によく釣り合っています(そして、Webソケットサーバは現在450kのオープンな接続を持っています)。数秒ごとにHTTPのポーリング:私たちを即座に殺すだろう。他のすべてのトラフィックを同じWebソケットに結合すると、さらに優れたものになります。 –