Так недавно я играл с Django на платформе Jython и хотел увидеть его производительность в «продакшене». Сайт, на котором я тестировал, был просто представлением return HttpResponse ("Time% .2f"% time.time ())
, поэтому база данных не использовалась.
Недавно я играл с Django на платформе Jython и хотел увидеть его производительность в «продакшене». Сайт, на котором я тестировал, был просто представлением return HttpResponse ("Time% .2f"% time.time ())
, поэтому база данных не использовалась.
Так недавно я играл с Django на платформе Jython и хотел увидеть его производительность в «продакшене». Сайт, на котором я тестировал, был просто представлением return HttpResponse ("Time% .2f"% time.time ())
, поэтому база данных не использовалась.
Я пробовал следующие две комбинации (измерения выполнены с помощью ab -c15 -n500 -k
, все в Ubuntu Server 10.10 на VirtualBox):
Сервер приложений J2EE (Tomcat / Glassfish), развернутый WAR файл
Я получаю такие результаты, как
Запросы в секунду: 143,50 [# / сек] (среднее)
[...]
Процент запросов, обслуженных за определенное время (мс)
50% 16
66% 16
75% 16
80% 16
90% 31
95% 31
98% 641
99% 3219
100% 3219 (самый длинный запрос)
Очевидно, что сервер иногда зависает на несколько секунд, что недопустимо. Я предполагаю, что это как-то связано с перезагрузкой Jython, потому что запуск оболочки jython
также занимает около 3 секунд.
AJP обслуживает с использованием исправленного пакета flup (+ Apache в качестве интерфейса)
Примечание: ошибка пакет, используемый manage.py runfcgi
, мне пришлось исправить его, потому что поддержка потоковой передачи / разветвления flup, похоже, не работает на Jython (-> AJP был единственным рабочим методом).
здесь те же результаты, но иногда на последние 100 запросов даже не отвечают (но серверный процесс все еще жив).
Я спрашиваю об этом на SO (вместо serverfault), потому что он очень специфичен для Django / Jython. Есть ли у кого-нибудь опыт развертывания сайтов Django на Jython? Может быть, есть другой (более быстрый) способ обслуживания сайта? Или еще слишком рано использовать Django на платформе Java?