有序消費和無序消費的選擇
更新時間 2023-05-24 16:09:07
最近更新時間: 2023-05-24 16:09:07
分享文章
在業務場景允許的情況下,優先選擇無序消息,或者在業務能變通的情況下,將有序消息轉化為無序消息。
無序消息的優點:
- 生產者可以使用多進程、多線程往同一個Topic發送消息,性能更好。
- 消費者可以使用多進程、多線程同時消費,性能較好。
- 可以充分使用集群的Failover特點,無須依賴自動主備切換(切換過程服務會中斷),包括:
- 當集群中某一Broker節點故障時,不影響業務消息生產,消息將failover發送到其它節點;
- 當集群中某一Broker節點故障時,不影響其它節點數據消費,故障恢復后即可消費。
- 能動態地擴容。
有序消息的缺點:
- 對于有序消息,當節點故障時,Queue數不會變化,生產與消費都會出現異常,直到故障節點恢復。
- 對于有序消息,需要將所有消息消費完,并且停止客戶端,才能擴容。