Таким образом, было много статей как этот недавно, расхвалив достоинства Django Static Generator при использовании в сочетании с легким веб-сервером фронтенда. Это имеет большой смысл мне.
Однако я не получаю ничего как результаты, о которых другие люди сообщают - тысячи запросов в секунду - и я не знаю, почему это.
Я готовлюсь запускать модернизацию веб-сайта своей газеты. У меня есть он с помощью Статического Генератора на тестовом сервере прямо сейчас. И когда я выполняю Место размещения Apache на конкретной статической странице, я получаю довольно скудные результаты:
ab -c 10 -n 1000 http://journal.streamlister.com/news/
Concurrency Level: 10
Time taken for tests: 53.011 seconds
Complete requests: 1000
Failed requests: 0
Write errors: 0
Total transferred: 21281212 bytes
HTML transferred: 21067360 bytes
Requests per second: 18.86 [#/sec] (mean)
Time per request: 530.107 [ms] (mean)
Time per request: 53.011 [ms] (mean, across all concurrent requests)
Transfer rate: 392.04 [Kbytes/sec] received
Я смотрю top
на сервере, в то время как осада идет, и я вижу, что это не поражает Apache или сервер базы данных вообще. Таким образом, это, на самом деле, служит кэшируемой странице. Nginx работает, но это никогда не добирается выше 2%-го использования памяти. ЦП остается неактивными приблизительно 95 процентами.
Что я делаю неправильно? Я, возможно, неправильно сконфигурировал nginx так или иначе? Мой основной файл конфигурации вставляется ниже; включение характерного для этого сайта является в значительной степени копией демонстрационной конфигурации на Статической домашней странице Генератора. Я запускаю Ubuntu 9.10 на части Slicehost 256k.
user not_my_real_username;
worker_processes 4;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
worker_connections 8192;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
access_log /var/log/nginx/access.log;
sendfile on;
#tcp_nopush on;
keepalive_timeout 0;
#keepalive_timeout 65;
tcp_nodelay on;
gzip on;
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
Я не эксперт в этом случае. Но если CPU простаивается, а также память не является узким местом, то жесткий диск приходит на мой взгляд. Может быть, это очень медленно, и плохая скорость - это намек на сломанный жесткий диск.
Вы должны запускать несколько простых ориентиров.
Откуда вы делаете тест? Другой сервер в том же центре обработки данных или подключение к Интернету дома / на работе? Будет сложно надежно проверить производительность вашего сайта через домашнее подключение. Во-первых, ваше интернет-соединение может быть слишком медленным, а во-вторых, многие персональные маршрутизаторы не могут обрабатывать такое количество одновременных подключений.
Также ... попробуйте запустить тест без изображений.