當前的pyspider為pyspider (0.3.9) python 2.7.5
大概有200個項目,其中部分stop,運行狀態(tài)大概有100多個。
projectdb和resultdb 使用的是 mongodb collection有過百萬的數(shù)據(jù)。某些porjectdb 的task數(shù)據(jù)也有數(shù)十萬條
當我修改項目的itag 然后修改項目狀態(tài)為running,然后點run,顯示為紅色,看scheduler日志提示當前項目狀態(tài)不是run或者debug,然后schedular停止調(diào)度了。
scheduler運行一段時間也有時 停止調(diào)度。
當重啟scheduler 會打印很多諸如 :
[E 161019 15:07:37 scheduler:241] unknown project: whole_***
[E 161019 15:22:46 scheduler:767] not processing pack: **********:2e8087192edf9a9922701d2370cdcf5d http://www.******.com/157405/ 這樣的報錯, 重啟過程特別慢,將近兩個小時,看日志沒有其它別的異常。
2 回答

子衿沉夜
TA貢獻1828條經(jīng)驗 獲得超3個贊
scheduler 停止調(diào)度是所有 project 都停止調(diào)度還是你嘗試重啟的那個停止調(diào)度?
追蹤 scheduler 日志關(guān)于 project %s updated, status:%s, paused:%s, %d tasks
的內(nèi)容,看看 schduler 是否得知 project 狀態(tài)已改變。
unknown project
如果 project 確實存在,是不應(yīng)該出現(xiàn)的not processing pack
是正常的,scheduler 重啟后,先前分發(fā)的任務(wù)就沒法追蹤了
啟動時 scheduler 需要從數(shù)據(jù)庫中恢復(fù)所有活動任務(wù)的狀態(tài),如果任務(wù)很多確實會比較耗時

偶然的你
TA貢獻1841條經(jīng)驗 獲得超3個贊
這個問題已經(jīng)找到,pyspider的源碼中database下的mongodb下的statusdb的status_count查詢在數(shù)據(jù)量特別大的情況下查詢非常慢,會造成調(diào)度器啟動特別長
添加回答
舉報
0/150
提交
取消