0
我有一個任務,將需要很長時間,所以我把它分成3部分,並希望啓動三個線程,將同時工作(我確保沒有任何訪問的相同的變量或任何東西,別擔心,他們嚴格處理自己的數據集)。sidekiq多線程如何去
至於我可以告訴sidekiq推出每個工作一個新的線程,所以我在做app/workers
三名工人importer
,importer2
,importer3
,所有。在我的控制器之一,我有這樣的代碼:
Importer.perform_async(arrays[0], date)
Importer2.perform_async(arrays[1], date)
Importer3.perform_async(arrays[2], date)
render json: 1
我的問題是:是,最好的方式來處理呢?
這似乎很奇怪,一個)的請求,控制器會需要很長時間來渲染1
並在sidekiq日誌,我可以看到Importer JID-639e67d2aa20cce885690dc7 INFO: start
以及同爲Importer2
而不是3,然後再sidekiq只是killed
退出
當我重新啓動sidekiq,我得到的Importer3 ... start
,然後它是唯一一個工作(它更新一個DB值,它是唯一一個changing`
任何想法,爲什麼?
同意。你做的是正確的事情,但這聽起來像你內存不足。 – 2014-12-02 23:01:07