一个业务场景原本链接的是一个单ob数据库,现在链接到了一个三副本集群。为什么性能变差很多?
原本单数据库CPU只占用500%
现在主副本cpu占用2000%
副2
副1
主
这是为什么?为什么性能差那么多
业务链接的主副本
一个业务场景原本链接的是一个单ob数据库,现在链接到了一个三副本集群。为什么性能变差很多?
原本单数据库CPU只占用500%
现在主副本cpu占用2000%
副2
![]()
厉害![]()
有没有官方大佬给一个优化啊,为什么会这样
cpu使用的多不代表性能差吧。
估计是高可用集群内部work占用了线程导致cpu比单机环境高
这么高也不正常吧
集群自身带来了复制和协调成本。
如果原来单库是:
如果业务主要是 insert/update/delete,三副本开销很大。
比如每条数据一个事务,或者很小批量提交。
三副本下每次提交都要同步确认,成本高。
很多请求打到同一批数据,主副本成为瓶颈。
换成集群后,SQL 需要做更多远程访问、回表、内部校验,慢 SQL 更明显。
副本间同步慢,主副本等待时间长,CPU 和延迟都会上升。
分布式数据库为为协调操作占用资源的
这个得看具体场景吧,分布式架构可能会产生分布式事务,性能上可能会比单机差,但分布式主打的是高可用、读写分离
官方
简单理解,多个节点之间需要沟通协调同步以保持数据一致性和高可用性,会在一定程度上影响性能
有没有推荐的优化方案