Как стать автором
Обновить

Комментарии 14

Черезвычайно интересно.
Кроме того интересно, какую нагрузку способен выдерживать сервер подобной конфигурации под Django. Цифр, добавьте цифр.
А как тестировать? Если б был готовая методика тестирования, я бы провел тесты, например, без memcached, без lighttpd и т.д.
Но, насколько я понял, очень непросто сделать обобщенный тест. А тестировать просто свое конкретное приложение не хочется - смысла нет особого.
Для тестирования используют несколько приложений:
Siege
Http_load
ab

Что бы не изобретать велосипед, Zada, рекомендую ознакомиться с результатами тестирования http://www.alrond.com/ru/2007/jan/25/rez…
Там же описывается методика тестирования.
Про ab понятно. Вопрос именно в проекте для тестирования.
Проект http://static.alrond.com/source_dj.txt имеет мало общего с реальными проектами.
Hello World-ы не очень-то интересно тестировать.
К тому же, пользы от кэширования, например, на Hello World-е видно не будет.
Я не про тестирование, как таковое, а как вообще ведет себя сервер подобной конфигурции (слабоват по современным меркам), на что способен, не задыхается ли. Вот про что. А про бенчмарки обобщенные и так написано много.
Советую посмотреть в сторону nginx для отдачи статики.
Пока поставил то, что советуют в официальной документации.
В будущем попробую nginx.
> Пока что взял дешевый сервер с 1.8 МГц процессором и 512 Мб памяти.
Наверное, 1.8 ГГц?
Точно, спасибо :-D
Я ставил свой проект на Django на RedHat. Делал сразу на nginx таким образом: процесс джанги запускается
  $ manage.py runfcgi method=threaded daemonize=true socket=/var/run/dj.sock
в настройке nginx указывал, что определенные урлы (скажем /back_office ) проксировались по FastCGI в этот сокет, все остальное (картинки, цсс, скрипты) отдавалось сразу nginx-ом.
Я поставил nginx + fastcgi. Статику отдаю так же nginx'ом. В итоге имеем 1 быстрый веб-сервер вместо 2-х. Вообще с трудом представляю, зачем для Django тяжеловесный Apache. Никаких особых возможностей апача джанго не требуется.
Апач позволяет сделать запуск Django по требованию. Если, скажем, есть несколько не сильно посещаемых сайтов, то это позволит сэкономить память.
После установки memcached перед его запуском следует создать директорию /var/run/memcached.
Также в случае исключительно локального применения memcached полезным окажется отредактировать параметры запуска (в файле /etc/init.d/memcached) так, чтобы прослушивался только loopback-интерфейс:
daemon memcached -d -p $PORT -l 127.0.0.1 -u $USER -m $CACHESIZE -c $MAXCONN -P /var/run/memcached/memcached.pid $OPTIONS
Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории