-Подписка по e-mail

 

 -Поиск по дневнику

Поиск сообщений в neo-dope

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 15.07.2007
Записей: 173
Комментариев: 9
Написано: 62


9000 запросов в секунду

Четверг, 28 Мая 2009 г. 08:54 + в цитатник
Надо как-то по дзенски перефразировать, что когда начинаешь проверять очевидные вещи, то великое множество открытий обнаруживаешь. Сейчас пишу один проект в котором мне требуется обрабатывать миллионы запросов в сутки, а может быть и в час. Всегда думал, что ab именно так утилита с помощью которой проверяется нагрузка на сервера. Невод свой забрасывал вот такой непритязательной командой:
loremaster:~ xen$ ab -n 10000 -c 100 http://127.0.0.1/
Умер nginx, умер обычный django (для теста), erlang сервер не умер. Но характер загрузок ядра получился очень некрасивый и неприятный (дело было на ноуте MacBook Intell), самый длинный запрос залетел аж на 19 секунд, при этом какое-то мгновение оба ядра заняты на 100% потом тишина, потом опять. Главное что сервера на erlang'е неумирают, но и то ладно. Пришлось невод заменить на
loremaster:~ xen$ ab -n 10000 -c 10 http://127.0.0.1/
С 3й попытки django/python прошел проверку, то есть сервер вылетает случайным образом. nginx тоже кое как дошел до финиша, erlang справился без кряхтения. Раз в статье речь про статистику, то вот сравнение. Хотя для меня в нем цели как таковой не было. Приложение пока не написано.
Server Software:        nginx/0.6.32
Server Hostname:        127.0.0.1
Server Port:            80
Document Path:          /
Document Length:        151 bytes
Concurrency Level:      10
Time taken for tests:   2.289 seconds
Complete requests:      10000
Failed requests:        0
Write errors:           0
Total transferred:      3620000 bytes
HTML transferred:       1510000 bytes
Requests per second:    4368.58 [#/sec] (mean)
Time per request:       2.289 [ms] (mean)
Time per request:       0.229 [ms] (mean, across all concurrent requests)
Transfer rate:          1544.36 [Kbytes/sec] received
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Server Software:        MochiWeb/1.0
Server Hostname:        127.0.0.1
Server Port:            8000
Document Path:          /
Document Length:        88 bytes
Concurrency Level:      10
Time taken for tests:   6.935 seconds
Complete requests:      10000
Failed requests:        0
Write errors:           0
Total transferred:      2900580 bytes
HTML transferred:       880176 bytes
Requests per second:    1441.88 [#/sec] (mean)
Time per request:       6.935 [ms] (mean)
Time per request:       0.694 [ms] (mean, across all concurrent requests)
Transfer rate:          408.43 [Kbytes/sec] received
При прочих равных лучше использовать сервера на erlang'е, скорость отличная и надежность офигительная.

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку