Axon框架的最新版本提供了订阅查询API,可用它订阅特定查询模型的更新,同时提供了截止期管理器,可用它调度截止期消息。最近发布的3.3版本还增加了Axon-Kafka模块,可使用Kafka来发送和接收事件。
有了新的订阅查询API后,就无需通过定期检查查询模型来确定模型是否被更新,相反,现在可以给模型添加订阅,从而接收它们的所有更新。
利用新的截止期管理器,可以安排截止期消息在一个特定时间点发布。然后,可以通过添加一个用于处理截止期消息的函数,在一个Aggregate或Saga实例的范围内处理该消息。
借助Axon-Kafka模块,用户可以使用Kafka发送和接收事件。Kafka为流事件提供了解决方案,因此,在从Kafka源接收事件时,Axon重放事件处理器。对于是否应该使用KafkaStreams来处理事件回溯,既有人赞同,也有人提出质疑,Axon的开发人员也对此进行了讨论。在最终的实现中,Axon把Kafka作为可流式化的消息源,以一种在分布式的方式接收事件。
其他改进包括:
最近发布了更新版本3.3.2。这个版本修复了三个已知的问题,强烈建议那些还在使用版本3.3的用户进行升级。
Axon框架是JVM平台的开源产品,为基于CQRS和事件溯源架构模式的系统提供构建块。该框架是由Allard Buijze于2009年创建,并基于Apache许可(2.0版)进行发行。这里有些基于Axon的小型示例应用供下载。
AxonIQ在今年早些时候发布了自己的事件源数据库AxonDB,该数据库支持基于推送的事件发布并完全符合ACID的事务模型,这意味着一个事务中可包含多个事件。这里有一个免费的开发者版本供下载。
阅读英文原文:Axon Framework 3.3 with a Subscription Query API and Kafka Support
感谢无明审校。
领取专属 10元无门槛券
私享最新 技术干货