0

私はPHPベースのRPG、街づくりゲームを作っています。私の考えは、中央の 3X3 が内側の城である城のレイアウト用に 9X9 グリッドを作成し、そのセクションをクリックすると、内側の城の 6X6 グリッドが表示されることです。プレイヤーは、外側のグリッドのタイルを取得して内側の城にすることもできます。すべてのタイルはその上に構築できます。スケーラビリティを考慮して、データベースでこれを表現する最良の方法は何でしょうか?

これまでに思いついた唯一のアプローチは、(idcastle、Y、X) を持つ 3 列のテーブルで、X は 18 個の数字の文字列です。substr を使用して、そのタイルに建物があるかどうかを確認します。ただし、城がたくさんあるとスケーラビリティの問題が発生すると思います(各城には18行が必要なので)。

4

1 に答える 1

0

データベースのクエリ方法によって異なります。IDを動的に作成することをお勧めします。そのため、主キーに対してクエリを実行するだけで非常に高速になり、castleid_x_y_zになります。

さらに、redisのようなものを使用して処理します。これは、通常、ネットワーク速度によってのみ制限されるためです。城が多すぎる場合は、人々を2番目のサーバーにプッシュするだけです。1つの城を2つのサーバーに分割しないため、スケーリングについて心配する必要はありません。

于 2012-08-30T16:09:42.130 に答える