Мы запускаем службу приложений для Linux в контейнере Docker.
Когда вещи работают, они работают очень хорошо. Но иногда наш сайт становится недоступным по непонятной причине. Наши отчеты о состоянии здоровья выглядят так:
Теперь, через некоторое время, приложение становится полностью недоступным. Отчеты о проверке работоспособности доступны, но в журнале out docker мы находим такие записи:
2017-11-18 08:01:50.060 ERROR - Container for --- site ---is unhealthy. Stopping site.
2017-11-18 08:32:49.295 INFO - Issuing docker login to sever: http://---
2017-11-18 08:32:49.837 INFO - docker login to http://--- succeeded
2017-11-18 08:32:49.858 INFO - Issuing docker pull ---
2017-11-18 08:39:49.096 INFO - docker pull returned STDOUT>> 40: Pulling from ---
Помогает только перезапуск приложения. Потом все приходит в норму и все работает как положено.
Подчеркиваю, сайт не зависает на каждом отчете «Недоступен» из проверки работоспособности. Он зависает рандомно. Процессор/память в норме, ничего необычного и сумасшедших всплесков нет.
Само приложение имеет общий фильтр исключений, и никакие неперехваченные исключения не выходят за пределы приложения.
Любые идеи, почему это может произойти?