0

我在 Aurora MySQL writer(db.r3.large) 前面使用 RDS Proxy,并开始进行一些性能测试。我的测试包括每分钟发出 500 个请求并检查 Proxy 和 Aurora 的执行情况。

我观察到 Aurora 实例在 100% 的 CPU 利用率下工作了 40 分钟,之后 CPU 消耗下降到几乎 10%,所以我猜 RDS 正在缓存数据或者由于连接已经打开,所以 CPU 利用率下降了那样。

为了减少前 40 分钟的 CPU 消耗,我有两种选择,要么垂直缩放实例,要么减少代理中的连接池大小

在这里采取什么更好的方法?

此外,我有一个只读副本没有被 Proxy 使用,但是我认为 RDS Proxy 不能充当写入器和读取器实例之间的负载平衡器。

谢谢

4

1 回答 1

0

为了最大限度地减少缓存预热延迟,在您的 Aurora 性能组中,

innodb_fast_shutdown=OFF  # recommended for production to usually avoid RECOVERY
innodb_buffer_pool_dump_pct=90  # to preserve active row pointers across instance stop/start
innodb_buffer_pool_dump_at_shutdown=ON  # to prepare for next instance start
innodb_buffer_pool_load_at_startup=ON  # to reduce loading delays at instance start
innodb_flush_neighbors=2  # sweep all rows for same extent in one sweep cycle

给你最好的。

于 2021-05-08T12:51:54.077 回答