Celery rpc vs amqp结果后端

时间:2017-08-31 06:33:37

标签: rabbitmq celery rpc amqp

rpc结果后端与amqp后端有何不同?我在changelog中看到它取代了它,但是虽然它是作为协议编写的(使用://),但基础协议仍然是amqp,对吗?

例如,result_backend = 'rpc://' vs result_backend = 'amqp://'。如果我使用rpc作为后端,当broker_use_ssl标志设置为true时它是否也使用SSL?

1 个答案:

答案 0 :(得分:8)

考虑一个场景,其中4个客户端必须每个队列100个任务。

如果是amqp后端,它将创建400个唯一队列并将结果存储在这些队列中。

rpc后端的情况下,它将只创建4个队列(每个客户端1个)并在每个队列中存储100个结果,从而显着提高性能,因为没有为每个队列创建队列的开销任务。

因此,amqp作为后端已弃用,将在下一版本中完全删除。

rpc后端使用相同的publish/consume mechanism of amqp。如果您将broker_use_ssl设置为True,那么它将使用SSL。