1. 程式人生 > >RabbitMQ 客戶端控制訊息

RabbitMQ 客戶端控制訊息

1.生產者傳送訊息,消費者接受訊息並回執

傳送回執有兩種方法 一、使用channel.basicConsume(queue,true,callback); 二、使用channel.basicAck(tag,true/false);

在這裡插入圖片描述

在這裡插入圖片描述

2.通過channel.basicConsume向伺服器傳送回執,刪除服務上的訊息

在這裡插入圖片描述

3.不傳送回執,伺服器的訊息一直存在

在這裡插入圖片描述

4.消費者拒絕接受訊息,並拋棄伺服器的訊息

channel.basicReject(tag,true/false);

在這裡插入圖片描述

5.消費者拒絕接受訊息,不拋棄伺服器的訊息

在這裡插入圖片描述

6.消費者使用basicGet取得一個訊息

在這裡插入圖片描述

7.requeue,true重新進入佇列

拒絕接受一個或多個訊息 在這裡插入圖片描述

8.取消消費者

在這裡插入圖片描述

9.事務控制生者者傳送訊息

在這裡插入圖片描述 在這裡插入圖片描述

10.事務控制生者者傳送訊息開啟confirm模式的方法

普通confirm模式:每傳送一條訊息後,呼叫waitForConfirms()方法,等待伺服器端confirm。實際上是一種序列confirm了。 批量confirm模式:每傳送一批訊息後,呼叫waitForConfirms()方法,等待伺服器端confirm。 非同步confirm模式:提供一個回撥方法,服務端confirm了一條或者多條訊息後Client端會回撥這個方法。 普通confirm模式

在這裡插入圖片描述