RabbitMQ支持以下五種消息模型:
簡單模式(Simple Mode):生產(chǎn)者將消息發(fā)送到隊列,消費者從隊列中獲取消息并處理。簡單模式是最基本的消息模型。
工作隊列模式(Work Queue Mode):生產(chǎn)者將消息發(fā)送到隊列,多個消費者從隊列中獲取消息并處理。每個消息只能被一個消費者處理,可以實現(xiàn)任務(wù)的并行處理。
發(fā)布/訂閱模式(Publish/Subscribe Mode):生產(chǎn)者將消息發(fā)送到交換器(Exchange),交換器將消息廣播到多個隊列,每個隊列綁定到交換器上。每個消費者都可以從自己的隊列中獲取消息并處理。
路由模式(Routing Mode):生產(chǎn)者將消息發(fā)送到交換器,交換器根據(jù)消息的路由鍵(Routing Key)將消息發(fā)送到綁定到交換器上的特定隊列。消費者根據(jù)自己關(guān)心的路由鍵綁定到隊列上,只接收符合自己關(guān)心的路由鍵的消息。
主題模式(Topic Mode):生產(chǎn)者將消息發(fā)送到交換器,交換器根據(jù)消息的路由鍵和通配符模式將消息發(fā)送到符合匹配規(guī)則的隊列。消費者根據(jù)自己關(guān)心的通配符模式綁定到隊列上,只接收符合自己關(guān)心的消息。