如何保持訊息的順序?

 常見問題 > 使用 Apache ActiveMQ Classic > 如何保持訊息的順序?

ActiveMQ Classic 會保持單一生產者傳送到主題 (topic) 上所有消費者的訊息順序。如果佇列 (queue) 上只有一個消費者,則單一生產者傳送的訊息順序也會被保持。

如果單一佇列上有多個消費者,消費者將會競爭訊息,並且 ActiveMQ Classic 將會在其間進行負載平衡,因此順序將會遺失。有關此問題及其解決方法的背景知識,請參閱

  • 獨佔消費者,它允許一次只有一個消費者從佇列中消費,以保持順序
  • 訊息群組,它將佇列上的訊息分割成平行的虛擬獨佔佇列,以確保傳送到單一訊息群組(由 JMSXGroupID 標頭定義)的訊息將保持其順序,但不同的群組將會負載平衡到不同的消費者。

Apache、ActiveMQ、Apache ActiveMQ、Apache 羽毛標誌以及 Apache ActiveMQ 專案標誌是 The Apache Software Foundation 的商標。版權所有 © 2024,The Apache Software Foundation。根據Apache 授權 2.0授權。