大学のソーシャルネットワーキングWebサイト用にMySQLデータベースを設定したいと思います。
私のアプリは最大10,000人のユーザーを持つことができます。可能な同時MySQL接続の最大数はいくつですか?
MySQLのドキュメントによると:http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_max_user_connections
maximum range: 4,294,967,295 (e.g. 2**32 - 1)
その制限に近づくずっと前に、サーバー上のメモリ、ファイルハンドル、およびネットワークソケットが不足している可能性があります。
合計で10,000人のユーザーがいる可能性がありますが、それは同時ユーザーと同じではありません。このコンテキストでは、実行中の同時スクリプト。
たとえば、訪問者がindex.phpにアクセスし、データベースクエリを実行してユーザーの詳細を取得した場合、そのリクエストは250ミリ秒間有効になる可能性があります。スクリプトの実行中は開いたままにするのではなく、クエリを実行しているときにのみ開いたり閉じたりすることで、これらのMySQL接続の存続期間をさらに制限できます。
一度にいくつの接続が開かれるかを予測するための式を作成するのは難しいですが、私は次のことを思い切って行います。
10,000ユーザーのユーザーベースで、常に500を超えるアクティブユーザーがいることはないでしょう。これらの500の同時ユーザーのうち、一度に行われる同時要求はおそらく最大で10〜20になります。
つまり、実際には約10〜20の同時リクエストしか確立していません。
他の人が言ったように、あなたはその部門で心配することは何もありません。
生の速度は、最終的には、大きなテーブルを使用した非常に高速なインデックスの非標準的な使用にあることを保証できます。