0

フロントエンド Web サイト用に MVC3 (または 4) を使用して Web ゲームを作成することに興味があります。これは、私が最も快適に作業できる Web フレームワークだからです。例として、これが不動産ゲームだとしましょう (楽しい!..)

これをスケーラブルな方法で行う方法について、私は長い間懸命に考えてきましたが、次の小さな質問/ジレンマにたどり着きました。

1) ゲーム サーバー ロジックを実際の Web サーバー自体にコーディングします。

利点: Web サーバーはエンティティ フレームワークを直接利用できます。これは、データ操作に最適です。

問題: スケーラブルではありません。ゲームは 1 つのサーバーにほぼ制限されており、過密になり遅くなる可能性があります。各 Web サーバーを単一の「レルム」として使用した場合、潜在的に機能する可能性がありますが、10 個の「レルム」が実行されている場合、データベース サーバーに多くの負荷がかかる可能性があります。

2) ゲーム サーバー ロジックを個別の C++ 実行可能ファイルとして、場合によっては別のマシン上でコーディングします。

利点: スケーラブル - 複数の Web フロント エンド サーバーをゲーム サーバーに接続でき、いずれかの Web サーバーがダウンしても停止しません。

問題: Web サーバーとゲーム サーバー間の通信が困難です。おそらく、ソケット接続をセットアップし、ある種の通信プロトコルを確立する必要があります (おそらく XML を使用します)。さらに、ゲーム サーバーはデータ ストレージを担当する必要があり、エンティティ フレームワークに対する MVC の洗練されたサポートを無駄にしているように見えます。別のサーバーへのソケット クエリが必要な場合、データベースに何かが既に存在するかどうかを確認するなどの MVC3 の単純な作業は、かなり骨の折れる作業になります。

この種の問題を経験したことがある人がいたら、どうすれば最善のアプローチができるか教えていただけますか?

4

1 に答える 1

0

既に ASP.NET アプリケーションを作成している場合は、 WCFを試して、ゲーム サーバー ロジックを .NET で作成してみませんか? WCF はすべての通信を行いますが、構成が少し複雑になることがあります。

于 2012-06-05T14:45:09.850 に答える