Я новичок в таких брокерах сообщений, как RabbitMQ, которые мы можем использовать для создания задач/очередей сообщений для системы планирования, такой как Celery.
Теперь вот вопрос:
Я могу создать таблицу в PostgreSQL, к которой можно добавлять новые задачи и использовать такую потребительскую программу, как Celery.
С какой стати я хочу установить для этого совершенно новую технологию, такую как RabbitMQ?
Теперь я считаю, что масштабирование не может быть ответом, поскольку наша база данных, такая как PostgreSQL, может работать в распределенной среде.
Я погуглил, какие проблемы создает база данных для конкретной проблемы, и обнаружил:
- опрос поддерживает занятость базы данных и низкую производительность
- блокировка стола → опять низкая производительность
- миллионы строк заданий → опять же, опрос неэффективен
Теперь, как RabbitMQ или любой другой подобный брокер сообщений решает эти проблемы?
Кроме того, я узнал, что протокол AMQP
это то, что он следует. Что в этом хорошего?
Можно ли использовать Redis в качестве брокера сообщений? Я нахожу его более похожим на Memcached, чем на RabbitMQ.
Пожалуйста, пролите немного света на это!