Я использую Django для обработки довольно длинных HTTP-запросов, и мне интересно, есть ли у моей настройки некоторые ограничения, когда я получал много запросов одновременно.
lighttpd.conf fcgi:
fastcgi.server = ( "a.fcgi" => ( "main" => ( # Use host / port instead of socket for TCP fastcgi "host" => "127.0.0.1", "port" => 3033, "check-local" => "disable", "allow-x-send-file" => "enable" )) )
Раздел запуска скрипта Django init.d:
start-stop-daemon --start --quiet \ --pidfile /var/www/tmp/a.pid \ --chuid www-data --exec /usr/bin/env -- python \ /var/www/a/manage.py runfcgi \ host=127.0.0.1 port=3033 pidfile=/var/www/tmp/a.pid
Запуск Django с использованием приведенного выше сценария приводит к созданию многопоточного сервера Django:
www-data 342 7873 0 04:58 ? 00:01:04 python /var/www/a/manage.py runfcgi host=127.0.0.1 port=3033 pidfile=/var/www/tmp/a.pid www-data 343 7873 0 04:58 ? 00:01:15 python /var/www/a/manage.py runfcgi host=127.0.0.1 port=3033 pidfile=/var/www/tmp/a.pid www-data 378 7873 0 Feb14 ? 00:04:45 python /var/www/a/manage.py runfcgi host=127.0.0.1 port=3033 pidfile=/var/www/tmp/a.pid www-data 382 7873 0 Feb12 ? 00:14:53 python /var/www/a/manage.py runfcgi host=127.0.0.1 port=3033 pidfile=/var/www/tmp/a.pid www-data 386 7873 0 Feb12 ? 00:12:49 python /var/www/a/manage.py runfcgi host=127.0.0.1 port=3033 pidfile=/var/www/tmp/a.pid www-data 7873 1 0 Feb12 ? 00:00:24 python /var/www/a/manage.py runfcgi host=127.0.0.1 port=3033 pidfile=/var/www/tmp/a.pid
В журнале lighttpd error.log я вижу load = 10, который показывает, что я получаю много запросов одновременно, это происходит несколько раз в день:
2010-02-16 05:17:17: (mod_fastcgi.c.2979) got proc: pid: 0 socket: tcp:127.0.0.1:3033 load: 10
Правильна ли моя настройка для одновременной обработки множества длинных HTTP-запросов (каждый может длиться несколько минут)?