首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据库服务器中内存页的比率很高

问数据库服务器中内存页的比率很高
EN

Stack Overflow用户
提问于 2014-12-25 10:15:49
回答 1查看 1.3K关注 0票数 2

在数据库服务器、服务器环境和观察中获取的比率非常高的页面如下所示:

服务器环境:

操作系统发布版-红帽企业Linux服务器第6.6版(圣地亚哥)/系统信息- Linux database.esewa.com.np 2.6.32-504.1.3.el6.x86_64 #1 SMP Fri 10月31日11:37:10 x86_64 GNU/Linux 32G(22G=MYSQL、2GB=MEMCACHE和rest给操作系统)HW-2Sockes-Intel(注册商标)Xeon(注册商标) CPU X5650 @ 2.67GHz存储-10KRPM磁盘( RAID 10磁盘)

对中内存页的观察

假设页面的值应该是0或低,并且命中大于25,则表示处于压力下的内存非常高,并且可能是交换的前兆。我在服务器中看到了非常高的页面(最高-180),但是没有看到任何内存进程交换队列。还注意到大部分是99%的IO利用率,尽管其他指标是正常的(avg:%用户(10.47%)%好人(0.00)%系统(0.63) %iowait(5.26) %偷(0.00)%空闲(83.64))

问题:

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

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

有人认为MYSQL和MEMCACHE结合在一起的问题在很高的页面(最高-180)中吗?

大页能帮助解决这个问题吗?

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

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

EN

回答 1

Stack Overflow用户

发布于 2015-01-01 15:59:56

大页能帮助解决这个问题吗?

是的,推荐使用hugepages对数据库进行性能优化。这也是从这个链接-启用大页面支持推荐的

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

你关于页面的假设是不正确的。当内核执行I/O时,分页和分页量会很高,因为数据是从磁盘读取并移动到主内存中的,vis- as会导致大量的读和写I/O操作。

参考man sar

“

pgpgin/s

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

pgpgout/s

系统每秒呼出到磁盘的千字节总数。

“

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

您还可能希望查看用于配置读/键/排序缓冲区大小的mysql调谐器,并将系统调到数据库的使用截止日期I/O调度器。使用tuned-adm或手动echo 'deadline' > /sys/block/sda/queue/scheduler或在grub.conf中设置elevator=deadline可使此持久性。

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

代码语言:javascript
复制
vm.swappiness              
vm.dirty_background_ratio  
vm.dirty_ratio
vm.dirty_expire_centisecs 
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27646266

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档