Devs.tw 是讓工程師寫筆記、網誌的平台。歡迎您隨手紀錄、寫作,方便日後搜尋!
尤川豪 Enoxs chenjenping Kevin Hou JuenTingShie
https://codertw.com/%E7%A8%8B%E5%BC%8F%E8%AA%9E%E8%A8%80/108994/
https://laracasts.com/discuss/channels/laravel/laravel-task-scheduler-after-fatal-error-when-withoutoverlapping-is-set?page=1
他有一個 mutex 互斥鎖在檔案系統裡面
重開機的時候 mutex 那邊有問題
php artisan cache:clear 即可解決問題
php artisan cache:clear
算是 laravel 核心的 bug
覺得 mutex 那個機制有些狀況還蠻微妙的,好像預設有個 lock 時間
如果連續爬資料,不確定會爬多久,可能連續好幾天
但是過程中爬的網站可能壞掉,所以用一個 schedule 定期去執行爬蟲
於是設定 mutex 讓它不會重複執行,不過 mutex 好像預設 lock 24 小時
這樣爬蟲連續爬超過 24 小時,lock 會被解除?
然後 schedule 就會重複執行新的爬蟲,可能爬到重複資料
當然也可以手動設定一個很長的 lock 時間,但就覺得要設定一個毫無意義的超大數字....
這算是 laravel 的核心 bug 嗎?
還是 laravel 有什麼難言之隱才變成這樣?
我覺得可以研究一下
Devs.tw 是讓工程師寫筆記、網誌的平台。隨手紀錄、寫作,方便日後搜尋!
歡迎您一起加入寫作與分享的行列!
本站 devs.tw 已暫緩更新!我寫了一個「新手友善」的全新論壇:CodeLove 愛寫扣論壇!
歡迎前往新網站翻閱文章、與大家交流、分享、互相打氣、一起學習、一起成長!
覺得 mutex 那個機制有些狀況還蠻微妙的,好像預設有個 lock 時間
如果連續爬資料,不確定會爬多久,可能連續好幾天
但是過程中爬的網站可能壞掉,所以用一個 schedule 定期去執行爬蟲
於是設定 mutex 讓它不會重複執行,不過 mutex 好像預設 lock 24 小時
這樣爬蟲連續爬超過 24 小時,lock 會被解除?
然後 schedule 就會重複執行新的爬蟲,可能爬到重複資料
當然也可以手動設定一個很長的 lock 時間,但就覺得要設定一個毫無意義的超大數字....
這算是 laravel 的核心 bug 嗎?
還是 laravel 有什麼難言之隱才變成這樣?
我覺得可以研究一下