Mein Ziel ist es, ausreichende CPU-Ressourcen der beiden Knoten in meinem Galera-Cluster zu verwenden, so dass mein End-to-End-Stack mehr TPS unterstützen kann. Im Moment ist mein voller Stack durch einen einzigen Mariadb-Server von 36vcpu beschränkt und kann bis 10000 TPS gehen.Beunruhigend niedrige Leistung mit Galera-Cluster
Ich möchte fast 20000 TPS durch die Verwendung von 2 Knoten von DB in einem Galera-Cluster unterstützen (As 1 kann etwa 10000 TPS unterstützen - dies wurde durch CPU eingeschränkt). Zu diesem Zeitpunkt interessiere ich mich nicht für Split-Brain und andere Replikations- oder Grenzlinien-Szenarien. Ich habe es zunächst mit 2 Knoten in Galera mit einem ha-Proxy Load Balancer getestet, aber sehr schlechte Ergebnisse (nur 3500 TPS). Versuche ich etwas zu erreichen, was galera nicht kann? Einige Blickwinkel bitte.
Jeder andere Mechanismus, durch den ich meine DB für die Anwendung Clustering über die Begrenzung von 10000 TPS auf einem Knoten Cluster kann?
Ich bin kein Experte für MySQL-Clustering, aber ich denke, da Sie auf Geschwindigkeit und nicht auf Replikation abzielen, sollten Sie eine Shared-Nothing-Clusterarchitektur für MySQL wie NDB anstelle eines replikationsfokussierten Clusters wie Galera betrachten. – JNevill
Sie können Galera mit 2 Knoten in einem Produktionssystem nicht verwenden. Wenn ein Knoten abstürzt und erneut synchronisiert wird, wird ein zweiter Knoten für die Resynchronisierung verwendet, so dass Ihr Cluster ausgefallen ist. Es ist auch wichtig, die Ladung zu sehen. Für eine hohe Leselast ist Galera das Beste. Um auch über Multicast im Netzwerk nachzudenken, muss ein Knoten nur an 1 Adresse und nicht an jeden Knoten senden. Optimiere die my.cnf. und zuletzt MaxScal statt HaProxy. –