1. 程式人生 > >Rabbitmq的排程策略

Rabbitmq的排程策略

Rabbitmq的排程策略是指Exchange在收到訊息後依據什麼規則把訊息投到一個或多個佇列中儲存。它根兩個因素相關:Exchange的型別和Exchange和Queue的繫結關係BindingKey。

Exchange的內建的型別有4種:

  1. fanout型別的Exchange是把收到的訊息投到所有跟它繫結的Queue中;
  2. direct型別的Exchange是精確匹配投遞,把訊息投到和它的RoutingKey相同的BindingKey對應的佇列上;
  3. topic型別的Exchange跟direct型別有點類似,但BindingKey可以用萬用字元(*匹配一個詞,#表示匹配多個詞),它把訊息投遞到所有跟訊息RoutingKey匹配的Bindingkey對應的佇列上,特別的BingingKey為#時,匹配所有的訊息的RoutingKey,此時Exchange收到的所有訊息都會投遞到該佇列中;
  4. header型別的Exchange是根據訊息的header屬性匹配,用的較少。