在同一台机器上连接本地和远程 MySQL 数据库时的巨大差异

在同一台机器上连接本地和远程 MySQL 数据库时的巨大差异

我有一个休息充足php 7 web 服务应用程序centos 7vm 和mariadb 10.4作为数据库。
必须将数据库分离到同一台机器上主虚拟机旁边的另一个虚拟机,
我的问题是为什么每秒请求数 (RPS) 之间的差异是巨大的
在本地数据库中,平均有 2500 rps,但在带有 vmxnet3 适配器 (esxi) 的远程数据库中,平均有 1100 rps。
我已经在 my.cnf 中测试了 skip-name-resolve,
我该如何修复?
我是否遗漏了某些部分?

答案1

您是说将数据库放在单独的虚拟机上后,性能会从 2500 qps 降低到 1100 qps 吗?如果是这样,我首先想到的可能是额外的延迟。特别是当您在两个虚拟机之间切换时。这不仅会使所需的上下文切换量增加一倍,而且使用虚拟机进行上下文切换的成本可能会高出几个数量级。如果您超额预订 CPU,情况可能会更糟。

相关内容