作記録

記憶代わり

RabbitMQのチュートリアルのまとめ

RabbitMQのチュートリアルのうち、1 ~ 6 までの Spring AMQP のチュートリアルに出てくる言葉をまとめる。

1. Producing

メッセージを送る事を指す。

1-1. Producer

メッセージを送るプログラムを指す。
Deliver, Publisherという言い方もしている。
後述するが、Spring AMQP において Producer は直接 Queue にメッセージを送らず Producer はメッセージがどの Queue に送られるのかに関心を持たない。
Producer は Exchange にメッセージ を送る。

2. Queue

郵便ポストであり郵便配達人である。
メッセージを受け取り、そのメッセージを Consumer に届ける。

3. Consuming

メッセージを受ける事を指す。

3-1. Consumer

メッセージを受けるプログラムを指す。 Subscriber という言い方もしている。

4. Binding Key

Exchange の種類により役割が変わる Exchange が持つKey。

5. Routing key

メッセージが持つkey。

6. Binding

Exchange と Queue を紐づけること

7. Exchange

Producer からメッセージを受ける。
受けたメッセージをどの Queue に送るのかを知っている。

7-1. FanoutExchange

1個 ~ 複数個の Queue と Binding する Exchange。
Binding Keyの意味は無く、設定しても無視される。

7-2. DirectExchange

1個 ~ 複数個の Queue のうち メッセージの Routing key と Binding key が一致するもののみを Binding する Exchange。

7-3. TopicExchange

メッセージの Routing key は ドットで区切られた単語のリストを持つ。
Binding keyも同様だが、Binding key は下記の2つの文字が使える。

  • アスタリスク(*) ...1つの単語を置き換える
  • ハッシュ(#) ... 0 ~ 複数の単語を置き換える。