到底什麼是訊息佇列?Java中如何實現訊息佇列?
訊息佇列有無數開源實現,一般沒必要自己實現。zmq也好rabbitmq也好甚至redis也好,找一個合適的裝上用就行
就好像rdbms/nosql一樣
技術都是解決問題的,訊息佇列解決的是將突發大量請求轉換為後端能承受的佇列請求,比如你的伺服器一秒能處理100個訂單,但秒殺活動1秒進來1000個訂單,持續10秒,在後端能力無法增加的情況下,你可以用訊息佇列將總共10000個請求壓在佇列裡,後臺consumer按原有能力處理,100秒後處理完所有請求(而不是直接宕機丟失訂單資料)
所以說首先別自己實現訊息佇列(在你用過各種訊息佇列,還看過一兩份原始碼之前),其次沒有合適的需求別用訊息佇列,YAGNI