是否有固定的時間段作爲後臺任務多久可以運行?Linux的後臺任務的最大處理時間
我有一個用yii框架開發的系統。我有一個後臺任務,當用戶上傳一個csv文件時觸發。一個csv文件最多可以有20 000個用戶記錄。每個用戶記錄大約20-30列。手動設置(包括自定義列)
這是我如何運行腳本(後臺任務):
php /var/www/html/digitalebox_v2/console.php massbulkinsert azraar.digitalebox.fr 10 > /dev/null &
由於這個過程中巨大的數據集,大約需要3個小時完成。所以我很困惑,如果在Linux上有任何默認的限制,一個進程可以運行多長時間。
我不知道,兩次運行時,腳本退出處理時通過11,000條記錄。第一次停在第10100記錄。第二次停在第9975紀錄。它沒有終止的模式。我已經100%驗證了它不是由於數據問題。因爲相同的數據在分解爲2個獨立文件並上傳時起作用。
什麼可以造成這樣的麻煩?我的注意力集中在頂層命令上,而且大多數時間,mysql pid分別爲98和100%,130%,可用內存大約爲200 MB。硬盤中還有足夠的空間。我不知道它如何終止在中間,最後一點。
感謝任何有關如何解決此問題的建議,因爲它需要很長時間才能完成,到那時我需要等待。
@Nordenheim,對於CLI,max_execution_time默認爲0(無限制)。 – Devon
你說過你在監視系統,但看起來你只是在監視負載。你在腳本中做了哪些實際的調試?你有沒有設置異常/錯誤處理?你檢查過系統日誌嗎? – Devon
@Nordenheim max_execution_time已經是0 –