Как изменить период тайм-аута базы данных в django?
У меня есть скрипт django, который получает данные из модели.
try:
myuser = MyUser.objects.get(id=user_id)
except Exception as e:
print(e)
# do next process
Тогда я хочу сделать следующее:
- Когда база данных остановлена или не достигнута, я хочу поймать и выполнить следующий процесс.
Однако моя программа возвращает 502 немедленно, потому что она достигает таймаута лямбды aws.
2022-06-23 19:09:51 127.0.0.1 - - [23/Jun/2022 19:09:51] "POST /webhook HTTP/1.1" 502 -
Function 'MyDjangoFunction' timed out after 300 seconds
No response from invoke container for MyDjangoFunction
Invalid lambda response received: Lambda response must be valid json
Итак, моя идея состоит в том, чтобы установить django - sql timeout короче.
Есть ли какой-нибудь хороший метод?
Что вы ищете CONN_MAX_AGE
:
https://docs.djangoproject.com/en/dev/ref/settings/#conn-max-age
Например:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'mydatabase',
'USER': 'mydatabaseuser',
'PASSWORD': 'mypassword',
'HOST': '127.0.0.1',
'PORT': '5432',
'CONN_MAX_AGE': 30,
}
}