anonymous@RULINUX.NET~# | Last login: 2024-11-23 00:04:01 |
Регистрация Вход | Новости | Разметка | Пользователи | Галерея | Форум | Статьи | Неподтвержденное | Трекер | Правила форума | F.A.Q. | Ссылки | Поиск |
Форум - Web-development | [RSS] |
Вопрос скорее из любопытства.
Задался тут вопросом каков будет чистый оверхед при неиспользовании keep-alive в интранете (ну, в интернете понятно оно окупается стоимостью установления соединения через кучу хопов).
Сетап такой: старый однопроцессорный одноядерный лэптоп (проц Intel(R) Pentium(R) M processor 1.60GHz), который особо ничего не делает.
На лэптопе стоит lighttpd и по заданному урлу отдаёт статический файлик размером 14 байт. Беру Apache Bench и начинаю долбить сайт. Количество запросов постоянно, а количество параллельных потоков (опция -c) варьируется.
И вот что интересно, если посмотреть на портянку внизу, то при 131 потоке время, затраченное на "Connect" не превышает 13 миллисек - этот показатель варьируется, но не превышает 50 миллисек никогда.
Однако, стоит начать долбить сервер в 132 потока, то максимальное время коннекта сразу подскакивает до целой секунды (второй тест в портянке в конце поста).
ИЧСХ, это стабильно воспроизводится от теста к тесту.
С разрешёнными Keepalive (Опция -k - два последних результата) потоков требуется больше, но "насыщение" всё равно наступает. Количество потоков незначительно варьируется - при повторном тесте с малым количеством потоков может дать макс.задержку соединения больше минуты, а если дать "отдохнуть" минутку - то опять всё хорошо.
Спрашивается - чем определяются эти пороги?
Настройки, в части на мой взгляд касающейся, такие:
anonymous(*) (2014-02-02 06:06:57)
|
|
|
Скрыть
Re:Переход сервера в насыщение - чем объяснить?> Порог скорее всего зависит от конкретной конфигурации.
|
Скрыть
Re:Переход сервера в насыщение - чем объяснить?Думаю, на этом месте будет уместно послать тебя на хуй. |
Pshen(*)(2014-02-02 15:18:10)
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.102 Safari/537.36 |
Скрыть
Re:Переход сервера в насыщение - чем объяснить?>Однако, стоит начать долбить сервер в 132 потока, то максимальное время коннекта сразу подскакивает до целой секунды (второй тест в портянке в конце поста).
|
Скрыть
Re:Переход сервера в насыщение - чем объяснить?Ну да, в том и дело - добавляешь один поток и он уже не может приконнектиться в течение секунды, хотя max-connections вроде это дело не ограничивает. Попробую нгинкс на досуге (вообще весь тест затевался для демонстранции незначительности оверхеда при работе без keep-alive, а это - побочное открытие..) |
Скрыть
Re:Переход сервера в насыщение - чем объяснить?ab жутко врет на тестах с конкурентными коннекшанами, юзай что-то другое. По опыту могу сказать, что при тестировании асинхронных серверов с количеством одновременных подключений около 1000, разница с кипалайв и без примерно на порядок. Ax-Xa-Xa(*)(2014-02-02 16:35:43)
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36 |
anonymous(*)(2014-02-03 18:23:10)
Mozilla/5.0 (X11; Linux x86_64; rv:26.0) Gecko/20100101 Firefox/26.0 |
|
|
|
Этот тред читают 3 пользователя: |
Анонимных: 3 Зарегистрированных: 0 |
Re:Переход сервера в насыщение - чем объяснить?
А зависимость от числа потоков какая должна быть по-твоему? Порог скорее всего зависит от конкретной конфигурации. Плюс надо мониторить сам хост, что при этом на нём с системными ресурсами происходит
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.102 Safari/537.36