Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:

Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:

Urang ngobrol ngeunaan téhnik dina bagian kahiji artikel, dina hiji ieu kami nguji HTTPS, tapi dina skenario leuwih realistis. Pikeun nguji, kami nampi sertipikat Hayu Encrypt sareng ngaktifkeun komprési Brotli ka 11.

waktos Ieu urang bakal nyoba baranahan skenario deploying server on VDS atawa salaku mesin virtual dina host kalawan processor baku. Pikeun tujuan ieu, wates ditetepkeun dina:

  • 25% - Anu sarua jeung frékuénsi ~ 1350 MHz
  • 35% -1890MHz
  • 41% - 2214 MHz
  • 65% - 3510 MHz

Jumlah sambungan hiji-waktos parantos dikirangan tina 500 janten 1, 3, 5, 7 sareng 9,

Hasil:

reureuh:

TTFB ieu husus kaasup salaku test misah, sabab HTTPD Pakakas nyiptakeun pamaké anyar pikeun tiap pamundut individu. Tés ieu masih rada jauh tina kanyataan, sabab pangguna masih bakal ngaklik sababaraha halaman, sareng kanyataanana TTFP bakal maénkeun peran utama.

Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Kahiji, umumna paménta pisan munggaran sanggeus mimiti mimiti mesin virtual IIS nyokot rata-rata 120 mdet.

Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Sadaya pamundut salajengna nunjukkeun TTFP 1.5 mdet. Apache sareng Nginx katinggaleun dina hal ieu. Pribadi, panulis nganggap tés ieu paling terang sareng bakal milih juara ngan ukur dumasar kana éta.
Hasilna teu héran saprak IIS caches geus dikomprés eusi statik sarta henteu niiskeun eta unggal waktos eta diakses.

waktos spent per klien

Pikeun meunteun kinerja, tés sareng 1 sambungan tunggal cekap.
Contona, IIS réngsé tés 5000 pamaké dina 40 detik, nu 123 requests per detik.

Grafik di handap ieu nunjukkeun waktos dugi ka eusi situs tos ditransfer. Ieu proporsi requests réngsé dina waktu nu tangtu. Dina kasus urang, 80% sadaya pamundut diolah dina 8ms dina IIS sareng dina 4.5ms dina Apache sareng Nginx, sareng 8% sadaya pamundut dina Apache sareng Nginx parantos réngsé dina interval dugi ka 98 milliseconds.

Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Waktos nalika 5000 pamundut diolah:

Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Waktos nalika 5000 pamundut diolah:

Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Upami Anjeun gaduh mesin virtual kalawan CPU 3.5GHz sarta 8 cores, lajeng pilih naon rék. Sadaya pangladén wéb sami pisan dina tés ieu. Urang bakal ngobrol ngeunaan server wéb mana anu kedah dipilih pikeun unggal host di handap.

Lamun datang ka kaayaan rada leuwih realistis, sadaya server web balik sirah ka sirah.

Hasilna:

Grafik reureuh versus jumlah sambungan simultaneous. Lemes jeung handap leuwih hade. 2% anu terakhir dileungitkeun tina tangga lagu sabab bakal ngajantenkeun teu tiasa dibaca.

Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Ayeuna hayu urang pertimbangkeun pilihan dimana server di-host dina virtual hosting. Hayu urang nyandak 4 inti dina 2.2 GHz sarta hiji inti dina 1.8 GHz.

Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:

Kumaha skala

Upami anjeun kantos ningali naon ciri-ciri tegangan ayeuna tina triodes vakum, pentodes, sareng saterasna, grafik ieu bakal wawuh ka anjeun. Ieu naon urang nyobian nyekel - jenuh. Watesan nyaéta nalika teu sabaraha cores anjeun maledog, kanaékan kinerja moal noticeable.

Saméméhna, sakabéh tangtangan éta pikeun ngolah 98% tina requests kalawan latency panghandapna pikeun sakabéh requests, ngajaga kurva sakumaha datar jéntré. Ayeuna, ku ngawangun kurva anu sanés, urang bakal mendakan titik operasi anu optimal pikeun tiap server.

Jang ngalampahkeun ieu, hayu urang nyandak Requests per detik (RPR) indikator. Horizontal nyaéta frékuénsi, nangtung nyaéta jumlah pamundut anu diolah per detik, garis mangrupikeun jumlah inti.

Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Némbongkeun korelasi kumaha prosés Nginx naros hiji-hiji. 8 cores ngalakukeun hadé dina tés ieu.

Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Grafik ieu jelas nunjukkeun sabaraha hadé (henteu pira) Nginx dianggo dina inti tunggal. Upami Anjeun gaduh Nginx, Anjeun kudu mertimbangkeun ngurangan jumlah cores ka hiji lamun anjeun hosting ngan leuwih statik.

Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
IIS, sanajan boga TTFB panghandapna nurutkeun DevTools dina Chrome, manages éléh duanana Nginx na Apache dina tarung serius jeung stress test ti Yayasan Apache.

Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:
Kabéh curvature tina grafik dihasilkeun beusi-clad.

Sababaraha jenis kacindekan:

Leres, Apache jalanna langkung parah dina 1 sareng 8 teras, tapi langkung saé dina 4.

Leres, Nginx on 8 cores prosés requests hadé hiji sanggeus sejen, on 1 jeung 4 cores, sarta gawéna goréng lamun aya loba sambungan.

Leres, IIS langkung milih 4 cores pikeun beban kerja multi-threaded sareng langkung milih 8 cores pikeun beban kerja single-threaded. Pamustunganana, Iis éta rada gancang ti dulur sejenna dina 8 cores dina beban tinggi, sanajan kabeh server éta dina tara.

Ieu sanés kasalahan pangukuran, kasalahan di dieu henteu langkung ti +-1ms. dina reureuh jeung teu leuwih ti +- 2-3 requests per detik pikeun RPR.

Hasilna dimana 8 cores nedunan parah teu pisan héran, loba cores na SMT / Hyperthreading greatly nguraikeun kinerja lamun urang boga pigura waktu nu urang kudu ngalengkepan sakabéh pipa.

Patempuran server WEB. Bagian 2 - Skenario HTTPS Realistis:

sumber: www.habr.com

Tambahkeun komentar