Крючок выключения для Django с mod_wsgi
У меня есть простой сервер Django, который запускает и управляет некоторыми сервисами в фоновом режиме.
Я хочу остановить эти службы, когда сервер остановится.
Посмотрев в Интернете, я нашел это решение:
signal.signal(signal.SIGINT, _stop_services)
И он отлично работает, когда я запускаю сервер с python manage.py runserver.
Но, когда я запускаю сервер с движком Apache и mod_wsgi и перезапускаю/останавливаю сервер apache, обратный вызов не вызывается.
Я также пробовал использовать SIGTERM и даже модуль atexit, но ни один из них не сработал.
Есть ли в Django какое-либо встроенное решение для этого? Я знаю, что в пакетах типа aiohttp можно добавить слушателя, который будет вызван, когда сервер выключится.