2011-02-10 62 views
1

有沒有一種方法來設置BJ工作,並確保一定的「類型」的2不同時運行?有一種簡單的方法來處理BJ併發性

我們正在運行24個獨角獸,它將使一個BJ來啓動,對於那些每一個。這不是什麼大不了的事情,我們喜歡多個職位處理人員敲除後臺任務。數據導入是個例外。我們希望能夠告訴它不要同時運行其中的一個以上。

在北京這是可能的,或者我們應該動過的東西像resque?要做到這一點

回答

1

一種方法是約束你的數據導入工作到一定的優先級,並確保只有一個延遲工作正在加快優先的工作。例如,如果你想要讓你的所有其它作業從優先級0運行到99,讓您的數據導入作業的優先級100運行,那麼你可以把所有的延遲的工作人員從0的MIN_PRIORITY運行的99 MAX_PRIORITY然後可以讓一個延遲的工作人員從min_priority 100運行到max_priority 100,確保只有一個工作人員正在運行這些工作。這將確保沒有兩個導入數據作業(優先級100)同時運行。

+0

我們實際上使用後臺作業不延遲作業https://github.com/jkraemer/bj ...這是問題的一部分,我們應該只是切換到延遲作業或resque – Ben 2011-02-10 15:19:48

相關問題