MQ常見面試題

消息中間件

 

什麼是MQ

 

爲什麼要使用MQ

 

 

1、如何避免消息重複投遞和重複消費

在生產數據時,消自體中必須要有一個bizId作爲去重依據

在消費一條消息的時候,自己判斷一下是否已經消費過了

2、消息丟失,如何保證消息的可靠性傳輸

消息丟失,可能出現在生產者,MQ,消費者;

生產者丟失:生產者發送數據到MQ的時候,可能因爲網絡問題半路搞丟了。

可以選擇MQ的事務功能,但是會降低吞吐量;

可以使用MQ的發送確認模式,發送消息給MQ之後等待MQ回傳確認消息,自己需要維護MQ分配的唯一ID

MQ中丟失:MQ開啓持久化,把消息持久化到磁盤

消費者丟失:接收到消息,還沒處理,進程掛掉了;

在消息處理完成之後,向MQ發送確認消息。

3、如何保證消息的順序性

場景:一個queue對應多個consumer,無法保證順序

保證順序:一個queue對應一個consumer

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章