Ребята! Я новичок в RabbitMQ.
Я реализовал очередь для отправки / получения сообщения с помощью RabbitMQ. Но, кстати, процесс проверки сообщений по-прежнему выполняется постоянно. Я хочу реализовать функцию, чтобы проверять и отправлять мне уведомление, когда у меня появляется новое сообщение.
Например:
Предположим, что мы живем на сборке, и когда почтальон оставляет одно сообщение, он разговаривает со мной, и я получу его позже.
Мне нужно реализовать следующее: система отправляет мне уведомление, когда у меня появляется новое сообщение, поэтому мне не нужно все время проверять, поэтому я могу сэкономить память.
У RabbitMQ есть такая функция? Я использую Python для их подключения.
Вот код, который я написал:
def receive(self, timeout=None):
if self.channel is None or self.channel.is_closed:
self.tracer.warn('Channel is closed! Trying to connect before emit message')
self._connect()
if self.channel.is_open:
body = None
for (method, properties, body) in self.channel.consume(
queue=self.name,
auto_ack=self.consumer_conf['auto_ack'],
exclusive=self.consumer_conf['exclusive'],
inactivity_timeout=timeout):
if method is None:
self.tracer.warn('Timeout on receive message')
else:
self.tracer.debug('Received message...')
self.channel.basic_ack(method.delivery_tag)
break