Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:

Дар ин мақола мо дасти худро дар муҳандисии баръакс месанҷем, гуфтан мумкин аст. Мо дастони ифлоси худро зери сарпӯши ҳар як веб-сервер мегирем ва онҳоро тавре истифода мебарем, ки ҳеҷ кас ҳеҷ гоҳ истисмор намекунад.

Ин озмоиш ченкунии аспи куракшакл дар вакуум аст, ҷуз маълумоте, ки ба даст оварда шудааст ва ҳоло мо намедонем, ки бо он чӣ кор кунем.

Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:

Методология

Системаи амалиётӣ барои Nginx ва Apache Ubuntu 18.04 LTS барои IIS Windows Server Core 2019 мебошад. Пеш аз санҷишҳо, ҳама системаҳои оператсионӣ то 04.12.2019 декабри соли XNUMX навсозиҳои охиринро гирифтанд.

Санҷишҳо танҳо тавассути HTTP гузаронида шуданд. Ҳар як сервери веб ҳамон саҳифаро иҷро мекард, як қолаби ройгони Jekyll аз Codrops. пайванд. Ҳар як сервери веб фишурдани gzipро ғайрифаъол кардааст.

Санҷиши интиқол бо Httpd-tools бо далелҳо анҷом дода шуд:

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

Серверҳо бо 10, 5 ва 1 фоизи аслӣ дар 8, 4 ва як ядро ​​маҳдуд буданд. Таҷҳизоти санҷишӣ компютери дорои 9900K@5400MHz буд, ки маънои онро дорад, ки сервере, ки маҳдудияти 10% -ро мегирад, тақрибан 540МГс барои як ядро ​​​​қабул мекунад.

Санҷиши TTFB вақте гузаронида шуд, ки сервер бори аввал бо истифода аз DevTools чен карда шуд, сервер хомӯш карда шуд ва ба нуқтаи пешина баргардонида шуд, то пайдоиши ҳама гуна кэшҳоро нест кунад.

Санҷиш ва веб-сервер дар як ҳост ва дар як гузаргоҳи виртуалӣ буданд.

Барои фавран баҳо додани зерсистемаи диск, натиҷаҳои меъёрҳои ATTO ва CrystalDIskMark барои тасаввурот дар бораи мушкилот.

Маълумот аз мошини виртуалӣ гирифта шудааст:Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:
Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:
Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:
Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:

Натиҷаҳо:

TTFB:

Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:
Миёнаи TTFB барои IIS хурдтарин аст, 0,5 мс, дар муқоиса бо 1,4 мс барои Apache ва 4 мс барои Nginx.

Натиҷа:

Аввалан, биёед бубинем, ки ҳар як сервер аз рӯи шумораи ядроҳо то чӣ андоза хуб миқёс дорад.

Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:
Графика шумораи зангҳои санҷиширо ба веб-сервер ва таъхирро нишон медиҳад. График нишон медиҳад, ки NGINX 98% тамоми дархостҳоро коркард карда, сайтро дар 20ms ё камтар аз он интиқол медиҳад. IIS, ба монанди Apache, 5% охирини тамоми зангҳоро мутаносибан дар 76ms ва 14ms анҷом дод.

Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:
Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:
Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:
Графика вақти миёнаи коркарди як дархостро ҳангоми санҷиши стресс нишон медиҳад.

Тавре ки шумо аз графикҳо мебинед, IIS ҳам Apache ва ҳам Nginx-ро тарконд, ки дар зери бори баланд ба таври назаррас суст шуд. 

IIS ба таври возеҳ 4 ядроро бар XNUMX бартарӣ дод, ки дар XNUMX таъхири пасттарро нишон медиҳад, аммо инчунин як ядроро чандон бартарӣ намедод.

NGINX дар тамоми 8 ядро ​​хуб паҳн мешавад ва барои Apache, сенарияи як-аслӣ беҳтарин интихоб ба назар мерасад.

Миқёспазирӣ:

nginx:

Акнун биёед миқёспазириро аз рӯи басомад ва шумораи ядроҳо бубинем. 

Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:
Nginx аз санҷишҳо бо маҳдудияти 1% барои 4 ва 1 ядро ​​​​нагузаштааст, вақте ки он аз 2000 дархост гузашт, пайвастшавӣ бо озмоишгарро қатъ кард.

Apache:

Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:
Apache, ба монанди Nginx, бо коркарди 2500 дархост, даст кашид ва пайвастро қатъ кард. Apache дар санҷиши ядроҳои 8, 4 ва 1 бо маҳдудияти 1% ноком шуд, аммо илова бар ин он инчунин бо маҳдудияти 5% дар як ядро ​​​​аз озмоиш ноком шуд, ки аз Nginx бадтар аст.

IIS:

Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:
Дар давоми санҷишҳо, IIS як қатор дархостҳоро ҷамъ овард, аммо ҳар яки онҳоро коркард кард. Эҳтимол, аз қуттӣ барои коркарди дархост мӯҳлатҳои вақт муқаррар карда нашудаанд.

Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:
Диаграмма вақти анҷом додани санҷишро нишон медиҳад. Конфигуратсияҳои санҷиши комилан бемаънӣ партофта шуданд. Диаграмма нишон медиҳад, ки IIS то чӣ андоза серталаб аст, вақте ки сухан дар бораи сахтафзор меравад ва NGINX то чӣ андоза олиҷаноб аст.

Миқёспазирӣ аз диск:

nginx:

Акнун биёед ба миқёспазирӣ аз рӯи басомад ва шумораи ядроҳо ва суръати диск назар кунем. 

Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:
Ин дафъа Nginx ба ҷои ду санҷиш 4-то нагузошт.

Apache:

Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:
Apache ҳамон шумораи санҷишҳоро мисли дафъаи гузашта натавонист.

IIS:

Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:
IIS графики қариб якхеларо нишон медиҳад, ки гӯё ягон маҳдудияти диск вуҷуд надошт. Дар маҷмӯъ, графикаи ҳама серверҳо чандон тағир наёфтааст, яъне ҳар кадоми онҳо маълумоти статикиро дар RAM кэш карда, аз он ҷо ба онҳо хидмат мекарданд. Дар ин ҷо мо мушкилоти асосӣ - худи веб-серверро мебинем.

Дар асоси ин санҷиш хулоса баровардан ҳанӯз барвақт аст, ки мо то ҳол HTTPS, фишурдашавӣ ва HTTP/2-ро бо шаҳодатномаи зинда аз Let's Encrypt озмоиш накардаем. Мо дар ин бора дар мақолаи навбатӣ сӯҳбат хоҳем кард.

Ҷанги серверҳои WEB. Қисми 1 - HTTP аз тамос:

Манбаъ: will.com

Илова Эзоҳ