我有一个活动队列,它将包含来自Publisher的所有消息。根据消息处理结果,我的使用者读取这些消息和Acks/Nacks。
while (true)
{
var ea = (BasicDeliverEventArgs)consumer.Queue.Dequeue();
var body = ea.Body;
var message = Encoding.UTF8.GetString(body);
var processed = ProcessMessage(message)
if (processed)
我尝试将消息路由到不同的队列,但我无法理解这个问题(可能是一个简单的问题),如果我的应用程序应该发送多个消息还是只发送一个消息。
例如,我想启动一个作业,该作业发出一条消息,并在正确的队列中进行传递。消费者(工人)做他的工作,并在完成时发送响应,这应该做几件事(例如,数据库更新,发送邮件...):但是怎么做呢?
1.)将队列与路由关键字绑定,例如:job.doe.* to queue db- update,send-mail the consumer db the db update and mail send?
2.)创建一个db交换,绑定到db-update,创建一个发送邮件交换,队列se
如果我尝试将一条消息发送到一个用户被拒绝了“发送消息”权限的队列中,那么发送的消息就会消失。它不会出现在死信队列中,也不会出现在即将离开的队列中,也不会出现在我想要查看的任何其他地方。在发送消息时也不会引发任何类型的异常。
那条信息怎么回事?它真的只是被吃掉了还是我错过了什么?
下面是我用来发送消息的代码:
var q = new MessageQueue(@"[ComputerName]\Test");
q.Send("foo");
我将感谢您对此的想法。
Node app 1 sends data to a RabbitMQ queue. The data contains a unique ID.
Node app 2 requests data with a specific ID from the RabbitMQ queue.
如您所见,我需要能够从队列中选择特定的消息,而不仅仅是下一条可用消息。
这个是可能的吗?我该怎么做呢?
谢谢。