У меня есть один производитель, одна очередь и потребители N. Производитель создает 'рабочие места', которые будут выполнены потребителями. Я хотел бы использовать модель приема, в которой потребитель вынимает работу из очереди, когда это заканчивает предыдущую работу, не модель передачи с циклическим алгоритмом, где рабочие места разделены на равный потребителям.
Мои потребители используют тот же самый код, но когда я управлял им, первый соединяет и получает все рабочие места. Смотря на него в отладке, первое добирается, все кроме второго и т.д. не получает сообщения (даже когда это выполняет, получают, прежде чем сначала каждый выполняет, получают который прибыль это некоторые рабочие места).
URL связи: "amqp://guest:[email protected]/? brokerlist ='tcp://127.0.0.1:5767'"
Кодекс для каждого потребителя делает:
- creates AMQConnection
- creates queue session with auto ack
- connection start
- create queue
"ADDR:" + queueName + "; {create: always, link:{x-subscribes: {exclusive: false}}}"
- create consumer
Это теоретически возможно к achive, использующему очередь AMQP? Если так, как?