diff --git a/api/compose/django/server.sh b/api/compose/django/server.sh index 0e4c737af..9c7709516 100755 --- a/api/compose/django/server.sh +++ b/api/compose/django/server.sh @@ -1,3 +1,3 @@ #!/bin/bash -eux python /app/manage.py collectstatic --noinput -gunicorn config.asgi:application -w ${FUNKWHALE_WEB_WORKERS-1} -k uvicorn.workers.UvicornWorker -b 0.0.0.0:5000 +gunicorn config.asgi:application -w ${FUNKWHALE_WEB_WORKERS-1} -k uvicorn.workers.UvicornWorker -b 0.0.0.0:5000 ${GUNICORN_ARGS-} diff --git a/api/config/asgi.py b/api/config/asgi.py index b4a8105de..d578a3bff 100644 --- a/api/config/asgi.py +++ b/api/config/asgi.py @@ -1,6 +1,7 @@ import os os.environ.setdefault("DJANGO_SETTINGS_MODULE", "config.settings.production") +os.environ.setdefault("ASGI_THREADS", "5") import django # noqa diff --git a/api/config/settings/common.py b/api/config/settings/common.py index a20081dd2..43a7a29f5 100644 --- a/api/config/settings/common.py +++ b/api/config/settings/common.py @@ -270,7 +270,7 @@ DATABASES = { "default": env.db("DATABASE_URL") } DATABASES["default"]["ATOMIC_REQUESTS"] = True -DATABASES["default"]["CONN_MAX_AGE"] = env("DB_CONN_MAX_AGE", default=60 * 60) +DATABASES["default"]["CONN_MAX_AGE"] = env("DB_CONN_MAX_AGE", default=60 * 5) MIGRATION_MODULES = { # see https://github.com/jazzband/django-oauth-toolkit/issues/634 diff --git a/changes/changelog.d/db.enhancement b/changes/changelog.d/db.enhancement new file mode 100644 index 000000000..da25ea858 --- /dev/null +++ b/changes/changelog.d/db.enhancement @@ -0,0 +1 @@ +Reduce the number of simultaneous DB connections under some deployment scenario