2014-01-19 42 views
28

使用node-celery,我們可以啓用節點將Celery作業推送到任務隊列。我們如何讓節點成爲芹菜工作者並使用隊列?使用node.js創建芹菜工作者

+2

我正在尋找相同的解決方案。如果你找到任何東西,你能告訴我嗎? – nathanengineer

+0

@nathan什麼都沒有。你可以嘗試upvoting這個問題! – Nyxynyx

+0

@Nyxynyx您是否找到了實現這一目標的最佳方式? – Swamy

回答

6

對於芹菜如果終點是amqp。結帳Celery.js Github任何節點進程作爲amqp使用者啓動都會正常工作。對於其他每個self.conf.backend_type類型,您都可以擁有不同的消費者。以下示例僅適用於amqp。

一個這樣的例子。下面的message可能是Celery任務對象。

var amqp = require('amqp'); 
var connection = amqp.createConnection({ host: "localhost", port: 5672 }); 
connection.on('ready', function() { 
    connection.queue("my_celery_queue", function(queue){ 
    queue.bind('#'); 
    queue.subscribe(function (message) { 
     //eat your Celery work here 
    }) 
    }) 
})