rabbitmq-сервер начинает терять данные через длительные очереди
На окнах, когда я использую rabbitmq-server
start
/stop
Команды, данные через длительные очереди RabbitMQ удаляются. Кажется, когда я запускаю сервер RabbitMQ, заново создаются очереди.
Если я использую rabbitmqctl
stop_app
/start_app
Я не теряю никаких данных. Зачем?
Что произойдет, если мой сервер выйдет из строя и как я могу быть уверен, что не потеряю данные, если это произойдет?
2 ответа
Проблема конфигурации: я запускал rabbitmq из каталога rabbitmq sbin. Я переустановил rabbitmq и добавил rabbitmq в службы Windows. Теперь проблема потери данных была решена на моем компьютере. Когда я запускаю / останавливаю службу Windows, rabbitmq не теряет никаких данных
Создание длительных очередей недостаточно. Возможно, вам также понадобится объявить обмен как долгосрочный, а также отправлять "постоянные" сообщения.
В Java вы будете использовать:
channel.basicPublish("", "sample_queue",
MessageProperties.PERSISTENT_TEXT_PLAIN, // note that this parameter is not null!
message.getBytes())