我們使用Tibco EMS
作爲我們的消息系統,並使用apache camel
來編寫我們的應用程序。在我們的應用程序中,消息被寫入隊列。一個組件,concurrentConsumers
設置爲8,從隊列中讀取,處理消息,然後寫入另一個隊列。另一個組件,concurrentConsumers
再次設置爲8,然後從這個新的隊列中讀取,等等。到目前爲止,維護消息順序並不重要,但新的要求意味着它現在是。查看駱駝文檔,建議使用jmsxgroupid
來維護排序。不幸的是,Tibco EMS
沒有這個功能。在多線程應用程序中,有沒有其他方法可以保持駱駝的排序?我看過粘性負載平衡,但這似乎只適用於端點負載平衡。在多線程apache駱駝應用程序中維護排序
感謝
布魯斯
併發執行不能確保順序...特別是當任務需要不同的時間執行... EG網絡操作,如發送消息... –
檢查在這個鏈接http:// camel的resequencer EIP。 apache.org/resequencer.html – Namphibian
爲什麼jmsxgroupid不適用於TIBCO EMS?它是從一開始就支持的JMS規範的一部分(查看文檔) – Seb