消息中間件的研究 (一)

基礎概念:

  1. 消息(Message):指應用間傳送的數據,相似文本字符串、JSON、內嵌對象等
  2. 消息中間件(MQ):指利用高效可靠的消息傳遞機制進行與平臺無關的數據交流,並基於數據通訊來進行分佈式系統的集成。經過提供消息傳遞和消息排隊模型,能夠在分佈式環境下擴展進程間的通訊。
 

消息中間件做用:

     消息中間件的主要應用於擔任消息傳遞的中轉站,相似生活中的郵遞局,但消息中間件的功能特性更加豐富,比較熟悉的應用場景是應用間的解耦和高流量下的削峯,其主要做用以下:
  1.  解耦:消息中間件可以擔任一個隱含的,基於數據的接口層的角色,在接口兩端的系統遵照約束下,容許獨立地擴展或修改兩邊的處理過程。
  2. 冗餘:消息中間件能夠把消息進行持久化直到消息已經被消費完成。有些狀況下,利用這樣特性,可以規避處理數據丟失的風險。
  3. 削峯:相似一些秒殺業務場景會出現訪問量劇增的情況,可是這樣的突發流量並不常見。若是以能處理這類峯值爲標準而投入資源,無疑是巨大的浪費。使用消息中間件可以使關鍵組件支撐突發訪問壓力,不會由於突發的超負荷請求而徹底崩潰。
  4. 可恢復性:消息中間件可以下降進程間的耦合度,當一個處理消息的進程掛掉時,加入消息中間件的消息仍然能夠在系統恢復後進行處理【 消息中間件能夠把消息進行持久化直到消息已經被消費完成】
  5. 緩衝:在任何重要的系統中,都會存在須要不一樣處理時間的元素。消息中間件經過一個緩衝層來幫助任務最高效率地執行,寫入消息中間件的處理會盡量的快速,有助於控制和優化數據流經系統的速度。
  6. 異步通訊:對於不想也不須要當即處理的系統數據,消息中間件提供了異步處理機制,容許應用把一些消息放入消息中間件中,但並不當即處理它,例如系統日誌處理。
  7. 擴展性:
  8. 順序保證:
相關文章
相關標籤/搜索