最近公司发现我们的云 MySQL 数据库的负载很低。于是就考虑在不影响太多性能 (主要是 query 的 latency) 的前提下改成更小的配置。由于我们 innodb_buffer_pool_size 一直是默认设置 (主机内存的 80% 左右), 所以现在的 innodb_buffer_pool_size 很大而且命中率在 100%。
我的问题是,如何判断减小 innodb_buffer_pool_size 带来的影响?因为看不到 buffer pool 里面数据热度的分布,如果我们减小一半的内存,在极端情况下,命中率会变成 50%。
我能想到的只有根据 youngs/s 和 young 区域的大小做一个大致判断。不知道大家有没有什么好的方法。多谢!
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.