Anu*_*tel 3 memory centos hard-drive postgresql swap
我有一个带有 9GB RAM、300GB HDD、3GB Swap、7 核的 VPS。操作系统是 CentOS 5.7 Final。
我在我的机器上运行了 postgres9.0,并进行了适当的调整(至少通过 PostgreSQL 的书/维基)。
大多数情况下,当一些复杂的查询运行时(复杂我的意思是选择最多 3 个连接),尽管我的 RAM 有大约 75% 未使用,但仍有大约 99% 的交换正在发生。
编辑:我在这里提到的空闲 RAM 是由 (free + buffered + cached) 计算的,'free -m' 显示的实际空闲几乎是 ~2%。因此,如果我一开始就错了,请纠正我。
此外,它搞砸了我的磁盘 IO,这在大多数情况下达到了 ~100% 并减慢了其他一切。(我倾向于认为我的磁盘有问题。)
我不明白发生这么多交换的原因。是因为上下文切换吗??我的处理器大部分时间都处于空闲状态,而在选择时间期间 IO 等待时间高达 30%。
如果有人能对此有所了解,我们将不胜感激。
谢谢。
Linux 内核决定在内存页使用频率不高时将它们放在交换中,即使它有一些可用内存。您可以通过执行以下操作来调整内存管理器的“交换”来调整此行为
$ echo 50 > /proc/sys/vm/swappiness
Run Code Online (Sandbox Code Playgroud)
其中50
是0
(尽可能少地交换)和100
(尽可能多地交换)之间的值。
另请参阅维基百科:swappiness以了解更多相关信息。
归档时间: |
|
查看次数: |
2881 次 |
最近记录: |