等价于文件系统IO的`nice`吗?


11

当我运行rsync涉及复制大文件的备份作业时,运行备份的计算机(Mac台式机和Linux服务器)会停顿下来,平均负载会达到顶峰。

我试过了:

  • nice处理rsync过程(无济于事-瓶颈是磁盘)
  • 在Linux上,请renice输入a kjournald(有帮助,但看起来像黑客,在Mac上不起作用)
  • 使用--bwlimit rsync标记(有帮助,但这意味着所有传输都很缓慢-即使不需要传输)

那么,有没有什么办法可以“ nicersync的IO这样的机器都可用的备份运行时?

PS:我知道rsync在Mac上的危险…但是,我已经使用BackupBouncer来验证我的备份,而且看起来还可以。

Answers:


7

看来setpriorityMac OS X上的API应该能够更改IO调度(请参阅http://developer.apple.com/mac/library/documentation/Darwin/Reference/ManPages/man2/setpriority.2.html) 。我没有任何MacOS,因此无法测试是否nice实际更改了IO优先级。

在Linux方面,ionice您正在寻找什么。


1
嗯谢谢 setpriority联机帮助页显示的内容是:“将线程设置为后台状态时,调度优先级设置为最低值,磁盘和网络IO受到限制。” -似乎表明磁盘/网络IO仅在降低到20(“后台状态”)时才受到限制。
David Wolever,2010年

2
一些快速测试似乎也证实了这一点-当备份脚本仅调整为10(即nice backup)时,我注意到速度下降了……但是,当备份脚本降至了20(即nice -n 20 backup)时,我没有注意到任何速度下降。
David Wolever,2010年

(“注意到减速”是指“注意到计算机上运行的交互式程序没有
像平常一样

1
令人失望的是,您只能以20的优先级进行节流。
埃文·安德森

+1,不错的答案。一直想知道如何搅动IO。
艾利·佩恩

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.