gpt4 book ai didi

mysql - 数据库服务器中内存页面的速率非常高

转载 作者:太空狗 更新时间:2023-10-29 12:15:13 25 4
gpt4 key购买 nike

在数据库服务器、服务器环境和观察中观察到的页面访问率非常高,如下所列:

服务器环境:

操作系统版本 - Red Hat Enterprise Linux Server 版本 6.6(圣地亚哥)/系统信息 - Linux database.esewa.com.np 2.6.32-504.1.3.el6.x86_64 #1 SMP Fri Oct 31 11:37:10 EDT 2014 x86_64 x86_64 x86_64 GNU/LinuxRAM - 32G(22G=MYSQL,2GB=MEMCACHE,其余交给操作系统)硬件 - 2 个插槽 - Intel(R) Xeon(R) CPU X5650 @ 2.67GHz存储 - 磁盘托架中具有 RAID 10 的 10K RPM 磁盘

观察 MEMORY PAGE IN

假设 PAGE IN 值应为 0 或较低,并且命中大于 25 表示非常高或内存压力大,可能是交换的前兆。我观察到服务器中的页面速率非常高(最大 180),但没有看到任何内存进程交换队列。还注意到大多数 99% 的 IO 利用率虽然其他指标是正常的(avg-cpu: %user(10.47) %nice(0.00) %system(0.63) %iowait(5.26) %steal(0.00) %idle(83.64))

问题:

假设在这种情况下是否合理?

我们是否为应用程序分配了更多内存(即 22G-MYSQL 和 2GB MEMCACHE)?

有人看到 MYSQL 和 MEMCACHE 的组合对于非常高的页面(最大 180)速率有问题吗?

大页面可以帮助解决这个问题吗?

在这种情况下,大多数时候设备利用率(iostat 的 %util)接近 99% 的行为是否可以接受?

如果有人对上述问题提供建设性和批判性的回答,我将不胜感激。提前致谢。

最佳答案

Can hugepages help to address this issue?

是的,推荐使用大页面来调优数据库性能。这个也是从这个推荐的link - Enabling Large Page Support

Is the assumption is reasonable in this context?

您关于页入的假设是不正确的。当内核进行 I/O 时,页入和页出会很高,因为数据是从磁盘读取并移动到主内存中,相对而言,页面正在交换导致高读写 I/O操作。

引用man sar:

pgpgin/秒

系统每秒从磁盘调入的总字节数。

pgpgout/秒

系统每秒分页到磁盘的总千字节数。

Behaviour of hitting device utilization(%util of iostat) closer to 99% most of the time is acceptable in this context?

您可能还想查看 mysql tuner用于配置读取/键/排序缓冲区大小,并将系统调整为数据库的使用期限 I/O 调度程序。使用 tuned-adm 或手动 echo 'deadline' >/sys/block/sda/queue/scheduler 或在 中设置 elevator=deadline >grub.conf 使这个持久化。

此外,查看下面的内核可调参数并在 /etc/sysctl.conf 中设置它们或使用 sysctl 来最小化不必要的页面交换,保持脏页比率低,介于 5% 到 10% 之间,确定脏页在过期之前可以在缓存中保留多长时间。注意:必须小心处理这些值,进行增量更改并测试服务器上的负载。

vm.swappiness              
vm.dirty_background_ratio
vm.dirty_ratio
vm.dirty_expire_centisecs

关于mysql - 数据库服务器中内存页面的速率非常高,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27646266/

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