私のエンドツーエンドスタックがより多くのTPSをサポートできるように、私のgaleraクラスタ内の両方のノードの十分なCPUリソースを活用することを私の目標としています。現在、私の完全なスタックは36vcpuの単一のmariadbサーバーによって制約され、10000 TPSになる可能性があります。galeraクラスタで驚くほど低いパフォーマンス
GaleraクラスタでDBの2つのノードを使用して約20000のTPSをサポートしたいと考えています(これはCPUによって制約されています)。この時点では、私は脳の分割や他の複製や境界線のシナリオには関心がありません。私はhaプロキシロードバランサを使用してgaleraの2つのノードで最初にテストしましたが、非常に悪い結果を得ました(3500 TPSのみ)。 ガレラではできないことを達成しようとしていますか?いくつかの視点をお願いします。
1つのノードで10000 TPSの制限を超えてアプリケーション用のDBをクラスタ化することができる他のメカニズムはありますか?
私はMySQLクラスタリングの専門家ではありませんが、レプリケーションではなくスピードを目指しているため、Galeraのようなレプリケーション中心のクラスタではなく、NDBのようなMySQL用のShared-Nothingクラスタアーキテクチャを検討する必要があります。 – JNevill
ProductionシステムでGaleraを2ノードで使用することはできません。 1つのノードがクラッシュして再同期すると、再同期に2番目のノードが使用されるため、クラスタがダウンしてしまいます。負荷を見ることも重要です。高い読み込み負荷のGaleraにとっては最高です。また、ネットワーク内のマルチキャストについて考えてみると、ノードは各ノードではなく1つのアドレスに送信する必要があります。 my.cnfを最適化します。最後にHaProxyではなくMaxScalを使用します。 –