如果我们在投影后触发事件,会有哪些弊端?

问题描述 投票:0回答:1

某些项目环境-FYI

在我们的系统中,我们对黄瓜使用了一些验收测试。在测试运行中,我们使用一套完整的微服务系统(本地计算机)。事件源由Axon Event Store管理。

场景

我们将命令应用于聚合并引发业务事件。投影被实现为事件处理程序。其他服务正在监听业务事件并读取书面数据(REST)。

我们这样做是为了使活动保持较小。

为了克服业务事件和预测之间的最终一致性期,而在其他服务中进行读取时,我们在黄瓜步骤中有很多声明,例如

Thread.sleep(5000L);

但是睡眠值取决于基础硬件的性能指标。因此测试很脆弱。

问题投影写入数据后是否可以触发事件?这样我们就可以保证数据的真实性。

event-sourcing cucumber-java axon eventual-consistency
1个回答
0
投票

仅出于同步读取模型的目的而触发事件(通过您的域层)对我来说有点不可思议。我建议您可以订阅您的读取模型,并在同步它时得到通知。我们已经实现了与STOMP类似的功能。

在我们的例子中,我们的前端订阅了一个用户购物车并接收更新。

© www.soinside.com 2019 - 2024. All rights reserved.