1. 程式人生 > >消息中間件

消息中間件

訂閱 同步 業務 發布-訂閱 後臺 分鐘 郵件服務 簡介 行集

簡介:
Message MiddleWare
消息中間件是在消息的傳遞過程中保存消息的容器。
消息中間件再將消息從它的源中繼到它的目標時,充當中間人的作用。

消息包括:訂單信息等,需要消費者處理的東西

特點:
1)異步處理模式  發送者發送消息而無需等待響應。消息發送者將消息發送到一條虛擬的通道上,消息接受者則訂閱或監聽該通道。
                 一條消息可能最終轉發給一個或者多個消息接收者,這些消息接收者無需對消息發送者做出同步回應。整個過程是異步的
2)松耦合 發送者和接受者不必了解對方 只需要確認消息
					發送者和接受者不必同時在線

消息傳遞服務模型:

點對點模型PTP:點對點模型用於生產者消費者之間的點到點的通信  隊列消息可放在內存中也可以是持久的。
					 特性:1)只有一個消費者
					 			 2)沒有時間依賴
					 			 3)接受者確認消息和接收處理請求
				 			 
發布-訂閱模型Pub-Sub:TOPIC 訂閱者發布者模型支持向一個特定的消息主題生產消息
				特性:1)每個消息可以有多個訂閱者
							2)訂閱後才能接收到消息
							3)持久訂閱和非持久訂閱(持久訂閱:訂閱方重啟後,發布方會重新發消息給訂閱方,互聯網公司常用。比如支付場景,要求強一致性的業務。
																		 非持久訂閱:重啟後,不會重新發消息,通知消息,一致性要求不高)
					    4)時間依賴 只有建立訂閱關系才能接受消息
					    5)持久訂閱:關系建立後,消息不會消失,不管訂閱者是否在線
					    6)非持久訂閱:訂閱者為了接受消息,必須一直在線
        
消息中間件過程:

應用程序A--消息中間件接口--發送隊列--通道代理--網絡--通道代理--接收隊列--消息中間件接口--應用程序B

 																					SUB1(訂閱-->確認)      緩存      (L2 cache)                  
 																					SUB2     	               論壇                  
  PUB(用戶信息更新)  主題A-->(投遞)
  																				SUB3       
 																					SUB4      			         熱點數據緩存		(L1 cache)
 																					
 																		
互聯網消息中間件應用場景:
1、網站用戶註冊、用戶密碼找回
	 填寫註冊信息-->用戶註冊服務-->消息中間件-->郵件服務
	                                         -->短信服務
	 PUB-SUB模式  持久訂閱(短信服務:設置30分鐘有效時間)
2、把日誌進行集中收集,用於計算PV、用戶行為分析(消息中間件進行緩沖、收集(監控網絡、負載)、存儲的角色)
   後臺進行數據分析(惡意刷單人)。
3、數據復制案例:
4、壓測:1)把消息中間件當做可靠的消息暫存地
				 2)定時消息投遞,模擬用戶訪問,進行系統性能壓測
5、消息廣播:1)緩存數據同步更新
						 2)往應用推送數據(發布訂閱模式  持久化訂閱)  比如更新本地數據:
						   												cache
						 數據變更-->消息中間件    cache
                                      cache


分類:

  

簡介:Message MiddleWare消息中間件是在消息的傳遞過程中保存消息的容器。消息中間件再將消息從它的源中繼到它的目標時,充當中間人的作用。
消息包括:訂單信息等,需要消費者處理的東西
特點:1)異步處理模式 發送者發送消息而無需等待響應。消息發送者將消息發送到一條虛擬的通道上,消息接受者則訂閱或監聽該通道。 一條消息可能最終轉發給一個或者多個消息接收者,這些消息接收者無需對消息發送者做出同步回應。整個過程是異步的2)松耦合 發送者和接受者不必了解對方 只需要確認消息發送者和接受者不必同時在線
消息傳遞服務模型:
點對點模型PTP:點對點模型用於生產者消費者之間的點到點的通信 隊列消息可放在內存中也可以是持久的。 特性:1)只有一個消費者 2)沒有時間依賴 3)接受者確認消息和接收處理請求 發布-訂閱模型Pub-Sub:TOPIC 訂閱者發布者模型支持向一個特定的消息主題生產消息特性:1)每個消息可以有多個訂閱者2)訂閱後才能接收到消息3)持久訂閱和非持久訂閱(持久訂閱:訂閱方重啟後,發布方會重新發消息給訂閱方,互聯網公司常用。比如支付場景,要求強一致性的業務。 非持久訂閱:重啟後,不會重新發消息,通知消息,一致性要求不高) 4)時間依賴 只有建立訂閱關系才能接受消息 5)持久訂閱:關系建立後,消息不會消失,不管訂閱者是否在線 6)非持久訂閱:訂閱者為了接受消息,必須一直在線 消息中間件過程:
應用程序A--消息中間件接口--發送隊列--通道代理--網絡--通道代理--接收隊列--消息中間件接口--應用程序B
SUB1(訂閱-->確認) 緩存 (L2 cache) SUB2 論壇 PUB(用戶信息更新) 主題A-->(投遞) SUB3 SUB4 熱點數據緩存(L1 cache) 互聯網消息中間件應用場景:1、網站用戶註冊、用戶密碼找回 填寫註冊信息-->用戶註冊服務-->消息中間件-->郵件服務 -->短信服務 PUB-SUB模式 持久訂閱(短信服務:設置30分鐘有效時間)2、把日誌進行集中收集,用於計算PV、用戶行為分析(消息中間件進行緩沖、收集(監控網絡、負載)、存儲的角色) 後臺進行數據分析(惡意刷單人)。3、數據復制案例:4、壓測:1)把消息中間件當做可靠的消息暫存地 2)定時消息投遞,模擬用戶訪問,進行系統性能壓測5、消息廣播:1)緩存數據同步更新 2)往應用推送數據(發布訂閱模式 持久化訂閱) 比如更新本地數據: cache 數據變更-->消息中間件 cache cache

分類:

消息中間件