後臺跑指令碼替代crontab
crontab是個不錯的東西,但他可能會在一個指令碼未結束時又啟動了同樣的指令碼。最大的問題是他每次都要讀指令碼、編譯、然後執行。這樣很耗CPU。我們可以這樣替代:
# main execution block[@more@]
while (1) {
runTask()
sleep 60;
}
在UNIX下我們常把指令碼放在crontab裡呼叫,如
* * * * * /opt/application/bin/batch1.pl * * * * * /opt/application/bin/process.pl /tmp/foo * * * * * /opt/application/bin/process.pl /tmp/bar * * * * * /opt/application/bin/submit.pl
crontab是個不錯的東西,但他可能會在一個指令碼未結束時又啟動了同樣的指令碼。最大的問題是他每次都要讀指令碼、編譯、然後執行。這樣很耗CPU。我們可以這樣替代:
# main execution block
while (1) {
runTask()
sleep 60;
}
Or, if you really need to start on the zero second….
# main execution block
while (1) {
runTask()
sleep 1 # we need this to prevent the task from running more than once during the 0 second.
while (((localtime(time))[0] != 0) {
sleep 1;
}
我們可以在系統啟動時跑這樣的指令碼,在後臺執行。
可以在一個指令碼里跑多個任務,也可以多個指令碼在後臺同時跑。可以把指令碼放在inittab,這樣系統啟動時就自動跑了。還有個問題就是如果指令碼出錯停止了,沒有什麼來重跑他,所以要做好報錯機制。
參考:http://www.oreillynet.com/sysadmin/blog/2006/08/scheduling_perl_scripts_outsid.html
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/668365/viewspace-1029394/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 在Hadoop平臺跑python指令碼HadoopPython指令碼
- crontab執行shell指令碼指令碼
- 分析表的crontab指令碼指令碼
- 指令碼後臺執行指令碼
- CRONTAB呼叫的備份指令碼指令碼
- shell常用指令碼&crontab設定指令碼
- crontab排程Python指令碼Python指令碼
- 使用 Airflow 替代你的 crontabAI
- UNIX crontab自動執行指令碼指令碼
- python指令碼後臺執行Python指令碼
- 跑wordpress使用者密碼指令碼密碼指令碼
- 使用CRONTAB呼叫shell指令碼執行EXP指令碼
- Linux 後臺執行 PHP 指令碼LinuxPHP指令碼
- linux 後臺執行sql指令碼LinuxSQL指令碼
- crontab呼叫oracle的shell指令碼注意事項Oracle指令碼
- 執行python指令碼後臺執行Python指令碼
- Linux後臺執行指令碼命令之nohupLinux指令碼
- 注意後臺看似不相關指令碼的干擾指令碼
- windows bat指令碼 後臺執行目標exeWindowsBAT指令碼
- nohup在後臺常駐執行php指令碼PHP指令碼
- 用來替代 linux crontab 的任務排程平臺,大家都來康康喲Linux
- 獲取AWR的指令碼,可以在crontab裡面部署指令碼
- 通過Linux crontab 定期執行Oracle Procedure 指令碼LinuxOracle指令碼
- 一種多協程跑指令碼的寫法指令碼
- 【HIVE】hive 使用shell指令碼跑歷史資料Hive指令碼
- 在linux上定期執行命令、指令碼(cron,crontab,anacron)Linux指令碼
- linux crontab下的指令碼不執行怎麼辦Linux指令碼
- crontab不執行mysql的指令碼問題的解決!MySql指令碼
- crontab無法執行perl指令碼 手工卻成功執行指令碼
- Crontab自動執行指令碼Kill掉MySQL的僵死程式指令碼MySql
- Redis 使用 Lua 指令碼替代 SETNX / DECR 保證原子性Redis指令碼
- 錄屏方法剖析,記錄指令碼跑測不再難指令碼
- Linux Crontab Shell指令碼實現秒級定時任務Linux指令碼
- 解除使用者crontab指令被禁用
- 11G GI 安裝同時跑指令碼測試指令碼
- shell指令碼放到crontab裡就執行不成功的問題指令碼
- 伺服器部署python指令碼並使用crontab定時執行伺服器Python指令碼
- 如何使用Linux的Crontab定時執行PHP指令碼的方法LinuxPHP指令碼