Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:

Yn yr erthygl hon byddwn yn rhoi cynnig ar beirianneg wrthdroi, efallai y bydd rhywun yn dweud. Byddwn yn cael ein dwylo budr o dan gwfl pob gweinydd gwe, gan eu hecsbloetio mewn ffyrdd na fyddai neb byth yn eu hecsbloetio.

Mae'r prawf hwn yn fesuriad o geffyl sfferig mewn gwactod, yn ddim mwy na data a gafwyd, ac yn awr ni wyddom beth i'w wneud ag ef.

Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:

Methodoleg

Y system weithredu ar gyfer Nginx ac Apache yw Ubuntu 18.04 LTS, ar gyfer IIS Windows Server Core 2019. Cyn y profion, derbyniodd pob system weithredu y diweddariadau diweddaraf o Ragfyr 04.12.2019, XNUMX.

Cynhaliwyd profion dros HTTP yn unig. Roedd pob gweinydd gwe yn rhedeg yr un dudalen, sef templed Jekyll rhad ac am ddim gan Codrops. Cyswllt. Roedd gan bob gweinydd gwe analluogi cywasgu gzip.

Gwnaethpwyd y prawf trwybwn gyda Httpd-tools gyda'r dadleuon:

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

Roedd gweinyddwyr yn gyfyngedig i 10, 5, ac 1 y cant o'r craidd ar 8, 4, ac un craidd. Roedd y fainc prawf yn gyfrifiadur gyda 9900K@5400MHz, sy'n golygu bod y gweinydd sy'n derbyn terfyn o 10% yn derbyn tua 540MHz y craidd.

Cynhaliwyd y prawf TTFB pan gychwynnodd y gweinydd a'i fesur gyntaf gan ddefnyddio DevTools; ar ôl derbyn y canlyniad, cafodd y gweinydd ei ddiffodd a'i rolio'n ôl i'r pwynt gwirio blaenorol i ddileu ymddangosiad unrhyw fath o caches.

Roedd y profwr a'r gweinydd gwe ar yr un gwesteiwr ac ar yr un switsh rhithwir.

I werthuso'r is-system ddisg ar unwaith, canlyniadau meincnodau ATTO a CrystalDIskMark er mwyn cael syniad o'r tagfeydd.

Data a gymerwyd o'r peiriant rhithwir:Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:
Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:
Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:
Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:

Canlyniadau:

TTFB:

Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:
Y TTFB cyfartalog ar gyfer IIS yw'r lleiaf, 0,5ms, yn erbyn 1,4ms ar gyfer Apache a 4ms ar gyfer Nginx.

trwybwn:

Yn gyntaf, gadewch i ni edrych ar ba mor dda y mae pob gweinydd yn graddio yn seiliedig ar nifer y creiddiau.

Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:
Mae'r graff yn dangos nifer y galwadau profwr i'r gweinydd gwe a hwyrni. Mae'r graff yn dangos bod NGINX wedi prosesu 98% o'r holl geisiadau, gan gyflwyno'r wefan mewn 20ms neu lai. Cwblhaodd IIS, fel Apache, y 5% olaf o'r holl alwadau mewn 76ms a 14ms, yn y drefn honno.

Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:
Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:
Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:
Mae'r graff yn dangos yr amser prosesu cyfartalog ar gyfer un cais yn ystod prawf straen.

Fel y gallwch weld o'r graffiau, chwythodd IIS Apache a Nginx i ffwrdd, gan arafu'n sylweddol o dan lwyth uchel. 

Roedd yn amlwg bod yn well gan IIS 4 craidd dros XNUMX, gan ddangos cuddni is ar XNUMX, ond hefyd nid oedd yn ffafrio un craidd yn gryf.

Mae NGINX yn graddio'n dda ar draws yr holl graidd 8, ac ar gyfer Apache, mae'n ymddangos mai'r senario un craidd yw'r dewis gorau.

Scalability:

Nginx:

Nawr, gadewch i ni edrych ar scalability o ran amlder a nifer y creiddiau. 

Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:
Ni phasiodd Nginx brofion gyda therfyn o 1% ar gyfer 4 ac 1 craidd; pan aeth y tu hwnt i geisiadau 2000, terfynodd y cysylltiad â'r profwr.

Apache:

Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:
Ar ôl prosesu 2500 o geisiadau, rhoddodd Apache, fel Nginx, y gorau a chau'r cysylltiad. Methodd Apache y prawf ar greiddiau 8, 4 ac 1 gyda therfyn o 1%, ond yn ogystal fe fethodd y prawf gyda therfyn o 5% ar un craidd, sy'n waeth na Nginx

IIS:

Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:
Yn ystod y profion, cronnodd IIS ciw enfawr o geisiadau ond prosesu pob un ohonynt. Yn ôl pob tebyg, allan o'r bocs nid oes unrhyw amserau wedi'u gosod ar gyfer prosesu ceisiadau.

Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:
Mae'r siart yn dangos yr amser a gymerodd i gwblhau'r prawf. Cafodd ffurfweddiadau profi cwbl hurt eu taflu. Mae'r diagram yn dangos pa mor anodd yw IIS o ran caledwedd, a pha mor wych yw NGINX.

Scalability o ddisg:

Nginx:

Nawr, gadewch i ni edrych ar scalability o ran amlder a nifer y creiddiau a chyflymder disg. 

Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:
Y tro hwn methodd Nginx 4 prawf yn lle dau.

Apache:

Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:
Methodd Apache yr un nifer o brofion â'r tro diwethaf.

IIS:

Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:
Mae IIS yn dangos graff bron yn union yr un fath, fel pe na bai cyfyngiadau disg. Yn gyffredinol, ni newidiodd graffeg yr holl weinyddion lawer, sy'n golygu bod pob un ohonynt wedi storio data statig yn RAM a'i weini oddi yno. Yma gwelwn y brif dagfa - y gweinydd gwe ei hun.

Mae'n rhy gynnar i ddod i gasgliadau yn seiliedig ar y profion hyn; nid ydym eto wedi profi HTTPS, cywasgu a HTTP/2 gyda thystysgrif fyw gan Let's Encrypt. Byddwn yn siarad am hyn yn yr erthygl nesaf.

Brwydr gweinyddwyr WEB. Rhan 1 - HTTP allan o gysylltiad:

Ffynhonnell: hab.com

Ychwanegu sylw