2017-01-25 15 views
0

MySQLとPHPベースのアプリケーションでより優れたパフォーマンスを得たいと考えています。MySQLアプリケーションのパフォーマンスの問題

現在の状況は、曜日および/または時間に応じてクエリの「バースト」を受信するeラーニングシステムです。 (たとえば、数多くの学生が異なる学校から同時に訓練を開始します)

これらのシステムでは、常にリアルタイムの計算が必要です。

私たちは一般的に遅いクエリはほとんどなく、ログに表示されたときにそれらを改善しようとします。

ハードウェアは自己ホストされていますが、現在VPSであり、当社のハードウェアではありませんが、ソリューションの一部としてハードウェアをアップグレードしています。

私たちには、読み込み/書き込みが集中する特定のテーブルがあります。私たちはそのテーブルへのディスクアクセスになると考えています。 (調査ログ)

特に、ログテーブルが必要なときにパフォーマンスを向上させる可能性のあるハードウェアやソフトウェアの設定を調べようとしています。

私たちが考えている解決策は、 "書き込み"クエリと "読み取り"クエリのバランスをとるために複製を使用することです。 (proxySQL + replication) マスターが使用できない場合、そのセットアップでの恐怖は起こります...

現在開発中のソフトウェアの可能性は、1日1回程度しか計算されない「要約」テーブルを作成することです。少なくともアプリケーションの2つの画面にいくらかのストレスを与えるはずです。その場合のボトルネックは、一時テーブルとジョインテーブルの作成に関するものと思われます。

必要に応じて詳細を追加できますので、お気軽にお問い合わせください。

EDIT:可能なMySQLのセットアップが可能です何

がより良いパフォーマンスを得るために再公式化?レプリケーション、クラスタ、その他?

ありがとうございます。

+0

OK。あなたのステータスレポートをありがとう...このコミュニティは**質問**に焦点を当てていますが。 – specializt

+0

私は、明らかにそれを言っていませんでした。私はその記事を編集した。 –

+0

実際のボトルネックがどこにあるかを特定するには、少なくとも新しい遺物やappdynamicsなどのAPMの試用版を入手することができます。ほとんどの時間がデータベースの読み込みを待つのに費やされている場合は、スレーブデータベースサーバーを絶対に追加する必要があります。 –

答えて

関連する問題