mq有什么用?
mq 是message queue ,消息隊(duì)列,也叫消息中間件,遵守JMS(java message service)規(guī)范的一種軟件。(同時(shí)還有另一個(gè)叫AMQP的應(yīng)用層協(xié)議,語(yǔ)言無關(guān)性不受產(chǎn)品 語(yǔ)言等限制,rabbitMQ支持這個(gè) )
是類似于數(shù)據(jù)庫(kù)一樣需要獨(dú)立部署在服務(wù)器上的一種應(yīng)用,提供接口給其他系統(tǒng)調(diào)用。
使用mq消息隊(duì)列可用6字概括:解耦、異步、削峰
解耦:將消息寫入消息隊(duì)列,需要消息的時(shí)候自己從消息隊(duì)列中訂閱,從而原系統(tǒng)不需要做任何修改。
異步:將消息寫入消息隊(duì)列,非必要的業(yè)務(wù)邏輯以異步的方式運(yùn)行,加快響應(yīng)速度
削峰:原系統(tǒng)慢慢的按照數(shù)據(jù)庫(kù)能處理的并發(fā)量,從消息隊(duì)列中慢慢拉取消息。在生產(chǎn)中,這個(gè)短暫的高峰期積壓是允許的。