Django ORM периодически умирает при запуске в конечных точках fast API с использованием gunicorn
Я использую django ORM вне приложения django, в асинхронных конечных точках быстрого api, которые я запускаю с помощью gunicorn.
Все работает нормально, за исключением того, что однажды в "голубой луне" я получаю эти странные ошибки, когда рабочий сервер, по-видимому, "перестает работать" и не может обрабатывать какие-либо запросы из-за разрыва подключений к базе данных.
Ниже я прикрепил трассировку стека, но для меня она действительно не имеет никакого смысла.
Я использую postgres без каких-либо коротких тайм-аутов (на стороне базы данных), и то, как я настраиваю connectiong, позволяет проверять работоспособность при каждом запросе, что, как я предполагаю, избавит от любых проблем со стилем "устаревшего соединения":
DATABASES = {
"default": dj_database_url.config(
default="postgres://postgres:pass@localhost:5432/db_name",
conn_max_age=300,
conn_health_checks=True,
)
}
Мне интересно, есть ли у кого-нибудь какие-либо идеи относительно того, как я мог бы это отладить? Это действительно делает django ORM непригодным для использования из-за самопроизвольного отключения приложений.
Ниже приведен пример ошибки, которую я получаю здесь: