我编写了代码来从RabbitMQ
队列中获取消息,并通过添加任务计划程序每5分钟执行一次该程序。
但是,这不是实时处理。延迟5分钟。
我想使其实时处理。当有人在RabbitMQ
队列中添加消息时,.NET程序应立即选择该消息以进行进一步处理。
任何指针将不胜感激。
我想您不是在谈论真正的实时,而是在尽快获取消息。
这是通过在RabbitMQ中使用EventingBasicConsumer完成的>
var consumer = new EventingBasicConsumer(model);
consumer.Received += (ch, ea) =>
{
try
{
var body = ea.Body;
var message = Encoding.UTF8.GetString(body);
}
catch (Exception e)
{
Console.WriteLine(e);
throw;
}
};
channel.BasicConsume(queueName, false, consumer);