우리는 한 달 전에 뮬을 사용하기 시작했습니다. 그리고 지금까지 좋은 학습이었습니다. 현재, 우리는 이질적인 시스템을 통합하는 많은 흐름을 구현했습니다. 우리에게 필요한 요구 사항 중 하나는 각 플로우의 끝에서 클린업 코드를 실행하는 것입니다. 파이널 라이저 구조와 더 비슷합니다.뮬 - 플로우 정리 코드 접근법
나는 우리의 모든 흐름을 따라갈 수있는 일반적인 접근법을 찾고있다.
주 - 플로우의 끝까지 단계를 추가하면 (일부는 클린업 코드를 실행할 수 있음) - 이전 단계를 완료 한 후에 해당 단계가 실행된다는 보장이 없습니다 (일부는 단계는 다른 스레드에서 실행되며 전체 흐름을 하나의 동기 스레드에서 실행하지 않으려합니다. 흐름의 모든 단계를 완료 할 때 구독자에게 알려주는 이벤트 메커니즘이 있습니까? 나는 노새 흐름 라이프 사이클이 여기에 잘 맞는지 확신 할 수 없다. 도와주세요.
감사합니다.
감사 스바 귀하의 제안에 대해. 내가 제공 한 링크를 확인했습니다. 흐름 완료에 대한 알림을 볼 수 없었습니다. 기본적으로 플로우 (모든 단계)가 완료된 후에 정적 코드 조각을 실행하려고합니다. note - 질문에서 언급했듯이, 어떤 단계가 마지막 단계를 실행하는지 알지 못합니다. 이러한 단계는 다른 스레드에서 실행됩니다. – Arun
이 알림을 확인하십시오 : org.mule.context.notification.PipelineMessageNotification – Seba
Thanks @ Seba. PipelineMessageNotification을 살펴 보았습니다. 그러나 그것이 어떻게 도움이 될지 이해하지 못합니다. 우리는 쇠사슬로 묶인 물건이 없습니다. 어쩌면 PipelineMessageNotification에 대한 나의 이해가 잘못되었을 수도 있습니다. 우리의 전형적인 흐름은 다음과 같습니다 : - <변압기 1> - <변압기 2> - - . 이제 우리는 동기 처리 전략이 없으므로 FTP는 별도의 스레드에서 실행되고 정리 단계는 다른 스레드에서 FTP의 것과 병렬로 호출됩니다. 이것이 우리 문제입니다. 우리는 기본적으로 을 실행하여 다른 모든 단계의 실행 완료를 원합니다. –
Arun