From ee9bfa1dd53183a1863502144af04dd3fdccb00d Mon Sep 17 00:00:00 2001 From: mjanez <96422458+mjanez@users.noreply.github.com> Date: Mon, 23 Sep 2024 19:42:15 +0000 Subject: [PATCH] Optimize uWSGI configuration for improved performance and resource management --- ckan/setup/start_ckan.sh.override | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/ckan/setup/start_ckan.sh.override b/ckan/setup/start_ckan.sh.override index 91cfeb4a..b025cc1a 100644 --- a/ckan/setup/start_ckan.sh.override +++ b/ckan/setup/start_ckan.sh.override @@ -56,6 +56,7 @@ chown -R ckan:ckan $CKAN_LOGS_PATH/xloader # Set the common uwsgi options. ## Add thunder-lock to prevent multiple workers from running the same job and buffer-size to prevent large headers +## To increase performance, you can adjust the number of processes (-p) (More info: https://uwsgi-docs.readthedocs.io/en/latest/Options.html & https://www.bloomberg.com/company/stories/configuring-uwsgi-production-deployment/) UWSGI_OPTS="--thunder-lock \ --buffer-size=65535 \ --ignore-sigpipe \ @@ -66,8 +67,18 @@ UWSGI_OPTS="--thunder-lock \ --http [::]:5000 \ --master --enable-threads \ --lazy-apps \ - -p 2 -L -b 32768 --vacuum \ - --harakiri $UWSGI_HARAKIRI" + --vacuum \ + --harakiri $UWSGI_HARAKIRI \ + --max-requests 500 \ + --max-worker-lifetime 3600 \ + --reload-on-rss 1024 \ + --processes 3 \ + --buffer-size 32768 \ + --disable-logging \ + --log-4xx \ + --log-5xx \ + --auto-procname \ + --procname-prefix-spaced 'ckan '" if [ $? -eq 0 ] then