completeAllOnStop
- это «нормальный» критерий завершения.Агрегатор Camel реализует интерфейс ShutdownAware
, а критерии completeAllOnStop
указывают для контекста Camel, что агрегатору требуется некоторое дополнительное время перед выключением для завершения агрегации.
forceCompletionOnStop
, с другой стороны, пытается завершить все агрегации во время процесса выключения (prepareShutdown
).
Так что мне они тоже кажутся очень похожими, оба пытаются завершить все агрегации до закрытия контекста Camel.Я бы рекомендовал использовать completeAllOnStop
, потому что это, кажется, более активный способ.См. Также Camel Docs для получения дополнительной информации о стратегии отключения .
Я не знаю, если вы получаете "двойную проверку", если вы настроите их обоих: -)
Имейте в виду, что даже forceCompletionOnStop
пропускается , если отключение является принудительным отключением !В этом случае Camel пытается отключиться как можно быстрее.Насколько я знаю, Camel выполняет принудительное отключение, если обычное отключение не удается в течение тайм-аута.