MySQLとPHPベースのアプリケーションでより優れたパフォーマンスを得たいと考えています。MySQLアプリケーションのパフォーマンスの問題
現在の状況は、曜日および/または時間に応じてクエリの「バースト」を受信するeラーニングシステムです。 (たとえば、数多くの学生が異なる学校から同時に訓練を開始します)
これらのシステムでは、常にリアルタイムの計算が必要です。
私たちは一般的に遅いクエリはほとんどなく、ログに表示されたときにそれらを改善しようとします。
ハードウェアは自己ホストされていますが、現在VPSであり、当社のハードウェアではありませんが、ソリューションの一部としてハードウェアをアップグレードしています。
私たちには、読み込み/書き込みが集中する特定のテーブルがあります。私たちはそのテーブルへのディスクアクセスになると考えています。 (調査ログ)
特に、ログテーブルが必要なときにパフォーマンスを向上させる可能性のあるハードウェアやソフトウェアの設定を調べようとしています。
私たちが考えている解決策は、 "書き込み"クエリと "読み取り"クエリのバランスをとるために複製を使用することです。 (proxySQL + replication) マスターが使用できない場合、そのセットアップでの恐怖は起こります...
現在開発中のソフトウェアの可能性は、1日1回程度しか計算されない「要約」テーブルを作成することです。少なくともアプリケーションの2つの画面にいくらかのストレスを与えるはずです。その場合のボトルネックは、一時テーブルとジョインテーブルの作成に関するものと思われます。
必要に応じて詳細を追加できますので、お気軽にお問い合わせください。
EDIT:可能なMySQLのセットアップが可能です何
がより良いパフォーマンスを得るために再公式化?レプリケーション、クラスタ、その他?
ありがとうございます。
OK。あなたのステータスレポートをありがとう...このコミュニティは**質問**に焦点を当てていますが。 – specializt
私は、明らかにそれを言っていませんでした。私はその記事を編集した。 –
実際のボトルネックがどこにあるかを特定するには、少なくとも新しい遺物やappdynamicsなどのAPMの試用版を入手することができます。ほとんどの時間がデータベースの読み込みを待つのに費やされている場合は、スレーブデータベースサーバーを絶対に追加する必要があります。 –