0

1 人のプレイヤーがゲーム セッションをホストし、他のプレイヤーがそのセッションに参加できるマルチプレイヤー ゲームを作成しています。私が抱えている問題は、セッション内のすべてのプレイヤーが、最終的に接続したクラウドサービス インスタンスに関係なく、現在のゲーム状態にアクセスできるようにする方法です。

この状態はかなり頻繁に読み取る必要があるため、アクセス時間をできるだけ速くしたいので、データベースやストレージに入れたくありません。現時点では、各インスタンス内のメモリ内のゲーム セッションのリストにすぎません。私の最初のアイデアは、Azure キャッシュ機能を使用することでしたが、現時点では、小規模以上のサイズのクラウドサービス インスタンスでのみ使用できますが、私のインスタンスは非常に小さいものです。

ホスティング プレーヤーがゲーム セッションを作成したインスタンスを検索し、そのインスタンスのエンドポイントを取得して、参加しているプレーヤーに戻すことで、参加しているすべてのプレーヤーがホスティング プレーヤーと同じインスタンスになるようにすることは可能ですか?ゲームセッション全体で使用されますか?

または、これを解決するためのより良い方法はありますか?

4

1 に答える 1

0

専用キャッシュを使用してスモールインスタンスに料金を支払うことは、負荷分散された環境にアフィニティをもたらし、優れたアーキテクチャの代わりに非常に悪いアーキテクチャを強制するというほぼ不可能なタスクを実行するよりもはるかに優れたアプローチです。

コストが懸念される場合は、月に2つの小さなインスタンスを無料で提供するMicrosoftのBizsparkプログラムに申し込むことをお勧めします。

http://www.microsoft.com/bizspark/

于 2013-03-14T20:23:30.897 に答える