
介绍
小编从维护数据库服务器中发现,现在的服务器内存越来越大,如何高效地利用内存资源成了一个话题。不同的数据库软件厂商引入了参数调优,其中就有大页(hugepage)和透明大页(transparent hugepage/THP)内存策略。各大厂商都建议启用大页来提升性能,同时也强烈建议关闭透明大页。
了解Linux大页与透明大页
大页(hugepage/largepage)能够缩小页表,减少CPU在内存管理上的开销,从而提高性能。具体而言,当物理内存为100G时,pagetables=(100*1024*1024/4),随着物理内存的增长,pagetables则会越来越庞大不利于管理,对性能造成损耗。透明大页(transparent hugepage/THP)则会导致数据库性能下降。因此,Oracle强烈建议关闭THP特性。在设置数据库大页时,一般计算公式为:大页数=共享内存(GB)*1024/2,设置Linux参数vm.nr_hugepages就可以了。关闭THP则可通过修改/etc/grub.conf或执行命令# echo never>/sys/kernel/mm/transparent_hugepage/enabled。
总结
在数据库服务器上,大部分启动操作都是计划性工作,需要一次性分配内存,因此不需要内核给我们动态分配。同时,连接的server process内存较小也不需要用到大页,故Oracle强烈建议关闭THP。
原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/6134.html
