동일한 유형의 이벤트를 사용하는 FirstConsumer
및 SecondConsumer
두 명의 소비자가 있습니다. 그러나 SecondConsumer
의 작업은 부분적으로 FirstConsumer
에 의해 수행되는 작업의 출력에 따라 달라집니다.MassTransit 소비자가 동일한 이벤트를 소비하는 순서를 지정하십시오.
SecondConsumer
에 의해, 이벤트가 항상가 FirstConsumer
에 의해 해당이 이루어집니다 이후 처음으로 소비 될 수 있도록하는 방법이 있나요?
문제를 해결하기위한 빠르고 쉬운 방법은이를 하나의 소비자로 결합하여 거기에 동시성을 보장하는 것입니다. 그러나 소비자는 책임이 다르므로이를 피하는 것이 좋습니다.
또 다른 해결 방법은 이벤트를 마지막 작업 인 FirstConsumer
으로 게시 한 다음 SecondConsumer
을 변경하여 해당 이벤트를 대신 소비하는 것입니다.
Automatonymous에 대한 빠른 읽기도했지만 작업을위한 도구로 느껴지지 않습니다.
MassTransit에서이를 구성하고 SecondConsumer
을 적용하여 FirstConsumer
이 작업을 완료 할 때까지 기다릴 수 있습니까?
첫 번째 이벤트 처리기에서 게시 한 두 번째 이벤트를 두 번째 이벤트 처리기에 필요한 항목으로 게시 한 다음 두 번째 이벤트 처리기에 필요한 이벤트를 게시하지 않는 것이 좋습니다. 복합 이벤트. –
그래, 기본적으로 이벤트를 다른 이벤트로 다시 게시하고 두 번째 컨슈머에서 이벤트를 소비 할 수는 있지만 포크/조인 방식이 아키텍처 측면에서 어떤 일이 일어나야하는지에 가깝다고 느낍니다. 나는 무언가를 시험하고 싶다. 그리고 무언가를 간단하게 만들려고 시도하는 좋은 방법처럼 느낀다. :) – Slowacki