我有一個表,存儲客戶提交的表格。從cronjobs mySQL鎖記錄
還有一個cron腳本,用於從該表中選擇記錄進行處理。它每分鐘運行一次。
SELECT * from Forms where to_CRM = 0 limit 10
的問題是有時API需要一段時間才能完成,這樣有時下一批已經要求前一批次完成之前運行。
這會導致選擇同一個人進行處理,因爲他的To_CRM
標誌仍然爲0;
鎖必須鎖定表不能插入新記錄。
什麼是最好的方法來解決這個問題通過交易或不同的方法,如在處理表時設置一列?
我想通過防止cron每次運行多次 - 也許是在啓動時檢查和「touch()」鎖定文件,然後在完成時取消鏈接()。 – ceejayoz