Как обрабатывать запросы сервлета при длительном отключении

Нам необходимо внедрить механизм постепенного отключения в наше приложение Servlet.

РЕДАКТИРОВАТЬ: Мы хотим сделать его максимально простым, который будет обрабатывать сигнал уничтожения, отправленный через операционную систему »с функцией. Это позволит системным администраторам использовать встроенные утилиты оболочки (kill или taskkill в Windows), в противном случае им придется установить другую утилиту просто для "говорить" с сервером.

Этот механизм работает в два этапа:

при запросе на отключение отрицать определенные критические действияблокировать до завершения ранее инициированных критических действий; это может занять несколько часов

Этап № 1 реализован на нашем уровне DAO. Этап № 2 реализован в нашем методе ServletContextListener # contextDestroyed

Наша проблема в том, что после вызова contextDestroyed контейнер сервлетов перестает обслуживать дальнейшие HTTP-запросы.

РЕДАКТИРОВАТЬ: contextDestroyed вызывается, когда кто-то вызывает операционную системуубить функцию на серверепроцесс.

Мы хотели бы, чтобы приложение работало во время фазы # 2, уведомляя пользователей о том, что некоторые действия недоступны.

Ответы на вопрос(1)

Ваш ответ на вопрос