私はゲームサーバーをホストするオンラインゲームを作っています。プレイヤーは自分のゲームサーバーにログインします。彼らはロビーに連れて行き、参加するゲームを選ぶことができます。私は勝利と敗北といくつかの他の統計を記録しています。次のようにウェブサイトとゲームサーバー間でデータを保持するために使用されるデータベースのタイプは何ですか?
私の要件は次のとおりです。
- ゲーム内の任意の時点で、プレイヤーは他のプレイヤー をクリックすると、最新の最新の統計情報を取得することができるはずです。
- プレイヤーは自分のWebサイトにアクセスして同じ の統計情報を取得することもできます。 (理想的には、直ちに最新のものになりますが、ゲームでは よりも重要ではありません)
- ウェブサイト のデータから生成されるリーダーボードもあります。
私の質問は、このタイプの状況では通常どのようなソリューションが使用されますか?
私は決してデータを失うことは不可欠です。 Webサイトデータベースの使用について私が心配していることの1つは、データの損失です。
また、Webサイトデータベースとゲームサーバー間のやりとりがどのように機能するのかもわかりません。このようなことを行うmySQLの機能はありますか? Webサイトデータベースを使用することについての私の他の懸念は、どれくらいの帯域幅を毎月消費するかということです。私は、いつでもオンラインで1000人の人がいることを寛大に推測しています。ゲームは約20分続きます。
これらのタイプの状況は、通常どのように解決されますか?私は一生懸命に見てきましたが、私の懸念に対する明確な答えをまだ見つけていません。
ありがとうございました
あなたのゲームの統計情報が最新である必要がある場合は、セキュリティを考慮することをお勧めします。開発者が防御する必要があるOWASPのトップ10のセキュリティ欠陥を見てみることができます。あなたのゲームの統計情報が不正である場合、このコメントは無視することができます。具体的には、SQLインジェクション攻撃を見てください。 – Dessus
@Dessusもしユーザがデータベースと直接対話しないで、データベースを静的サーバのIPからしか変更できない場合はどうなりますか? – jmasterx
ユーザーは、テキストボックスを使用して情報を入力することによって、データベースと対話できます。私はテキストボックスに正しいSQLを入力した場合。それは(ほとんどの人がそれをセットアップした方法によって)データベースに直接行くことができます。あなたのデータベースがどこにあるかは関係ありません。最終的には何とかあなたのデータベースからデータを取得して表示/更新します。私は潜在的に、私が望んでいたSQLを実行するためにサイトのインフラストラクチャを使用することができます(SQLインジェクション対策をしない限り)。実際には非常に恐ろしいことだと私は信じているニュースは、彼らは人々のクレジットカードの詳細を失ったソニーの攻撃に使用されていたと言いました。 – Dessus