在Axon Giftcard demo中,有一个GiftCard类,其注释为@Aggregate: @Aggregate @Profile("command") public class GiftCard { private final static Logger log = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass()); @AggregateIdentifier private String id; private int remain…

2020年8月26日 0条评论 33点热度 阅读全文

我在QuoteProjection.java中有这个课: package com.mycompany.myapp.query; import com.mycompany.myapp.command.domain.ProjectedQuote; import javax.persistence.EntityManager; public class QuoteProjection { private final EntityManager entityManager; . . . public void on(Cre…

2020年5月24日 0条评论 31点热度 阅读全文

我正在运行三个不同的服务(A,B和C),所有服务都已连接到axonserver 4.3.3。除了它们之外,我还包含一个包含所有事件的api服务,以便可以在所有服务之间共享它。当事件被触发时(由服务A说),其他服务(B和C)正在监听该事件,并且它们会做出相应的反应。现在我也想共享查询,以便当一个服务(比如说A)想要属于另一个服务(比如说B)的某些信息时,它可以直接触发相应的查询,该查询将被服务B侦听并返回该信息。 是否可以在轴突中使用(即像我们对事件所做的那样,在服务之间共享查询)? 如果允许,它是否遵循轴突最佳实践…

2020年5月15日 0条评论 21点热度 阅读全文

假设我要创建一个简单的请求批准系统,如果用户向其他用户请求某项内容,则应该创建该请求,这样我就有两个聚合用户,即Request 。创建请求后,它将触发 RequestSaga 发送 RequestUserCmd //Aggregate class @Aggregate class RequestAggregate { @AggregateIdentifier private lateinit var requestId: String @CommandHandler constructor(cmd: CreateR…

2019年12月13日 0条评论 57点热度 阅读全文

我试图通过Rabbitmq向基于axon4 spring boot的系统发送消息。收到消息,但未触发任何事件。我非常确定我缺少必不可少的部分,但是到目前为止我还无法弄清楚。 这是我的application.yml的相关部分 axon: amqp: exchange: axon.fanout transaction-mode: publisher_ack # adding the following lines changed nothing eventhandling: processors: amqpEvents…

2019年9月26日 0条评论 32点热度 阅读全文

我有一个问题,我必须在Spring-Boot中使用Atomikos和Axon框架(没有Axon Server)。我正在使用Oracle DB,并且正在使用多个线程(10)发送许多命令,在此之前,我为自己配置了JtaTransactionManager,但是在某些线程中,我遇到了这种异常:javax.transaction.xa。 XAException,从-6或-4或-3或ORA-02056引发:2PC:k2lcom:错误的两阶段命令编号rdonly from坐标:。在调试时,我看到CommandGateWay也在…

2019年9月5日 0条评论 35点热度 阅读全文

我已经开始在项目中使用Axon 4.3.1(最新版本),并且遇到了问题。 @eventhandler引发异常后,在哪里可以配置kafka重试策略? OBS:我正在使用SubscribingEventProcessor类型作为事件处理器(两个项目)。我正在使用单独的项目!命令模型使用mongo并在Kafka上发布事件。查询模型使用来自Kafka(eventbus)的事件。这样,可以使用单独的JVM。 @processinggroup(event-processor)配置为使用事件处理程序方法进行分类。我想在错误情况下…

2019年6月20日 0条评论 36点热度 阅读全文

如何使用同一应用程序运行的多个JVM实际管理Sagas 此应用程序的每个JVM应该使用相同的数据库吗?否则,跟踪 token 将不会在同一应用程序中“共享”吗? 如何在运行Sagas的同一应用程序之间分配事件?一个saga类型或saga实例是否总是在同一个应用程序上处理(直到它关闭,所以另一个实例负责)? 还是每个JVM都接收事件,并且相同类型的每个传奇都会运行? (并导致发送重复的命令和错误) 还有其他需要照顾的事情吗? 方案示例:3个不同的PC / VM上的3个相同的应用程序。名称为“SagaA”的Saga,可…

2019年5月20日 0条评论 47点热度 阅读全文