站長資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        帶大家學習Linux crontab

        crontab

        使用 cron的時候,我們經(jīng)常會因為 某個命令運行時間太長,命令再次被啟動時,會出現(xiàn)多進程。
        可以使用flock, 如:

        */1 * * * * flock -xn /opt/app/nginx/test_repo/app/tasks/checkPaymentUrl.lock -c 'sudo -u apache php /opt/app/nginx/test_repo/app/console Payment checkPaymentUrl >> /dev/null 2>&1'

        當多個進程可能會對同樣的數(shù)據(jù)執(zhí)行操作時,這些進程需要保證其它進程沒有也在操作,以免損壞數(shù)據(jù)。

        通常,這樣的進程會使用一個「鎖文件」,也就是建立一個文件來告訴別的進程自己在運行,如果檢測到那個文件存在則認為有操作同樣數(shù)據(jù)的進程在工作。這樣的問題是,進程不小心意外死亡了,沒有清理掉那個鎖文件,那么只能由用戶手動來清理了。
        參數(shù)

        -s,--shared:獲取一個共享鎖,在定向為某文件的FD上設置共享鎖而未釋放鎖的時間內(nèi),其他進程試圖在定向為此文件的FD上設置獨占鎖的請求失敗,而其他進程試圖在定向為此文件的FD上設置共享鎖的請求會成功。 -x,-e,--exclusive:獲取一個排它鎖,或者稱為寫入鎖,為默認項。 -u,--unlock:手動釋放鎖,一般情況不必須,當FD關閉時,系統(tǒng)會自動解鎖,此參數(shù)用于腳本命令一部分需要異步執(zhí)行,一部分可以同步執(zhí)行的情況。 -n,--nb, --nonblock:非阻塞模式,當獲取鎖失敗時,返回1而不是等待。 -w, --wait, --timeout seconds:設置阻塞超時,當超過設置的秒數(shù)時,退出阻塞模式,返回1,并繼續(xù)執(zhí)行后面的語句。 -o, --close:表示當執(zhí)行command前關閉設置鎖的FD,以使command的子進程不保持鎖。 -c, --command command:在shell中執(zhí)行其后的語句。

        實例
        crontab運用flock防止重復執(zhí)行

        0 23 * * * (flock -xn ./test.lock -c "sh /root/test.sh") #-n 為非阻塞模式

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
        主站蜘蛛池模板: 久久国产精品成人免费| 国产成人精品免费视频动漫| 91精品国产9l久久久久| 久久久久国产精品三级网| 国产福利91精品一区二区| 伊人久久精品无码二区麻豆 | 精品人体无码一区二区三区| 国产精品美女久久久m| 正在播放酒店精品少妇约| 美女岳肉太深了使劲国产精品亚洲专一区二区三区 | 呦交小u女国产精品视频| 精品99又大又爽又硬少妇毛片| 精品视频第一页| 成人区精品一区二区不卡| 人人妻人人澡人人爽人人精品电影| 久久精品国产只有精品66| 国产精品美女WWW爽爽爽视频| 国产精品亚洲精品| 国产精品久久久久久影院| CAOPORM国产精品视频免费 | 久久精品无码专区免费| 国产成人精品无人区一区| 2020久久精品国产免费| 中文字幕无码久久精品青草| 污污网站国产精品白丝袜| 久久久久无码精品国产app| 国内精品久久久久久久久电影网 | 亚洲国产另类久久久精品小说| 亚洲成网777777国产精品| 久久人人超碰精品CAOPOREN| 国产亚洲午夜高清国产拍精品| 国产精品 猎奇 另类视频| 国产精品被窝福利一区| 国产精品热久久毛片| 国产精品区AV一区二区| 国产欧美一区二区精品性色99| 国产精品免费久久久久久久久| 国产啪亚洲国产精品无码| 久99久无码精品视频免费播放| 久久精品成人免费国产片小草| 久久性精品|