消息隊列mq

消息隊列mq本質就是一種存儲服務,和mysql、redis、mongo不同的是他的存儲會被消費,也就是說最終表現在存儲爲zero,

常用的消息隊列服務有:kafka、rocket mq。

主要解決應用耦合,異步消息,流量削鋒等問題;

 

很好奇我爲什麼要學習mq?因爲工作需要。

使用場景是這樣的:平臺服務有一個打包服務,這個打包服務比較耗費cpu, 對接的外部服務是一個訂單服務平臺,這個平臺會產生高併發的訂單,而每一筆訂單對於平臺服務來講就會執行一次打包服務,這樣的cpu耗費誰都頂不住,因此爲避免高併發導致的cpu崩潰,擬打算將訂單信息先放到中間件服務mq中,這樣一個生產者:訂單平臺,一個mq:kafka,一個消費者:平臺服務.

那麼mq在這個場景中表現出的作用就像是:使用消息隊列主要是爲了通過異步處理提高系統性能和削峯、降低系統耦合性。