跳到內容

AMQP / RabbitMQ

Restorm 實作的是 AMQP 0-9-1,也就是 RabbitMQ 的協定。

在樹狀結構中按右鍵 ▸ 新增 ▸ AMQP 請求

一個處於「發布」模式的 AMQP 分頁:broker 的 URL、虛擬主機、憑證資訊、Exchange、路由金鑰與 JSON 負載

欄位作用
URLamqp://amqps://
Vhost虛擬主機;預設為 /
使用者 / 密碼密碼接受密鑰類型的值
模式publishsubscribebrowse
欄位作用
ExchangeExchange 的名稱;空字串代表預設的 Exchange
路由金鑰路由金鑰,接受 {{variables}}
負載訊息的內文
欄位作用
佇列被消費的佇列
自動確認預設啟用;停用它即可觀察重新投遞的行為
Prefetch在途中尚未確認的訊息數量上限

查看佇列的內容而不消費它:Restorm 會從裡面取出有限數量的訊息(預設 50 則),然後 再把它們放回去。

想在不擾動系統的前提下回答「這個佇列裡到底有什麼?」,用的就是這個模式。它可以在請求 分頁中使用;但與另外兩種模式不同,它沒有專屬的情境動作。

AMQP 連線(以 subscribe 模式消費佇列,並在每則訊息時發出一個事件)、 AMQP 發布(發布到該請求的 Exchange 與路由金鑰)以及關閉 AMQP 連線。請參閱 連線與串流

八個目標:JavaScript(amqplib,涵蓋發布、消費與瀏覽)、Python(pika)、 amqp-publishamqp-consume(amqp-tools)、rabbitmqadmin