Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 5|Antwoord: 0

[Web] [Repost] Traefik vs Nginx Officiële Benchmark

[Link kopiëren]
Geplaatst op11 minuten geleden | | |
Wat is Traefik?

Traefik is een moderne zevenlaagse reverse proxy en load balancer, gecentreerd rond een kernconcept — Service Discovery First.

Het grootste verschil met traditionele reverse proxies (zoals Nginx) is dat je niet handmatig een groot aantal configuratiebestanden hoeft te schrijven; Traefik "observeert" proactief je runtime-omgeving en genereert automatisch routingregels.

Vanwege de functie "service as configuration" is Traefik bijzonder geschikt voor deze scenario's:

  • Docker / Docker Compose
  • Kubernetes (Ingress Controller)
  • Microservicesarchitectuur
  • Online diensten voor kleine teams of onafhankelijke ontwikkelaars

Simpel gezegd, als uw dienst "dynamisch" is, is Traefik veel minder probleemloos dan traditionele omgekeerde agenten.

Benchmark

aanleg

Ik wil exoscale.ch VincentBernat bedanken, die gul de infrastructuur leverde die nodig was voor benchmarking.

Ik heb het getest met 4 virtuele machines, geconfigureerd als volgt:

32 GB geheugen
8 CPU-kernen
10GB solid-state drive
Ubuntu 14.04 LTS 64-bit

Oprichten

Een virtuele machine wordt gebruikt om de benchmarktool wrk te starten
Een virtuele machine voor Traefik (v1.0.0-beta.416) / nginx (v1.4.6)
Wie configureert twee virtuele machines voor twee backend-servers in Go?
Elke virtuele machine is afgestemd met de volgende beperkingen:
Nginx

Hieronder staat de gebruiksmethode voor het Nginx-configuratiebestand /etc/nginx/nginx.conf:
Hieronder staan de gebruikte Nginx virtuele hostingconfiguratiebestanden:
Traefik

De volgende bestanden zijn die voor traefik.toml worden gebruikt:
resultaat
Whoami:
wrk -t20 -c1000 -d60s -H "Host: test.traefik" --latentie http://IP-whoami:80/bench
Ik doe 1m test @ http://IP-whoami:80/bench
20 threads en 1000 verbindingen
Thread Stats Gemiddeld Stdev Max +/- Stdev
Latentie 70,28 ms 134,72 ms 1,91 s 89,94%
Vereiste/sec 2,92k 742,42 8,78k 68,80%
Latentieverdeling
50% 10,63ms
75% 75,64ms
90% 205,65ms
99% 668,28ms
3476705 verzoeken in 1,00 miljoen, 384,61MB leescapaciteit
Socketfouten: verbinding 0, lees 0, schrijf 0, timeout 103
Verzoeken/sec: 57894.35
Overdracht/sec: 6,40MB

Nginx:
wrk -t20 -c1000 -d60s -H "Host: test.traefik" --latentie http://IP-nginx:8001/bench
Ik doe 1 meter test @ http://IP-nginx:8001/bench
20 threads en 1000 verbindingen
Thread Stats Gemiddeld Stdev Max +/- Stdev
Latentie 101,25ms 180,09ms 1,99s 89,34%
Vereiste/sec 1,69k 567,69 9,39k 72,62%
Latentieverdeling
50% 15,46ms
75% 129,11ms
90% 302,44ms
99% 846,59ms
2018427 verzoeken in 1,00 miljoen, 298,36MB leesvermogen
Socketfouten: verbinden 0, lezen 0, schrijven 0, timeout 90
Verzoeken/sec: 33591.67
Overdracht/sec: 4,97MB

Traefik
wrk -t20 -c1000 -d60s -H "Host: test.traefik" --latentie http://IP-traefik:8000/bench
1m test uitvoeren @ http://IP-traefik:8000/bench
20 threads en 1000 verbindingen
Thread Stats Gemiddeld Stdev Max +/- Stdev
Latentie 91,72ms 150,43ms 2,00s 90,50%
Vereiste/sec 1,43k 266,37 2,97k 69,77%
Latentieverdeling
50% 19,74ms
75% 121,98ms
90% 237,39ms
99% 687,49ms
1705073 verzoeken in 1,00 miljoen, 188,63MB gelezen
Socketfouten: verbinding 0, lees 0, schrijf 0, timeout 7
Verzoeken/sec: 28392.44
Overdracht/sec: 3,14MB

conclusie
Traefiks snelheid is duidelijk langzamer dan die van Nginx, maar het verschil is niet groot: Traefik verwerkt 28.392 verzoeken per seconde, terwijl Nginx 33.591 verzoeken per seconde verwerkt, met een prestatieverhouding van 85%. Voor een jong project is dat behoorlijk goed :)!

Enkele verbeterpunten:

Gebruik GO_REUSEPORT monitoren

Elke CPU-kern draait een aparte serverinstantie GOMAXPROCS=1 (benchmarks tonen aan dat Traefik veel meer contextwisseling heeft dan nginx).

Origineel:De hyperlink-login is zichtbaar.




Vorig:Verschillen tussen QTS- en QuTS Hero-besturingssystemen voor NAS
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com