2010-12-01 2 views
1

Я развернул django-приложение, которое в основном работает нормально. Единственная проблема, с которой я сталкиваюсь, заключается в том, что иногда возникают зависания запросов, и я не могу найти причину этого. "Подвешивание" означает, например. если я нажимаю ссылку в бэкэнде администратора, браузер загружается (а в журнале доступа apache даже пока не появляется запрос GET), но не получает ответа. Только если я попрошу еще раз, он получит ответ.Django: задержки WSGI

Я опробовал множество различных WSGI-конфигураций, включая изменения режима Daemon/embedded, изменения количества процессов и потоков и т. Д. У меня просто нет идеи, где искать дальше. Вот мой текущий апач в Кoнфигурировании:

<VirtualHost myserver.com:80> 
    ServerName myserver.com 

    Alias /media/ /opt/myserver/static_media/admin/ 
    Alias /favicon.ico /opt/myserver/static_media/img/favicon.ico 

    WSGIScriptAlias//opt/myserver/myproject.wsgi 
    WSGIDaemonProcess myserver.com user=www-data group=www-data processes=2 threads=15 
    ErrorLog /var/log/apache2/myserver-error.log 
    CustomLog /var/log/apache2/myserver.log common 

</VirtualHost> 

И мой WSGI-файл:

import os, sys 
sys.path.append('/usr/local/django') 
sys.path.append('/opt/myproject') 

os.environ['DJANGO_SETTINGS_MODULE'] = 'settings' 

import django.core.handlers.wsgi 

application = django.core.handlers.wsgi.WSGIHandler() 

Любые идеи?

+0

Почему так много потоков? – 2010-12-01 09:41:51

+0

Это значение по умолчанию (http://code.google.com/p/modwsgi/wiki/QuickConfigurationGuide), btu Я также пробовал с меньшим количеством потоков, без успеха – schneck 2010-12-01 09:45:59

ответ

1

Проверьте журналы ошибок Apache. Там может быть ошибка python/stacktrace.

Я также думаю, что вы пропустите назначение демона к размещенной папке:

<Directory /opt/myserver/> 
    WSGIProcessGroup server.com 
    Order deny,allow 
    Allow from all 
</Directory> 
Смежные вопросы