獲取RabbitMQ消息發送確認Acks的DeliveryTag對應的消息內容


//生產者
//消息確認事件
channel.BasicAcks += Channel_BasicAcks;
。。。。。。
while (a <= 5000)//channel.WaitForConfirms()
                    {
                        //String message = Console.ReadLine();
                        String message = a + "......";
                        //消息內容
                        byte[] body = Encoding.UTF8.GetBytes(message);
                        //發送消息
                        channel.BasicPublish(exchange: "", routingKey: queueName, basicProperties: null, body: body);
                        a += 1;
                        Console.WriteLine("channel.NextPublishSeqNo:" + channel.NextPublishSeqNo);
                    }
。。。。。。

 

 private static void Channel_BasicAcks(object sender, BasicAckEventArgs e)
    {
            Console.WriteLine("BasicAcks e.DeliveryTag:" + e.DeliveryTag);
            Console.WriteLine("BasicAcks e.Multiple:" + e.Multiple);
    }
channel.NextPublishSeqNo 每次在程序啟動后都從1開始增長,和業務數據的關系建議另外處理,比如與業務數據ID一起寫入本地緩存等

 

 

 

 

推薦: https://blog.csdn.net/hellozpc/article/details/81436980


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM