Rabbitmq 官方给的NET consumer示例代码如下,但使用过程,会遇到connection断开的问题,一旦断开,这个代码就会报错,如果你的消费者端是这样的代码的话,就会导致消费者挂掉。
usingSystem;usingRabbitMQ.Client;usingRabbitMQ.Client.Events;usingSystem.Text;classReceiveLogs
{public static voidMain()
{var factory = new ConnectionFactory() { HostName = "localhost"};using (var connection =factory.CreateConnection())
{using (var channel =connection.CreateModel())
{
channel.ExchangeDeclare("logs", "fanout");var queueName =channel.QueueDeclare().QueueName;
channel.QueueBind(queueName,"logs", "");var consumer = newQueueingBasicConsumer(channel);
channel.BasicConsume(queueName,true, consumer);
Console.WriteLine("[*] Waiting for logs." +
"To exit press CTRL+C");while (true)
{var ea =(BasicDeliverEventAr