Traefik vs. Nginx performance benchmark

แชร์
ฝัง
  • เผยแพร่เมื่อ 23 มิ.ย. 2024
  • 🔴 - To support my channel, I’d like to offer Mentorship/On-the-Job Support/Consulting - me@antonputra.com
    ▬▬▬▬▬ Experience & Location 💼 ▬▬▬▬▬
    ► I’m a Senior Software Engineer at Juniper Networks (12+ years of experience)
    ► Located in San Francisco Bay Area, CA (US citizen)
    ▬▬▬▬▬▬ Connect with me 👋 ▬▬▬▬▬▬
    ► LinkedIn: / anton-putra
    ► Twitter/X: / antonvputra
    ► GitHub: github.com/antonputra
    ► Email: me@antonputra.com
    ▬▬▬▬▬▬ Related videos 👨‍🏫 ▬▬▬▬▬▬
    👉 [Playlist] Kubernetes Tutorials: • Kubernetes Tutorials
    👉 [Playlist] Terraform Tutorials: • Terraform Tutorials fo...
    👉 [Playlist] Network Tutorials: • Network Tutorials
    👉 [Playlist] Apache Kafka Tutorials: • Apache Kafka Tutorials
    👉 [Playlist] Performance Benchmarks: • Performance Benchmarks
    👉 [Playlist] Database Tutorials: • Database Tutorials
    ▬▬▬▬▬▬▬ Source Code 📚 ▬▬▬▬▬▬▬
    ► GitHub: github.com/antonputra/tutoria...
    #Nginx #Traefik #DevOps
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 77

  • @AntonPutra
    @AntonPutra  ปีที่แล้ว +1

    🔴 - To support my channel, I’d like to offer Mentorship/On-the-Job Support/Consulting - me@antonputra.com

  • @Openspeedtest
    @Openspeedtest ปีที่แล้ว +40

    This is why Nginx is the undisputed King for superior performance with minimum resource utilization.

    • @AntonPutra
      @AntonPutra  ปีที่แล้ว +3

      For now =)

    • @tcurdt
      @tcurdt ปีที่แล้ว +3

      and the configuration is less of a nightmare the traefik config is

    • @nikolas4786
      @nikolas4786 ปีที่แล้ว +2

      And security nginx is the best

    • @altairbueno5637
      @altairbueno5637 ปีที่แล้ว

      Until pingora arrived

    • @tcurdt
      @tcurdt ปีที่แล้ว

      @@altairbueno5637 AFAIU it hasn't been open sourced yet. Or did I miss that?

  • @javohirmirzo
    @javohirmirzo ปีที่แล้ว +3

    recently i started getting your videos recommended. they are very interesting indeed. keep up the good work!

  • @yabokunokami8418
    @yabokunokami8418 ปีที่แล้ว +4

    Your videos are really great. Keep up the good work!🔥

  • @AntonPutra
    @AntonPutra  ปีที่แล้ว +4

    ❤Go (Golang) vs Node JS (Microservices) performance benchmark - th-cam.com/video/ntMKNlESCpM/w-d-xo.html
    ❤Go (Golang) vs. Rust: (HTTP/REST API in Kubernetes) Performance Benchmark - th-cam.com/video/QWLyIBkBrl0/w-d-xo.html
    ❤AWS Lambda Go vs. Rust performance benchmark - th-cam.com/video/wyXIA3hfP88/w-d-xo.html
    ❤AWS Lambda Go vs. Node.js performance benchmark - th-cam.com/video/kJ4gfoe7gPQ/w-d-xo.html
    ❤AWS Lambda Python vs. Node.js performance benchmark - th-cam.com/video/B_OOim6XrI4/w-d-xo.html

  • @samelie
    @samelie ปีที่แล้ว +1

    Thank you for sharing these well designed tests - am learning a lot!

  • @kingsathurthi
    @kingsathurthi ปีที่แล้ว +4

    Very interesting to see the performance difference, thanks for making this video

  • @blender_wiki
    @blender_wiki 4 หลายเดือนก่อน +1

    The best, or even the only real, comparison video I found on yt. 🙏🙏🙏
    Nice testing protcol.

    • @wanarchives
      @wanarchives 3 หลายเดือนก่อน

      yeah, his video is mind blown to me, i never seen any utuber does benchmarck like this guy....super nice

  • @danielviloria5675
    @danielviloria5675 ปีที่แล้ว +1

    Te amo, este es el tipo de preguntas que quería resolver

  • @KwDevs
    @KwDevs ปีที่แล้ว

    I just want to say thank you for these very interesting videos. I want you to know that you've been helping me improve in my career and get better jobs. Thank you sir! (I'm subbed!)

    • @AntonPutra
      @AntonPutra  ปีที่แล้ว +1

      Thank you KWKOPS!

  • @Nick-yd3rc
    @Nick-yd3rc ปีที่แล้ว +5

    Thanks, really like your videos. Would appreciate a comparison with haproxy next time

  • @picatchumm64
    @picatchumm64 ปีที่แล้ว +2

    Hi, Thanks, I like your videos. Would appreciate a comparison with Traefik vs Caddy 2 next time

  • @altverskov
    @altverskov ปีที่แล้ว +1

    Great video!

  • @Phyx1u5
    @Phyx1u5 ปีที่แล้ว +2

    Thanks for the video. I do like traefik for the simple fact it's a bit more noob friendly when using with kubernetes

    • @AntonPutra
      @AntonPutra  ปีที่แล้ว +1

      yaml friendly =)

  • @dgjtf
    @dgjtf ปีที่แล้ว +1

    great! would like to see benchmark about envoy proxy

  • @user-zg2bx5cb3d
    @user-zg2bx5cb3d 11 หลายเดือนก่อน +1

    Годно, спасибо!
    Было очевидно, что nginx - это слишком мощный и хорошо написанный инструмент, повторить его результаты на языках с gc почти невозможно. Буду использовать это видео как аргумент 😊

    • @AntonPutra
      @AntonPutra  11 หลายเดือนก่อน +1

      pojalusta, hochu s linkerd proxu sravnit, govoryat bistry :)

    • @user-zg2bx5cb3d
      @user-zg2bx5cb3d 11 หลายเดือนก่อน

      @@AntonPutra буду ждать такое сравнение, подпишусь, чтоб не пропустить)

    • @AntonPutra
      @AntonPutra  11 หลายเดือนก่อน

      @@user-zg2bx5cb3d ))

  • @---tr9qg
    @---tr9qg 9 หลายเดือนก่อน +1

    It was .... deep and pro 🔥🔥🔥

    • @AntonPutra
      @AntonPutra  9 หลายเดือนก่อน

      Thanks! Appreciate it!

  • @kamurashev
    @kamurashev ปีที่แล้ว +3

    Interesting, I used apache (httpd) as a reverse proxy, historically mostly, interesting how would it compare.
    And such surprising results for grpc, I would never guess it can be this way. Although I’m wandering wether the actual backend service implementation could affect the results somehow. Don’t see any legitimate reason for proxies to behave this way.
    I can see the request time much longer for grpc, so longer lasting connections could possibly consume more resources on the proxy side. It seems the answer may be in the app. I think so. Backend analysis might help to figure out.
    Although in general I surprised how poorly the grpc system behaves. I thought it’s kinda the holy grail for the low latency systems. I would definitely appreciate more in depth analysis of the topic.

    • @AntonPutra
      @AntonPutra  ปีที่แล้ว +2

      Thanks Kyrylo for the feedback. I'll try to figure it out.

  • @LampJustin
    @LampJustin ปีที่แล้ว +2

    Does anyone know how an envoy based reverse proxy compares? I think of something like contour

  • @Taurdil
    @Taurdil ปีที่แล้ว +2

    When you say "HTTP/1" here do you really mean 1.0 without keepalive or 1.1 with keepalive? And from the client perspective, do we actually close socket each time?

    • @AntonPutra
      @AntonPutra  ปีที่แล้ว

      They both support keepalive, not sure about the latter

  • @mikolajsemeniuk8574
    @mikolajsemeniuk8574 ปีที่แล้ว +1

    🚀🔥❤

  • @JRRRRRRRRRRR
    @JRRRRRRRRRRR 2 หลายเดือนก่อน

    Great video, thank you :)
    Could I consider the NGINX performance the same as the NGINX Proxy Manager (NPM)?

    • @AntonPutra
      @AntonPutra  2 หลายเดือนก่อน

      Based on the description of the project, yes, they don't 'enhance' code functionality, mainly TLS.

  • @nootajay
    @nootajay ปีที่แล้ว +1

    How is traefik different from envoyproxy? I know it's a fork of envoy but is it designed for edge proxy?

    • @AntonPutra
      @AntonPutra  ปีที่แล้ว

      Can you send a link?

  • @SheeceGardazi
    @SheeceGardazi หลายเดือนก่อน

    gg

  • @xentricator
    @xentricator ปีที่แล้ว

    Isn't using burstable vms a bad idea to do these kind of tests? You don't really have any control over when the VM bursts or not.

    • @AntonPutra
      @AntonPutra  ปีที่แล้ว

      I ran this test at least 4 times (creating and deleting vms), each time result was the same.

    • @xentricator
      @xentricator ปีที่แล้ว

      @@AntonPutra I think this is maybe due to the k6 load test being pretty simple (x amount of users for y time without any fluctation or ramp up and downs which could result in more bursty workloads instead of pegging the cpu in a pretty constant way). You should watch out in future videos when trying to create more advanced scenarios in combination with burstable vms.
      To be clear, I am not trying to undermine your testing methodology, I really like your videos.

    • @AntonPutra
      @AntonPutra  ปีที่แล้ว

      @@xentricator Thanks, I'll keep it in mind

    • @Davidlavieri
      @Davidlavieri ปีที่แล้ว +1

      Certainly, even with "unlimited" cpu credits (t3 default) it still throttles the CPU, should be ran in compute instances to see the difference and if it does affect the result

  • @sunilkumar-xp7jz
    @sunilkumar-xp7jz 8 วันที่ผ่านมา

    Traefik API GW Installation guide, websocket support required 💐

  • @stephen.cabreros
    @stephen.cabreros 20 วันที่ผ่านมา

    what benchmarking platform do you use?

    • @AntonPutra
      @AntonPutra  20 วันที่ผ่านมา +1

      In that specific case, I used AWS and t3a.small instances. I ran tests multiple times (creating new EC2 instances each time) with the same results.
      github.com/antonputra/tutorials/blob/main/lessons/144/terraform/10-traefik-ec2.tf#L3
      github.com/antonputra/tutorials/blob/main/lessons/144/terraform/11-nginx-ec2.tf#L3

    • @stephen.cabreros
      @stephen.cabreros 20 วันที่ผ่านมา

      @@AntonPutra thanks bro, that monitoring with traffic and latency graph is it part of aws service or another platform too?

    • @AntonPutra
      @AntonPutra  20 วันที่ผ่านมา

      @@stephen.cabreros It's open source prometheus and grafana, i have all components and dashboards in my repo just in case you want to reproduce

    • @stephen.cabreros
      @stephen.cabreros 20 วันที่ผ่านมา

      @@AntonPutra ok I'll check it, thank you for this

  • @KVS797
    @KVS797 12 วันที่ผ่านมา

    Please try Pingora

    • @AntonPutra
      @AntonPutra  12 วันที่ผ่านมา +1

      ok i'll take a look

  • @yuryzhuravlev2312
    @yuryzhuravlev2312 ปีที่แล้ว

    nginx drop requests because can process more, but OS didn't give enough resources - you should change the limits.

    • @AntonPutra
      @AntonPutra  ปีที่แล้ว

      you mean file descriptors? to much customization, prefer to use defaults for tests..

    • @incseven
      @incseven ปีที่แล้ว

      @@AntonPutra default value of worker_connections is smth about 768 (multiple by number of CPU for default value "worker_processes auto")

  • @user-iz7lf9wm3i
    @user-iz7lf9wm3i ปีที่แล้ว

    kupil tesla?

    • @AntonPutra
      @AntonPutra  ปีที่แล้ว +2

      in last march, they dropped 15k today :(

  • @user-dz6il2bx5p70
    @user-dz6il2bx5p70 ปีที่แล้ว

    So Go sucks?

    • @AntonPutra
      @AntonPutra  ปีที่แล้ว

      Not at all. It's great for beginners and easy to find implementation for anything you're trying to solve.

    • @jonnyd6087
      @jonnyd6087 ปีที่แล้ว

      ​@@AntonPutra great for beginners!? Nginx is c/c++ golang isn't competing with a behemoth like that! Otherwise golang is killer.

  • @tjhinwenchiang1997
    @tjhinwenchiang1997 ปีที่แล้ว

    are you half-indonesian ?