Написал простейшее fcgi приложение, запускаеться так spawn-fcgi -s /tmp/python-fcgi.sock -u www -g www -n -- /usr/local/bin/python /root/test.py
import fastcgi;
import time;
def myapp(environ, start_response):
write = start_response('200 OK', [('Content-Type', 'text/html; charset=utf-8')]);
lines = [];
time.sleep(30);
for k, v in environ.iteritems():
lines.append("<b>%s</b>: %s<br />\n" % (k, v));
return lines;
s = fastcgi.ForkingWSGIServer(myapp, 5);
s.serve_forever();
И запустил 6 параллельных запросов (
http://app.test/), и с удивлением обнаружил accept в fastcgi сервере не был вызван одноврменно 6 раз, а был выполнен строго последовательно. Т.е запросы ушли параллельно а accepts выполнились один за другим в результате последний 6-й запрос выполнялся не 30 секунд и 30*6 секунд. Собственно говоря вопрос почему так происходит?