Bash 很好/IOnice哪一个是第一个?这有关系吗?有没有其他方法可以减少脚本上的服务器负载?
我一直在尝试一种“更好”的方法,在活动服务器上从Bash 很好/IOnice哪一个是第一个?这有关系吗?有没有其他方法可以减少脚本上的服务器负载?,bash,server,load,nice,ionice,Bash,Server,Load,Nice,Ionice,我一直在尝试一种“更好”的方法,在活动服务器上从bash脚本运行gzip,但它设法使平均负载高于我希望的水平 以下哪项在I/O和CPU上更软 还有其他我不知道的方法吗 /usr/bin/nice-n19/usr/bin/ionice-c2-n7 gzip-9-q foo* 或 /usr/bin/ionice-c2-n7/usr/bin/nice-n19 gzip-9-q foo* 另外,是否还有其他命令,例如ulimit,可以帮助减少服务器上的负载?我不熟悉ionice这件事,但是nice只是意
bash
脚本运行gzip
,但它设法使平均负载高于我希望的水平
以下哪项在I/O和CPU上更软
还有其他我不知道的方法吗
/usr/bin/nice-n19/usr/bin/ionice-c2-n7 gzip-9-q foo*
/usr/bin/ionice-c2-n7/usr/bin/nice-n19 gzip-9-q foo*
另外,是否还有其他命令,例如
ulimit
,可以帮助减少服务器上的负载?我不熟悉ionice
这件事,但是nice
只是意味着如果另一个进程想使用CPU,那么nice进程将更愿意等待一段时间
CPU负载不受此影响,因为它只是“运行队列”长度的一个度量值,它将是相同的
我猜这将与ionice相同,但会影响磁盘负载
因此,“精确性”只影响您的进程是否愿意让其他进程在队列中先于您,但最终负载将是相同的,因为CPU/磁盘必须执行该任务
类比:把收银台后面的人想象成一个类比。他们仍然需要处理队列,但队列中的人可能会彼此友好,让其他人在他们前面经过柜台。“加载”是该队列的长度。我向上投票,但我刚刚注册的“您至少需要15个特权点”,我对该页面不太熟悉。此外,这不是我的母语,对我来说可能是一个障碍。感谢您抽出时间回答。另外,我找到了解决问题的方法,得到了一个额外的脚本来扫描服务器负载和io负载,并发送信号来暂停和恢复。比如:if avg>“硬编码值”
kill
-n19`ps-ef | grep“foo”| grep-v grep | awk{print$2}`或者kill-n18
`ps-ef | grep“foo”| grep-v grep | awk{print$2}“`@KarmaDoe您可能想查看pgrep
和pkill
工具。关于使用ionice
和usr/bin/time
我有一个类似的问题。我不确定将ionice
放在time
之前是否会使时间变得“美好”,但不是实际的过程,或者是相反的,在time
之前放置ionice
会覆盖ionice
(或者两者都不起作用,并且两种方式都能按预期工作)。我同意下面的答案,但我想知道如何正式测试这一点。不管是哪一个,他们都不做任何事情,只是设置了流程资源限制/优先级,然后设置了一个execve()
。。。