MySQLサーバーの前にプロキシレイヤーを実装しようとしています。これにより、冗長なSQLクエリがキャッチされ、サーバーに1回だけ送信されます。言い換えれば、MySQLと通信し、同じSELECT
クエリを繰り返すことが非常に多いクライアント(PHP、Perl、さまざまなWebノード)がたくさんあります。トラフィックが増加すると、MySQLは非常に頻繁に減少します。
問題は、役立つオープンソース(または商用)ツールを知っていますか?MySQLプロキシを試しましたが、役に立たないようです。
MySQLサーバーの前にプロキシレイヤーを実装しようとしています。これにより、冗長なSQLクエリがキャッチされ、サーバーに1回だけ送信されます。言い換えれば、MySQLと通信し、同じSELECT
クエリを繰り返すことが非常に多いクライアント(PHP、Perl、さまざまなWebノード)がたくさんあります。トラフィックが増加すると、MySQLは非常に頻繁に減少します。
問題は、役立つオープンソース(または商用)ツールを知っていますか?MySQLプロキシを試しましたが、役に立たないようです。
2 つの提案:
ここで2つの追加提案
提案 #1 クラスターをセットアップする
データがすべて InnoDB の場合は、Percona XtraDB Clusterを試して、それと組み合わせて HAProxy を使用する必要があります。書き込みマスターを含むクラスター内のすべてのサーバー間で負荷を分散できます。
提案 #2 1 つ以上の DB サーバーへの MySQL レプリケーションを介してクラスターをセットアップする
HAProxy を使用して、読み取りスレーブ間で読み取りの負荷を分散する
予算が限られており、データが比較的小さい場合は、1 つのサーバーに複数の MySQL インスタンスをセットアップします