2017-04-15 1 views
1

나는 axonframework로 이벤트 기반의 proramming을 탐색하기 시작했습니다. 이벤트를 제기하고 처리하는 것에 대한 지원이 있음을 알았습니다.axonframework를 사용하여 여러 인스턴스에서 이벤트 발생시키기 및 처리하기

나는 http를 사용하여 다른 인스턴스/jvm에서 서로 통신하는 여러 서비스가있는 시나리오가 있습니다.

이제 서비스 통신에 이벤트를 사용하려고합니다. 네트워크를 통해 이벤트를 전달하고 다른 jvm/host에서 실행되는 서비스로 어떻게 처리 할 수 ​​있는지 잘 모르겠습니다.

axonframework는 이에 대한 지원을 제공합니까, 아니면이를 위해 메시징 미들웨어와 직접 통합해야합니까?

답변

2

Axon은 메시징 미들웨어가 필요한 경우도 있지만,이를 지원합니다. Axon은 메시징 자체보다는 API에 중점을 둡니다.

이벤트 저장소를 사용하는 경우 게시 한 이벤트를 저장할 수 있으며 해당 노드에서 다른 노드를 자신의 속도로 읽을 수 있습니다. Axon은 JPA/JDBC 및 MongoDB를 기반으로하는 이벤트 저장소를 지원합니다.

이벤트를 저장하고 싶지 않거나 필요가 없으면 대신 메시지 브로커를 사용할 수 있습니다. Axon은 Spring AMQP를 통해 AMQP 메시지 브로커를 지원합니다. Axon은 당신을 위해 메시지의 serialization/deserialization을 수행합니다.

이 경우 Axon의 이점은 메시징 구현을 비즈니스 논리에서 추상화한다는 것입니다. 비즈니스 로직은 이벤트 버스에 이벤트를 게시하고 Axon은이를 구성된 브로커에 게시합니다.

+0

답변 해 주셔서 감사합니다. 이벤트 버스가 이벤트의 맵핑을 프로듀서 및 comsumer 측의 주제로 추상화하는 방법에 대한 샘플 또는 문서를 알려주십시오. – user6594900

+0

참조 가이드 확인 : https://docs.axonframework.org/part3/event-processing.html#distributing-events – Allard

관련 문제