Если мы запустим приложение KafkaStream в фоновом режиме (скажем, в Linux), есть ли способ передать внешнему приложению сигнал, который может инициировать постепенное отключение?
Как описано в документации (https://kafka.apache.org/11/documentation/streams/tutorial),, рекомендуется зарегистрировать хук отключения, который вызывает KafkaStreams#close() для чистого отключения:
KafkaStreams#close()
final CountDownLatch latch = new CountDownLatch(1); // attach shutdown handler to catch control-c Runtime.getRuntime().addShutdownHook(new Thread("streams-shutdown-hook") { @Override public void run() { streams.close(); latch.countDown(); } }); try { streams.start(); latch.await(); } catch (Throwable e) { System.exit(1); } System.exit(0);