Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:

Í þessari grein munum við reyna okkur við öfuga verkfræði, ef svo má að orði komast. Við munum skoða undirliggjandi þætti hvers vefþjóns og nýta hann á þann hátt sem enginn annar myndi nokkurn tímann nýta sér.

Þetta próf er mæling á kúlulaga hesti í lofttæmi, ekkert meira en gögnin sem fengust, og nú vitum við ekki hvað við eigum að gera við þau.

Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:

Aðferðafræði

Stýrikerfið fyrir Nginx og Apache er Ubuntu 18.04 LTS, fyrir IIS Windows Server Core 2019. Öll stýrikerfi fengu nýjustu uppfærslurnar frá og með 4. desember 2019, fyrir prófanir.

Prófanirnar voru eingöngu framkvæmdar í gegnum HTTP. Hver vefþjónn keyrði sömu síðuna, ókeypis Jekyll sniðmát frá Codrops. LinkGzip-þjöppun var óvirk á öllum vefþjónunum.

Afköstaprófið var framkvæmt með Httpd-tools með eftirfarandi færibreytum:

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

Þjónar voru takmarkaðir við 10, 5 og 1 prósent af kjarnanum á 8, 4 og 1 kjarna. Prófunarsvæðið var tölva með 9900K @ 5400 MHz, sem þýðir að netþjónn með 10% takmörkun fær um það bil 540 MHz á kjarna.

TTFB prófið var framkvæmt við fyrstu ræsingu netþjónsins og mælt með DevTools. Eftir að niðurstöðurnar bárust var netþjóninum slökkt og hann færður aftur í fyrri stöðvunarstöð til að losna við skyndiminnið.

Prófunartækið og vefþjóninn voru staðsettir á sama hýsingaraðila og á sama sýndarrofa.

Til að meta diskakerfið strax eru niðurstöður ATTO og CrystalDIskMark viðmiðanna notaðar til að fá hugmynd um flöskuhálsana.

Gögn tekin úr sýndarvél:Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:
Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:
Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:
Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:

Úrslit:

TTFB:

Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:
IIS hefur lægsta meðaltal TTFB, 0,5 ms, samanborið við 1,4 ms fyrir Apache og 4 ms fyrir Nginx.

Afköst:

Fyrst skulum við skoða hversu vel hver netþjónn mælist hvað varðar kjarnafjölda.

Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:
Grafið sýnir fjölda beiðna sem prófunarforritið sendi til vefþjónsins og töf. Það sýnir að NGINX afgreiddi 98% allra beiðna og afhenti síðuna á 20 ms eða minna. IIS og Apache afgreiddi síðustu 5% allra beiðna á 76 ms og 14 ms, talið í sömu röð.

Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:
Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:
Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:
Grafið sýnir meðalvinnslutíma einnar beiðni meðan á álagsprófi stendur.

Eins og sjá má á gröfunum, þá stóð IIS sig betur en bæði Apache og Nginx og hægði verulega á sér við mikið álag. 

IIS kaus greinilega 4 kjarna frekar en 8, sýndi lægri seinkun á 4, en var ekki heldur mjög hrifinn af 1 kjarna.

NGINX stækkar vel yfir alla 8 kjarnana, en fyrir Apache virðist einn kjarna aðferðin vera besti kosturinn.

Skalanleiki:

Nginx:

Nú skulum við skoða stigstærð eftir tíðni og fjölda kjarna. 

Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:
Nginx féll í prófunum með 1% takmörkun á 4 og 1 kjarna; þegar það fór yfir 2000 beiðnir sleit það tengingunni við prófarann.

Apache:

Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:
Apache, líkt og Nginx, gafst upp og sliti tengingunni eftir að hafa unnið úr 2500 beiðnum. Apache féll í prófunum á 8, 4 og 1 kjarna með 1% takmörkun, en það féll einnig í prófinu með 5% takmörkun á einum kjarna, sem er verra en Nginx.

IIS:

Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:
Í prófunum safnaði IIS risavaxinni biðröð af beiðnum en vann úr hverri einustu. Greinilega eru engar tímamörk fyrir vinnslu beiðna stilltar strax.

Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:
Skýringarmyndin sýnir tímann sem það tók að klára prófið. Fáránlegustu prófunarstillingarnar voru hafnað. Skýringarmyndin sýnir hversu krefjandi IIS er á vélbúnað og hversu frábær NGINX er.

Stærðhæfni disks:

Nginx:

Nú skulum við skoða stigstærð hvað varðar tíðni, fjölda kjarna og diskhraða. 

Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:
Að þessu sinni féll Nginx í fjórum prófum í stað tveggja.

Apache:

Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:
Apache féll á sama fjölda prófana og síðast.

IIS:

Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:
IIS sýnir næstum eins graf, eins og engar takmarkanir á diskum væru til staðar. Í heildina hafa gröfin fyrir alla netþjóna ekki breyst mikið, sem þýðir að hver og einn vistaði kyrrstæðar skrár í vinnsluminni og afgreiddi þær þaðan. Hér sjáum við helsta flöskuhálsinn - vefþjóninn sjálfan.

Það er of snemmt að draga ályktanir af þessari prófun; við höfum ekki enn prófað HTTPS, þjöppun og HTTP/2 með virku Let's Encrypt vottorði. Við munum fjalla um það í næstu grein.

Orrustan við vefþjóna. Hluti 1 - HTTP úr sambandi:

Heimild: www.habr.com

Kauptu áreiðanlega hýsingu fyrir síður með DDoS vernd, VPS VDS netþjónum 🔥 Kauptu áreiðanlega vefhýsingu með DDoS vörn, VPS VDS netþjónum | ProHoster