Битка за ВЕБ сервере. Први део – ХТТП ван контакта:

У овом чланку ћемо се окушати у обрнутом инжењерингу, могло би се рећи. Ставићемо прљаве руке испод хаубе сваког веб сервера, искоришћавајући их на начине које нико никада не би искористио.

Овај тест је мерење сферног коња у вакууму, ништа више од података који су добијени, а сада не знамо шта да радимо са њим.

Битка за ВЕБ сервере. Први део – ХТТП ван контакта:

Методологија

Оперативни систем за Нгинк и Апацхе је Убунту 18.04 ЛТС, за ИИС Виндовс Сервер Цоре 2019. Пре тестирања, сви оперативни системи су добили најновија ажурирања од 04.12.2019. децембра XNUMX. године.

Тестови су вршени искључиво преко ХТТП-а. Сваки веб сервер је водио исту страницу, бесплатни Јекилл шаблон од Цодропс-а. Линк. Сваки веб сервер је имао онемогућену гзип компресију.

Тест пропусности је урађен помоћу Хттпд-алата са аргументима:

ab -n 50000 -c 500 http://192.168.76.204:80/

Сервери су били ограничени на 10, 5 и 1 проценат језгра на 8, 4 и једном језгру. Тестни сто је био рачунар са 9900К@5400МХз, што значи да сервер који добија ограничење од 10% добија око 540МХз по језгру.

ТТФБ тест је спроведен када се сервер први пут покренуо и измерен помоћу ДевТоолс-а након што је добио резултат, сервер је искључен и враћен на претходну контролну тачку да би се елиминисао појављивање било које врсте кеша.

Тестер и веб сервер су били на истом хосту и на истом виртуелном прекидачу.

Да одмах процените дисковни подсистем, резултате АТТО и ЦристалДИскМарк бенцхмарк-а како бисте имали представу о уским грлима.

Подаци преузети са виртуелне машине:Битка за ВЕБ сервере. Први део – ХТТП ван контакта:
Битка за ВЕБ сервере. Први део – ХТТП ван контакта:
Битка за ВЕБ сервере. Први део – ХТТП ван контакта:
Битка за ВЕБ сервере. Први део – ХТТП ван контакта:

Резултати:

ТТФБ:

Битка за ВЕБ сервере. Први део – ХТТП ван контакта:
Просечан ТТФБ за ИИС је најмањи, 0,5 мс, у односу на 1,4 мс за Апацхе и 4 мс за Нгинк.

Пропусност:

Прво, погледајмо колико добро се сваки сервер прилагођава на основу броја језгара.

Битка за ВЕБ сервере. Први део – ХТТП ван контакта:
Графикон приказује број позива тестера ка веб серверу и кашњење. Графикон показује да је НГИНКС обрадио 98% свих захтева, испоручујући сајт за 20 мс или мање. ИИС је, као и Апацхе, завршио последњих 5% свих позива за 76 мс и 14 мс, респективно.

Битка за ВЕБ сервере. Први део – ХТТП ван контакта:
Битка за ВЕБ сервере. Први део – ХТТП ван контакта:
Битка за ВЕБ сервере. Први део – ХТТП ван контакта:
Графикон приказује просечно време обраде једног захтева током стрес теста.

Као што можете видети из графикона, ИИС је одувао и Апацхе и Нгинк, значајно успоравајући под великим оптерећењем. 

ИИС је очигледно преферирао 4 језгра у односу на XNUMX, показујући ниже латенције на XNUMX, али такође није фаворизовао једно језгро.

НГИНКС се добро скалира у свих 8 језгара, а за Апацхе сценарио са једним језгром изгледа као најбољи избор.

Прилагодљивост:

Нгинк:

Сада погледајмо скалабилност у смислу фреквенције и броја језгара. 

Битка за ВЕБ сервере. Први део – ХТТП ван контакта:
Нгинк није прошао тестове са ограничењем од 1% за 4 и 1 језгра када је премашио 2000 захтева, прекинуо је везу са тестером.

Апацхе:

Битка за ВЕБ сервере. Први део – ХТТП ван контакта:
Апацхе је, као и Нгинк, након што је обрадио 2500 захтева, одустао и затворио везу. Апацхе је пао на тесту на 8, 4 и 1 језгри са ограничењем од 1%, али је поред тога пао и на тесту са ограничењем од 5% на једном језгру, што је горе од Нгинк-а

ИИС:

Битка за ВЕБ сервере. Први део – ХТТП ван контакта:
Током тестова, ИИС је нагомилао огроман ред захтева, али је обрадио сваки од њих. Очигледно, ван кутије нема подешених временских ограничења за обраду захтева.

Битка за ВЕБ сервере. Први део – ХТТП ван контакта:
Графикон приказује време потребно за завршетак теста. Потпуно апсурдне конфигурације тестирања су одбачене. Дијаграм показује колико је ИИС захтеван када је у питању хардвер и колико је НГИНКС диван.

Скалабилност са диска:

Нгинк:

Сада погледајмо скалабилност у смислу фреквенције и броја језгара и брзине диска. 

Битка за ВЕБ сервере. Први део – ХТТП ван контакта:
Овог пута Нгинк је пао на 4 теста уместо на два.

Апацхе:

Битка за ВЕБ сервере. Први део – ХТТП ван контакта:
Апацхе је пао на истом броју тестова као прошли пут.

ИИС:

Битка за ВЕБ сервере. Први део – ХТТП ван контакта:
ИИС показује скоро идентичан графикон, као да нема ограничења за диск. Генерално, графика свих сервера се није много променила, што значи да је сваки од њих кеширао статичке податке у РАМ-у и одатле их сервирао. Овде видимо главно уско грло - сам веб сервер.

Прерано је доносити закључке на основу овог тестирања, још нисмо тестирали ХТТПС, компресију и ХТТП/2 са живим сертификатом из Лет'с Енцрипт. О томе ћемо говорити у следећем чланку.

Битка за ВЕБ сервере. Први део – ХТТП ван контакта:

Извор: ввв.хабр.цом

Додај коментар