網頁

2022/11/17

RabbitMQ UI Headers Exchange 測試

RabbitMQ的headers exchange是依binding queue的header屬性決定訊息的傳送。


RabbitMQ UI管理介面測試 headers excahnge。

在[Exchanges]頁面建立exchange [Name]為"test-exchange-001",[Type]設為headres



在[Queues]頁面建立queue名為"test-queue-001"。

在test-exchange-001的設定頁面建立與test-queue-001的binding,在[Arguments]設定以下參數即為headers:

  • name=john
  • city=taipei
  • x-match=all

x-match=all作用為全部的headers參數相符時才傳送訊息到binding queue。





在test-exchange-001頁面的[Publish message]設定[Headers]參數如下;[Payload]輸入要傳送的訊息為"hello"。

  • name=john
  • city=taipei



按下Publish message發送即可成功把訊息發送給test-queue-001。

不過當只有一個headers參數相符時則無法把訊息送到binding queue,因為x-match=all要求全部headers參數相符才會轉送。

例如下面只有name=john參數相符,但少了另一city=taipei則無法把訊息送給test-queue-001。




若binding headers設定x-match=any則只要任一header參數滿足時即能傳送到binding queue。






沒有留言:

張貼留言