문제

I understand from spring integration monitoring sample https://github.com/spring-projects/spring-integration-samples/tree/master/intermediate/monitoring how control bus can be used to shutdown an integration flow. I was wondering how is

@integrationMBeanExporter.stopActiveComponents(false, 20000)

different from just shutting down application context

applicationContext.stop()

in which the flow is loaded. Will that not achieve the same result.

도움이 되었습니까?

해결책

Actually you are right. From big hight they do the same with components: call Lifecycle.stop().

The difference that your application continue to work in first case and you can invoke Lifecycle.start() again. And IntegrationMBeanExporter does it only for integration components.

The applicationContext.stop() fully shutdown Spring Application context - in most cases just stop entire application.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top