首页 > 解决方案 > 将 Axon 事件发布到 Kafka 主题上

问题描述

我想通过我的聚合事件处理程序之一将事件发布到 axon Kafka 主题,因为我使用 kafka 作为我的事件总线。这样做的正确方法是什么?我应该直接将消息推送到主题还是可以AggregateLifecycle#apply(event)在这种情况下使用?我通过我想要发布另一个事件的事件处理程序之一从我的聚合中发布了多个事件。我正在使用轴突 4.2

标签: axon

解决方案


最简单的方法是开始使用Kafka Extension Axon 提供的。共享存储库包含创建 Axon Event 的发布端和消费端从和到 Kafka 主题的所有必要代码。为了配置方便,该项目中也有一个 Spring Boot Starter

此外,存储库有一个 (Kotlin) 示例项目,展示了如何配置它,您可以在此处找到该项目。最后,关于如何设置一切的完整描述,我强烈建议阅读 Axon 的参考指南,尤其是这里的 Kafka 页面。

我想建议您认为此扩展非常适合在 Axon 和非 Axon 应用程序之间进行通信,使 Kafka 成为“企业服务总线”的一种形式。 Axon Framework 中使用它作为EventBus替代是可行的,但需要对您进行大量微调。在这些场景中使用Axon Server会更明智,或者如果您确实必须,直接在应用程序之间共享包含您的事件的数据源。


推荐阅读