gpt4 book ai didi

mysql - 与独立的 mariaDB 服务器相比,galera 的性能非常差

转载 作者:行者123 更新时间:2023-11-29 07:06:02 25 4
gpt4 key购买 nike

我创建的 galera 设置出现了令人无法接受的低性能。在我的设置中,有 2 个处于主动-主动状态的节点,我使用 HA 代理负载均衡器以循环方式在两个节点上进行读/写操作。

使用具有以下配置的单个 mariadb 服务器,我可以轻松地在我的应用程序上获得超过 10000 TPS:36 vpcu、60 GB RAM、SSD、10Gig 专用管道

使用 galera,尽管我使用 2 个节点(36vcpu、60 GB RAM)通过 ha-proxy 进行数据库负载平衡,但我几乎无法获得 3500 TPS。有关信息,ha-proxy 作为独立节点托管在不同的服务器上。我现在已经删除了 ha-proxy,但性能没有任何改善。

有人可以在 my.cnf 中建议一些调整参数吗?我应该考虑调整这个性能严重不佳的设置。

我正在使用以下 my.cnf 文件:

enter image description here

enter image description here

最佳答案

I was easily able to get over 10000 TPS on my application with the single mariadb server with the below configuration: 36 vpcu, 60 GB RAM, SSD, 10Gig dedicated pipe

With galera i am hardly getting 3500 TPS although i am using 2 nodes(36vcpu, 60 GB RAM) of DB load balanced by ha-proxy.

基于 Galera 的集群并不是为了扩展写入而设计的,正如我看到您打算做的那样;事实上,正如 Rick 上面提到的:向同一个表的多个节点发送写入最终会导致认证冲突,这将反射(reflect)为应用程序的死锁,从而增加巨大的开销。

I am getting an unacceptable low performance with the galera setup i created. In my setup there are 2 nodes in active-active and i am doing read/writes on both the nodes in a round robin fashion using HA-proxy load balancer.

请将所有写入发送到单个节点,看看是否可以提高性能;由于 Galera 使用的虚拟同步复制的性质,总会有一些开销,这实际上会增加您执行的每次写入的网络开销(尽管真正的基于时钟的并行复制会在很大程度上抵消这种影响,但您仍然必须吞吐量略低)。

还要确保保持事务简短,并在完成原子工作单元后立即提交,因为复制认证过程是单线程的,并且会停止其他节点上的写入(如果您看到您的编写器节点显示事务 wsrep 预提交阶段,这意味着其他节点正在对大型事务进行认证,或者该节点正在遭受某种性能问题 - 交换、磁盘已满、滥用大量读取等。

希望有所帮助,并让我们知道当您迁移到单节点时情况如何。

关于mysql - 与独立的 mariaDB 服务器相比,galera 的性能非常差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41610698/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com