Найти - Пользователи
Полная версия: Как указать timeout для подключения?
Начало » Django » Как указать timeout для подключения?
1
Paher
Добрый день, уважаемые!

Вопрос следующий. Для приложения Django используется удаленная база PostgreSQL. Для случая потери связи с этой базой на сервере локально предусмотрена подобная же база, в которую данные будут писаться при недоступности основной базы, а потом, при восстановлении связи, данные из локальной заносятся в основную базу.

в settings настройки следующие
    'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'database',
'USER': 'datauser',
'PASSWORD': 'pass',
'HOST': remote_host,
'PORT': '',
},
'local': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'database',
'USER': 'datauser',
'PASSWORD': 'pass',
'HOST': '',
'PORT': '',
}
}
и тогда в коде использую

    try:
db_data.save()
except psycopg2.OperationalError:
db_data.save(using='local')
Все работает, как задумано, одно плохо, прежде чем переключиться на локальную базу, проходит много времени(таймаут по дефолту). собственно, вопрос: как в настройках default указать таймаут подключения к удаленной базе?

я пробовал

        'OPTIONS': {
'connect_timeout': 5,
}
но получил в ответ ‘connect_timeout’ is an invalid keyword argument for this function

может, кто-то подскажет другой путь решения для этой же задачи?
magnet85
http://stackoverflow.com/questions/1084488/how-to-set-timeout-for-database-connection-in-django здесь пишут DATABASE_OPTIONS
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB