У меня есть несколько продюсеров задач, которые добавляют работу в очередь. У меня также есть несколько потребителей, которые поддерживают эту очередь. Поскольку эти очереди являются FIFO, они выгружаются в том же порядке, в каком они были добавлены.
В моем сценарии задачи добавляются в очередь из HTTP-запросов. Каждая задача связана с учетной записью, и нет ограничения скорости. Поэтому возможно, что задачи из одной учетной записи наводят очередь сообщений.
Чтобы решить эту проблему, я искал реализацию очереди, которая позволяет честно обрабатывать заданные задачи из нескольких учетных записей в круговом режиме.
В настоящее время я прибегал к использованию Redis с некоторыми сценариями Lua, которые были выбраны для эмуляции очереди с циклическим циклом, но было интересно, существуют ли какие-либо существующие топологии очередей, которые это делают?