我们有多种发布和订阅领域事件的服务。我们通常做的是每当我们发布事件时记录事件,每当我们处理事件时记录事件。我们基本上用它来应用编排模式。
我们没有在这些系统中进行事件溯源,并且在发布/处理后没有对它们进行编程使用。这是我们选择不将它们存储在持久容器(例如数据库或事件存储)中的主要驱动因素。
问题是,我们这样做是否遗漏了一些基本的东西? 存储事件是必须的吗?
最佳答案
我将排队消息视为系统消息,即使它们代表事件驱动架构中的某些域事件(发布/订阅消息传递)。
关于它们的存储绝对没有硬性规定。如果您想保留它们,您可以让消息传递机制将它们转发到某个审核端点进行存储,然后在一段时间后将其删除(如果需要)。
如果不存储它们,您不会错过任何基本的东西。
关于events - 我们应该将事件存储在数据库中吗? (事件驱动设计),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63404582/