Нужна помощь в создании потребителя Rabbitmq как служба Windows? -- rabbitmq поле с участием amqp пол Связанный проблема

Need help in creating RabbitMQ consumer as windows service?


0
vote

проблема

русский

Этот код работает нормально с консольным приложением, но он не работает с приложением службы Windows. // код для получения сообщения из очереди

 <код>  public void ReceiveMessage()     {         const string EXCHANGE_NAME = "EXCHANGE3";         ConnectionFactory factory = new ConnectionFactory();        //Rabbit MQ connection         using (IConnection connection = factory.CreateConnection())         {             using (IModel channel = connection.CreateModel())             {                 channel.QueueDeclare("task_queue", true, false, false, null);                  channel.BasicQos(0, 1, false);                 var consumer = new QueueingBasicConsumer(channel);                 channel.BasicConsume("task_queue", false, consumer);                 //Waiting in loop to get message                  while (true)                 {                     var ea =                         (BasicDeliverEventArgs)consumer.Queue.Dequeue();                      Object message = Desserialize(ea.Body);                      //Acknowledge one or more delivered message                     channel.BasicAck(ea.DeliveryTag, false);                 }              }         }     }   
Английский оригинал

This code works fine with console application but it doesnt work with Windows service application. //code to receive message from queue

 public void ReceiveMessage()     {         const string EXCHANGE_NAME = "EXCHANGE3";         ConnectionFactory factory = new ConnectionFactory();        //Rabbit MQ connection         using (IConnection connection = factory.CreateConnection())         {             using (IModel channel = connection.CreateModel())             {                 channel.QueueDeclare("task_queue", true, false, false, null);                  channel.BasicQos(0, 1, false);                 var consumer = new QueueingBasicConsumer(channel);                 channel.BasicConsume("task_queue", false, consumer);                 //Waiting in loop to get message                  while (true)                 {                     var ea =                         (BasicDeliverEventArgs)consumer.Queue.Dequeue();                      Object message = Desserialize(ea.Body);                      //Acknowledge one or more delivered message                     channel.BasicAck(ea.DeliveryTag, false);                 }              }         }     } 
</div
     
     
     

Список ответов

Связанный проблема

5  Задача сельдерея ETA выключена, используя rabbitmq  ( Celery task eta is off using rabbitmq ) 
Я получил задачи сельдерей, происходящие в порядке, используя настройки по умолчанию в руководствах и RABLIPMQ, работающих на Ubuntu. Все в порядке, когда я з...

0  Замена сообщениями с реляционной базой данных  ( Replacing messaging with relational database ) 
У меня есть сценарий, где мое веб-приложение хочет поднять некоторые события. Одиночное событие приведет к нескольким действиям (I.E. PUB-модель в сообщении)....

1  Сельдерей Multi с очередями настроили не получать задания от Django  ( Celery multi with queues set up not receiving tasks from django ) 
Я запускаю своих работников со следующей командой: Celery - MyApp Multi Start 4 -L Debug -q1: 3 Queue1, Queue2 -q: 4 Queue3 Рабочие начинаются очень хор...

0  Как получить список перегородок весенней пакетной задачи, работающего в Master и Plave Tomcat  ( How to get list of partitions of spring batch job running in master and slave to ) 
Я работал на приверенном примере весной пакетной администрации, принимая Весенняя партия Talk как ссылки. Пример отлично побежал, как я хотел. Используя сер...

22  Опубликовать / Подписаться Надежные сообщения: redis vs rabbitmq  ( Publish subscribe reliable messaging redis vs rabbitmq ) 
фон Я делаю публикую / подписаться типичное применение, где издатель отправляет сообщения потребителю. Издатель и потребитель находятся на разных машинах,...

93  Удаление очередей в rabbitmq  ( Deleting queues in rabbitmq ) 
У меня есть несколько очередей, работающих с rabbitmq. Несколько из них не используются сейчас, как я могу удалить их? К сожалению, я не установил <код> auto_...

3  Как установить основные свойства сообщения для сообщения в rabbitmq?  ( How to set the basic message properties for message in rabbitmq ) 
Я использую rabbitmq Java Client API.I хочу установить основные свойства для сообщения, а также получить идентификатор сообщения сообщения. Если возможен, пож...

1  Весенний AMQP - обнаружение отклоненных сообщений?  ( Spring amqp detect rejected messages ) 
Есть ли путь весной AMQP для обнаружения, когда потребитель отклонил сообщение? Мое приложение объявляет обмен, но потребитель объявляет очередь. Я знаю, чт...

3  Обмен и очередь Rabbitmq не создаются автоматически  ( Rabbitmq exchange and queue are not created automatically ) 
. Я создал новое пружинное приложение, которое нажимает сообщения на сервер rabbitmq. Мой файл java my rabbitmqconfig выглядит следующим образом: <код> @Conf...

1  Rabbitmq не может найти ERL после обновления Mac OS  ( Rabbitmq unable to find erl after mac os update ) 
После обновления высокой Sierra до 10.13.5, Rabbitmq не может найти ERL, когда я бегу: <код> /usr/local/Cellar/rabbitmq/3.7.3/sbin/rabbitmq-server Я пол...

1  Как добавить больше шифров на rabbitmq?  ( How to add more ciphers to rabbitmq ) 
Когда я проверяю список шифров, оказывает поддержку rabbitmq / erlang, я вижу следующее: <код> [root@node ~]# rabbitmqctl eval 'ssl:cipher_suites().' [{dhe_...

1  Как управлять ручным ACK с пружинным облачным потоком кролика?  ( How to manage manual ack with spring cloud stream rabbit ) 
Я попробовал несколько способов управлять ручным ACK с rabbitmq, особенно на основе это Предыдущий пост , но к сожалению, ни один из них не работает. В мое...

2  Не удается подключиться к консоли управления RABLIPMQ, когда SSL включен - Centos Docker Container  ( Cannot connect to rabbitmq management console when ssl is enabled centos docke ) 
Я установил rabbitmq в контейнере докера. Я использовал CentOS: последнее изображение для создания этого контейнера. Шаги, которые я следовал, чтобы установит...

34  Как гарантировать доставку сообщений с сельдереем?  ( How to guarantee message delivery with celery ) 
У меня есть приложение Python, где я хочу начать делать больше работы в фоновом режиме, чтобы она была лучше, так как он станет шире. В прошлом я использовал ...

19  Rabbitmq: Что такое значение по умолчанию X-Message-TTL  ( Rabbitmq what is the default x message ttl value ) 
Я не смог найти в документации RABBITMQ. По умолчанию значение X-Message-TTL поставляется с установкой. Я знаю, как установить его на желаемое значение, но ...

Связанный проблема

5  Задача сельдерея ETA выключена, используя rabbitmq 
0  Замена сообщениями с реляционной базой данных 
1  Сельдерей Multi с очередями настроили не получать задания от Django 
0  Как получить список перегородок весенней пакетной задачи, работающего в Master и Plave Tomcat 
22  Опубликовать / Подписаться Надежные сообщения: redis vs rabbitmq 
93  Удаление очередей в rabbitmq 
3  Как установить основные свойства сообщения для сообщения в rabbitmq? 
1  Весенний AMQP - обнаружение отклоненных сообщений? 
3  Обмен и очередь Rabbitmq не создаются автоматически 
1  Rabbitmq не может найти ERL после обновления Mac OS 
1  Как добавить больше шифров на rabbitmq? 
1  Как управлять ручным ACK с пружинным облачным потоком кролика? 
2  Не удается подключиться к консоли управления RABLIPMQ, когда SSL включен - Centos Docker Container 
34  Как гарантировать доставку сообщений с сельдереем? 
19  Rabbitmq: Что такое значение по умолчанию X-Message-TTL