1. 程式人生 > >【轉】通過ionice和nice降低shell指令碼執行的優先順序

【轉】通過ionice和nice降低shell指令碼執行的優先順序

對於一些執行時會造成系統滿載的指令碼, 例如資料庫備份, 會影響當時其他服務的響應速度, 可以通過ionice和nice對其IO優先順序和CPU優先順序進行調整
例如降低"/usr/local/bin/backup.sh"的IO優先順序, 讓其他程序順暢執行:

/usr/bin/ionice -c2 -n7 /usr/local/bin/backup.sh

其中:
-c: scheduling class, 0: none, 1: realtime, 2: best-effort, 3: idle
-n: class data (0-7, lower being higher prio)

降低其CPU優先順序, 可以通過

/usr/bin/nice -n 19 /usr/local/bin/backup.sh

其中:
-n, --adjustment=N   add integer N to the niceness (default 10), nicenesses range from -20 (most favorable scheduling) to 19 (least favorable).

Nice和ionice可以一起使用, 例如

/usr/bin/nice -n 19 /usr/bin/ionice -c2 -n7 /usr/local/bin/backup.sh