Në këtë artikull do të provojmë të merremi me inxhinierinë e rivendosur, mund të thuhet. Ne do të shikojmë me duar të pistat nën kapakun e secilës nga serverët e uebit, duke i shfrytëzuar ato si askush nuk do të shfrytëzonte kurrë.
Ky test është një matje e një kali sferik në vakuum, asgjë më shumë se të dhëna që kanë ardhur, dhe tani ne nuk e dimë se çfarë të bëjmë me to.
Metodologjia
Si sistem operativ për Nginx dhe Apache përdoret Ubuntu 18.04 LTS, ndërsa për IIS Windows Server Core 2019. Të gjitha sistemet operative u azhurnuan para testeve në gjendjen 04.12.2019.
Testet u kryen ekskluzivisht përmes HTTP. Në secilin nga serverët e uebit ishte e njëjta faqe, një model falas për Jekyll nga Codrops. . Në secilin nga serverët e uebit ishte e çaktivizuar kompresimi gzip.
Testi i kapacitetit u krye me Httpd-tools me argumentet:
ab -n 50000 -c 500 http://192.168.76.204:80/Në serverë u vendos një limit prej 10, 5 dhe 1 përqind nga bërthama në 8, 4 dhe një bërthamë. Si platformë testi ishte një kompjuter me 9900K@5400MHz, çka do të thotë se serveri që kishte një kufizim prej 10% merr rreth 540MHz për bërthamë.
Testi TTFB u krye gjatë ngarkesës së parë të serverit dhe u mat me kohën e zhvilluesve, pas marrjes së rezultatit serveri u çaktivizua dhe u rikthye në pikën e mëparshme të kontrollit për të përjashtuar çdo formë të caches.
Testuesi dhe serveri i uebit ishin në të njëjtën host dhe në të njëjtin switch virtual.
Për të vlerësuar menjëherë sistemin e ruajtjes, rezultatet e testit ATTO dhe CrystalDiskMark, për të pasur një ide për ngushticat.
TĂ« dhĂ«nat u morĂ«n nga makina virtuale:



Rezultatet:
TTFB:

Mesatarja e TTFB te IIS është më e ulët se të gjithë, 0.5ms, kundrejt 1.4ms te Apache dhe 4ms te Nginx.
Kapaciteti:
Fillimisht do të shohim se sa mirë shkallëzohet secili nga serverët në numrin e bërthamave.

Në grafik paraqitet numri i kërkesave të testuesit ndaj serverit të uebit dhe latenca. Në grafik duket se NGINX ka realizuar 98% të të gjitha kërkesave, duke ofruar faqen për 20ms dhe më pak. IIS ashtu si Apache realizoi 5% të fundit nga të gjitha kërkesat për 76ms dhe 14ms përkatësisht.



Në grafik paraqitet koha mesatare e përpunimit të një kërkese gjatë testit të stresit.
Siç mund tĂ« vĂ«rehet nga grafiket, IIS humbi ndaj Apache dhe Nginx, duke u ngadalĂ«suar ndjeshĂ«m nĂ«n ngarkesĂ« tĂ« lartĂ«.Â
IIS e preferoi qartë 4 bërthama ndaj tetë, duke treguar vonesa më të ulëta në katër, por gjithashtu nuk e aprovoi shumë një bërthamë.
NGINX shkëlqyeshëm shkallëzohet në të gjitha 8 bërthama, ndërsa për Apache, duket se skenari me një bërthamë është zgjedhja më e mirë.
Shkallëzimi:
Nginx:
Tani le tĂ« shqyrtojmĂ« shkallĂ«zimin sipas frekuencĂ«s dhe numrit tĂ« bĂ«rthamave.Â

Testet me kufizim prej 1% në 4 dhe 1 bërthamë Nginx nuk e kaloi, duke ndërprerë lidhjen me testuesin pas 2000 kërkesave.
Apache:

Apache si Nginx, duke përpunuar 2500 kërkesa, u dorëzua dhe ndërpreu lidhjen. Apache nuk e kaloi testin në 8, 4 dhe 1 bërthama me kufizim prej 1%, por përveç kësaj nuk e kaloi as testin me kufizimin prej 5% në një bërthamë, që është më keq se Nginx.
IIS:

IIS gjatë testimeve grumbulloi një radhë gjigante kërkesash, por përpunoi secilën prej tyre. Duket se në të nuk janë instaluar kufizime për trajtimin e kërkesës.

Grafiku paraqet kohën e përfundimit të testit. Janë hedhur poshtë konfigurimet krejt absurde të testimit. Nga grafiku duket se sa kërkues është IIS ndaj harduerit dhe sa i shkëlqyer është NGINX.
Shkallëzimi nga disku:
Nginx:
Tani le tĂ« shqyrtojmĂ« shkallĂ«zimin sipas frekuencĂ«s, numrit tĂ« bĂ«rthamave dhe shpejtĂ«sisĂ« sĂ« disks.Â

Këtë herë Nginx nuk e kaloi 4 teste, në vend të dyve.
Apache:

Apache kaloi njëjtë numrin e testeve si herën e kaluar.
IIS:

IIS tregon njĂ« grafik pothuajse identik, sikur nuk kishte kufizime pĂ«r disk. NĂ« pĂ«rgjithĂ«si, grafiket pĂ«r tĂ« gjitha serverĂ«t nuk ndryshuan shumĂ«, qĂ« do tĂ« thotĂ« se secili prej tyre e ka ruajtur statikĂ«n nĂ« memorien operuese dhe e ka dorĂ«zuar nga aty. KĂ«tu shohim ngushticĂ«n kryesore â vetĂ« serverin web.
ĂshtĂ« herĂ«t pĂ«r tĂ« nxjerrĂ« pĂ«rfundime nga kjo testim, ne nuk e kemi testuar ende HTTPS, kompresimin dhe HTTP/2 me njĂ« certifikatĂ« aktive nga Letâs Encrypt. KĂ«tĂ« do ta diskutojmĂ« nĂ« artikullin e ardhshĂ«m.
Burimi: habr.com
