Celery rpc vs amqp result backend

How is the rpc backend different from the amqp backend? I see in changelog that it replaced it, but although it is written as a protocol (with :// ), the underlying protocol is still amqp, right?

For example, result_backend = 'rpc://' vs result_backend = 'amqp://' . If I use rpc as a backend, does it also use SSL if the broker_use_ssl flag broker_use_ssl set to true?

+5
source share
1 answer

Consider a scenario in which 4 clients have to set 100 tasks in turn.

In the case of the amqp backend amqp it will create 400 unique queues and store the results in these queues.

In the case of the rpc backend rpc it will create only 4 queues (1 for each client) and save 100 results in each queue, which will lead to a significant increase in productivity, since there is no overhead for creating queues for each task.

For this reason, amqp as a backend is deprecated and will be completely removed in the next version.

rpc backend uses the same amqp publish / consume mechanism . If you set broker_use_ssl to True , then it will use SSL.

+1
source

Source: https://habr.com/ru/post/1271385/


All Articles