訊息中介軟體 推還是拉

2021-10-24 15:02:58 字數 453 閱讀 3314

訊息系統內有兩個角色:消費者和生產者

需求是生產者產生了乙個業務內容,需要給消費者,這裡可以引入兩種方式來處理:

1. 生產者直接推內容給消費者(代表:apache flume)

(1)優點:

i. **開發方便。

(2)缺點:

i. 生產者決定內容推送速率,不同消費速率的消費者不好處理。

ii. 如果生產者推送內容速度大於消費者消費速率時,消費者無法控制,可能會崩潰。

2. 生產者推訊息,消費者從生產者拉取內容(代表:kafka)

(1)優點:

i. 消費者可以自主決定時否批量從生產者拉取資料。

(2)缺點:

i. **開發略複雜。

ii. 如果一直沒有訊息推送,消費者會不停輪詢生產者。不過可以通過配置輪詢間隔來解決這個問題

綜上建議是採用方案2 生產者推訊息,消費者從生產者拉取內容 

訊息中介軟體

1.訊息的優先順序 2.訊息排序 3.訊息過濾 4.訊息持久化 5.訊息重試 6.事務的支援 7.broker滿 生產者,佇列,消費者 訊息佇列的優點 1 解耦2 非同步訊息,系統響應 在jms中,有兩種訊息模型 點對點模式和發布訂閱模式。1.在點對點模式中 有三種角色 1 訊息佇列,傳送者,接受者...

訊息中介軟體

如何理解訊息中介軟體?訊息中介軟體是儲存訊息的乙個容器,與資料庫不同的是資料庫儲存的資料是可以被修改的,而訊息中介軟體一般不會被修改 訊息中介軟體在消費的生產者與消費者產生,相當於乙個中間人的角色,提供了路由保證訊息的傳遞,如果消費者不能及時接收,訊息會保留下來,知道消費者上線 保證在存活期內 訊息...

訊息中介軟體

訊息中介軟體是在訊息的傳輸過程中儲存訊息 訊息傳遞過程中不能更改 的容器。訊息中介軟體再將訊息從它的原中繼到它的目標時充當中間人的作用。訊息中介軟體的主要目的是提供路由並保證訊息的傳遞 如果傳送訊息時接收者不可用,訊息佇列會保留訊息,知道可以成功傳遞為止,當然,訊息佇列儲存訊息也是有期限的。訊息傳送...