**數據冗余**:比如訂單系統,后續需要嚴格的進行數據轉換和記錄,消息隊列可以把這些數據持久化的存儲在隊列中,然后有訂單,后續處理程序進行獲取,后續處理完之后在把這條記錄進行刪除來保證每一條記錄都能夠處理完成。
**系統解耦**:使用消息系統之后,入隊系統和出隊系統是分開的,也就說只要一天崩潰了,不會影響另外一臺系統正常運轉
**流量削峰**:例如秒殺和搶購,我們可以配合緩存來使用消息隊列,能夠有效的頂住瞬間訪問量,防止服務器承受不住導致崩潰。
**異步通信**:消息本身使用入隊之后可以直接返回。
**擴展性**:例如訂單隊列,不僅可以處理訂單,還可以給其他業務使用。
**排序保證**:有些場景需要按照產品的順序進行處理比如單進單出從而保證數據按照一定的順序處理,使用消息隊列是可以的
**總結**: 以上都是消息隊列常見的使用場景,當然消息隊列只是一個中間件,可以配合其他產品進行使用