2017-02-13 5 views
1

Как я могу реализовать очередь с настраиваемым x-message-ttl?RabbitMq: изменить x-message-ttl очереди

У меня есть очередь с x-message-ttl, установленная на 1 минуту, и я хочу изменить ее на 2 минуты во время выполнения. Как это можно достичь?

Я уже пробовал снова объявлять очередь с помощью x-message-ttl = 2 минуты, но ни ttl не меняется, ни сообщение не публикуется.

ответ

1

Если вы создаете очередь с аргументами x-message-ttl, вы не можете ее изменить, вам нужно удалить и воссоздать очередь.

, но вы можете использовать политики:

  1. создавать очереди без аргументы ТТЛ
  2. создать политику, например: rabbitmqctl set_policy expiry ".*" "{""expires"":1800000}" --apply-to queues

В этом случае вы можете изменить TTL очереди стоимость