2017-07-04 43 views
0

我有一個使用框架Axon 3構建的應用程序。是否有可能通過RabbitMQ與Axon 3重播活動

  • 有2個實例(JVM)
  • 第一個處理命令,並通知第二個與RabbitMQ的構建讀取模型數據庫。
  • 有一個事件存儲此應用程序(MongoDB的)

現在我想建立一個第三個實例,並且是能夠重現通過RabbitMQ的第一個實例的所有歷史事件來構建的初始狀態第三例?以及如何配置它?

我試圖the doc Axons的答案,看來我應該使用的TrackingEventProcessor而不是默認SubscribingEventProcessor,但它不允許與SpringAMQPMessageSource(在文檔中提到)

回答

0

軸突有兩種模式使用:跟蹤和訂閱。根據事件的來源,您可以選擇一種或兩種樣式。

AMQP是消息代理的規範。一旦消息被傳遞,它將從它被放置的隊列中移除。因此,在概念上,重播這些事件是不可能的,因爲它們不再存在於經紀人中。

如果重播很重要,請確保使用存儲郵件的郵件傳遞機制。在Axon中,EventStore正是如此。目前,Axon只有EmbeddedEventStore,但您可以讓接收節點中的Event Store指向與發送節點相同的數據庫。

目前,在AxonIQ,我們正在開發一個事件存儲服務器,它以更簡潔的方式處理這個事件(無需在實例之間共享數據源)。

+0

謝謝,事件存儲服務器聽起來對我們非常有趣,任何想法的發佈日期呢? – Lei

+0

我們預計在八月份的某個時候可以發佈測試版程序。如果您訂閱axoniq.io上的通訊,我們會盡快通知您測試版。 – Allard

相關問題