Cloudflare is moving away from NGINX | The Backend Engineering Show

Поделиться
HTML-код
  • Опубликовано: 16 янв 2025
  • НаукаНаука

Комментарии • 118

  • @hnasr
    @hnasr  2 года назад +6

    Learn more about the fundamentals of network engineering, grab my udemy course $9.99 discount coupon until oct 9th network.husseinnasser.com

  • @bitslayerscorpion8776
    @bitslayerscorpion8776 2 года назад +185

    One suggestion Hussein, Start a dev podcast series now. It would have been great if cloudflare senior dev talked about this in great details like what problem did they face etc etc. Would really love that series.

    • @yehudamakarov
      @yehudamakarov 2 года назад +2

      Absolutely down for podcasts with Hussein

    • @jessereyes-cortes1194
      @jessereyes-cortes1194 2 года назад +7

      Please, it’s so hard to find good podcasts for software engineering.

    • @ignaciopere6378
      @ignaciopere6378 2 года назад

      Maybe you're being sarcastic, but he already have one

    • @AjithkumarSekar
      @AjithkumarSekar 2 года назад

      @@yehudamakarov Are you from Cloudflare?

    • @Knightfall23
      @Knightfall23 2 года назад

      I’m from the cloud

  • @AbhinavKulshreshtha
    @AbhinavKulshreshtha 2 года назад +7

    Eversince I read the blogpost, I was waiting for a video from you. Amazing content as always.

  • @eduardabramovich1216
    @eduardabramovich1216 2 года назад +13

    I feel we will begin to see more powerful stuff being written in Rust. Time to learn the language.

  • @engineeranonymous
    @engineeranonymous 2 года назад +11

    Cloudflare is writing a custom reverse proxy, Nginx is more than that. I use Nginx to serve static web pages and files, web application firewall and dos protection besides caching and reverse proxy. So I will keep on using it.

    • @noureddine3633
      @noureddine3633 Год назад +1

      yup but you're not serving trillion request a day, you get the point now ???

  • @weissmannrob
    @weissmannrob 2 года назад +7

    Well explained, thanks.
    We still use Ngnix, but have constantly problems with upstreams re-connections and as soon as we have time, we gonna move to another reverse proxy.

    • @AbhinavKulshreshtha
      @AbhinavKulshreshtha 2 года назад +1

      Try Caddy2, I hear good things about it. I wanted to try it on some personal project but never got time to move it to production.

    • @weissmannrob
      @weissmannrob 2 года назад

      @@AbhinavKulshreshtha thanks for the suggestion

    • @tonyhart2744
      @tonyhart2744 2 года назад +1

      what ''we'' in this context ?

    • @scottross5495
      @scottross5495 2 года назад

      Nginx is a web server first and a proxy second.

  • @onlyjustin4u
    @onlyjustin4u 2 года назад +5

    Golang's runtime scheduler also uses work stealing to maintain goroutines. So, if you want to know more about have look into golang runtime

  • @worldwide_wes
    @worldwide_wes 2 года назад +17

    I was just learning nginx lol

    • @AbhinavKulshreshtha
      @AbhinavKulshreshtha 2 года назад +16

      For now, pingora is going to be specifically for their internal use, They will release a community version in future, but at present, it is specifically designed for their specific work requirment. Nginx will always remain something worth learning.

    • @worldwide_wes
      @worldwide_wes 2 года назад

      @@AbhinavKulshreshtha thanks for the advice

    • @miigaa4571
      @miigaa4571 2 года назад +4

      man you will not regret from learning nginx

    • @gradientO
      @gradientO 2 года назад +2

      There will be a lot of systems using nginx. Like I'm learning Java now lol

    • @dmitrikonnov922
      @dmitrikonnov922 2 года назад +2

      Somebody's still using Apache Server.

  • @abdenourkouider820
    @abdenourkouider820 2 года назад

    HOLYY SHIITTT I LOVE YOU ❤❤❤ I'VE BEEN SEARCHING AROUND THE INTERNET FOR 5 HOURS AND THEN NOW IT'S OVER FINALLY I LOVE YOU MAAN

  • @zulhilmizainudin
    @zulhilmizainudin 2 года назад +2

    I've heard "connection pooling" terminology many times but I don't really get it to be honest. Not sure if I already use it without noticing. Could you make a video about connection pooling in general and demo how project like PgBouncer can help when it comes to database scaling problem? Thank you.

  • @SkegAudio
    @SkegAudio 2 года назад +4

    Glad I started learning Rust about a year ago. I saw the potential back then, now I see the confidence.

  • @ravi7979
    @ravi7979 2 года назад +1

    Hi. Can we have this as audiobook on spotify or something?

  • @autohmae
    @autohmae 2 года назад +3

    8:35 it's because of their security firewall system/rules which needs to check lots of stuff, including the body of the HTML, etc.

    • @autohmae
      @autohmae 2 года назад

      I'm certain the service workers are handled by separate servers, not their proxy servers.

    • @autohmae
      @autohmae 2 года назад

      11:11 maybe, some what, but more importantly: for HTTP/2 and HTTP/3 you want to reuse as best as possible

  • @damulle
    @damulle 2 года назад +3

    Very cool video as always. Perfect length as well.

  • @jamess1787
    @jamess1787 2 года назад +1

    You sir, have a voice like Morgan Freeman meets Hussein. 🥳.
    Thanks for the video.

  • @chandler-barry
    @chandler-barry 2 года назад +1

    first video, subscribed cuz im a tech nerd (cybersec)

  • @pinch-of-salt
    @pinch-of-salt 2 года назад +3

    I totally agree that the language doesn't matter too much, everyone is so onboard on the rust hype train people forget it's just another language and not always the best choice. I love rust but I don't see it fit for every use case.

  • @toniferic-tech8733
    @toniferic-tech8733 2 года назад +1

    Surprised haproxy wasn’t mentioned as a consideration. It is indeed very efficient.

    • @hnasr
      @hnasr  2 года назад

      yeah was surprised too, I really like HAProxy specially its simplicity.

  • @cotneit
    @cotneit 2 года назад +11

    Nice timing! I was just looking into reverse proxies and was curious if there was something written in Rust

    • @godnyx117
      @godnyx117 2 года назад +1

      Hopefully the don't touch Rust.

    • @godnyx117
      @godnyx117 2 года назад

      Yeah, didn't show the video when I replied. FML...

  • @andrewandrosow4797
    @andrewandrosow4797 Год назад +1

    Hello! Good video! Igor Sisoyev is the author of NGINX. He had gone from the G5 before a war in Ukraine. After this, he founded his own firm in Russia. Igor wrote antivirus software in the past, so he is a specialist in network protocols and system programming. I have a question - is NGINX safe for a user? Is there any hole for russian FSB?

    • @jiacungu7851
      @jiacungu7851 Год назад

      what'a wrong with your brain😅

    • @mad_t
      @mad_t 10 месяцев назад +1

      It's open source. Go ahead and research.
      But I doubt you even care.

  • @fbifido2
    @fbifido2 10 месяцев назад

    2. Is Pingora also a web server?
    or can it be used as a web server?

  • @venkatavineelyalamarthy6958
    @venkatavineelyalamarthy6958 2 года назад +7

    I wonder how Cloudflare is not losing its engineers to FAANG and the likes. If their engineers can build stuff like that, why wouldn't they go to FAAANG and the likes and get the best pay?

    • @pierce8308
      @pierce8308 2 года назад +10

      because not everyone is after money, and FAANG are not the only companies in the world solving interesting problems

    • @gg-gn3re
      @gg-gn3re 2 года назад +1

      you're missing microsoft.
      The correct acronym is FAGMAN.

    • @liamkearn
      @liamkearn 2 года назад

      Cloudflare can afford to offer FAANG salary. It’s only going to grow bigger.

    • @rand0mtv660
      @rand0mtv660 2 года назад

      You think Cloudflare doesn't have competitive salary, especially for their top talent? I'm quite sure they are paid very well. Cloudflare isn't really a small company.

    • @liamkearn
      @liamkearn 2 года назад

      @@rand0mtv660 it’s a newer company that grew FAST, size != money on hand for hiring at that scale and speed. I suspect from their blogs that their engineering quality is very high so it makes more sense to scale infra and retain engineers. You’re right though they probably can (and will) start offering really competitive salaries.

  • @esra_erimez
    @esra_erimez 2 года назад +1

    I wonder if Pingora can handle MSRPC

  • @fbifido2
    @fbifido2 10 месяцев назад

    1. Are they replacing NGINX web server?

  • @pierce8308
    @pierce8308 2 года назад +2

    19:32 I dont understand how multithreading eases sharing over multiprocessing ? Both cases be need some sort of shared memory. Both cases require sychronisation primitves for preventing data races.
    However Multiprocessing provides them better security and memory isolation over multithreading, so in that sense multiprocessing is 100% an advantage over multithreading. So why still are they choosing multithreading over multiprocessing ?

    • @pierce8308
      @pierce8308 2 года назад

      Unless ofcourse they intend to have several threads/green-threads multiplexed over a smaller number cores. But the article doesnt seem to mention that

    • @valikmora
      @valikmora 2 года назад

      @@pierce8308 Imo I think it's because you have better performance multi-threading in a single core and sharing resources between cores as opposed to managing individual processes in a single core or more, creating Shared memory pools, serialize data between processes and a lot whole more of chances of memory leaks, they rather implement a full process as a thread.

    • @pierce8308
      @pierce8308 2 года назад

      @@valikmora fair enough.

  • @lkkhgdgfdljhkjfghjfg8766
    @lkkhgdgfdljhkjfghjfg8766 2 года назад

    How have you never heard of work stealing? It's such an incredibly basic and fundamental concept.

  • @AmauryJacquot
    @AmauryJacquot 2 года назад

    work stealing basically allows a worker to actually look into the other workers input queues when their own queue is empty, and pop a task from that queue

  • @pajeetsingh
    @pajeetsingh 2 года назад

    How to make own cloudflare like system?

  • @nader1999ful
    @nader1999ful 2 года назад +1

    ملك.
    Work stealing is seen a lot in recent systems research. Especially when you have a network bypass (DPDK for instance)
    Keep up the good work man

  • @catlmarc9618
    @catlmarc9618 2 года назад +3

    Just found your channel. Great info and entertaining. Great job

  • @noureddine3633
    @noureddine3633 Год назад

    7:10 even if a worker gets burned without jumping to next worker , that's still a win win scenario

  • @mohamedhabas7391
    @mohamedhabas7391 2 года назад +3

    Thank you Hussein, for always providing great content.

  • @chrishabgood8900
    @chrishabgood8900 Год назад

    man having to implement all of the status codes would be a project on itself!!!

  • @xxultz
    @xxultz 2 года назад +2

    Damn, I just bought your Nginx course in Udemy. Should I ask for a refund? :)

    • @hnasr
      @hnasr  2 года назад +2

      Haha enjoy the course! NGINX is still awesome.

  • @kumartatsat868
    @kumartatsat868 2 года назад +1

    Work stealing is a fucking amazing concept. Just read about it. I'll try and implement it to see how it works in action, for sure.

  • @ahmedelbouhairi3897
    @ahmedelbouhairi3897 2 года назад

    took me a while due to mistake, but it works thanks

  • @scottspitlerII
    @scottspitlerII 2 года назад +2

    I’m a kernel engineer btw, threads and processes are unique in Linux. They aren’t a silver bullet, but threads are easier than processes. Less swapping in the page table, and faster

  • @svettnabb
    @svettnabb 2 года назад +1

    After F5 acquired NGINX, it has started to suck

  • @Enjoyablewalks
    @Enjoyablewalks 2 года назад +1

    Love the details as always

  • @Ankhelinos
    @Ankhelinos 2 года назад

    My dear, love your content, but your white screen is like radioactive lava or something. Care to use some dark-mode on your browser ? xD
    Otherwise, good as always!

  • @HK-zd2vd
    @HK-zd2vd 2 года назад

    I like your style, keep it up!

  • @worawat2543
    @worawat2543 2 года назад

    its works, thank you

  • @mohamedjasim3916
    @mohamedjasim3916 2 года назад

    Nice topic 👍

  • @aminaelbekkali6187
    @aminaelbekkali6187 2 года назад

    It worked perfectly!!! Thank you so much

  • @RK-ly5qj
    @RK-ly5qj 2 года назад

    I heard that CF will make Pingora opensource - so waiting for a docker xd

  • @stevenhe3462
    @stevenhe3462 2 года назад +3

    In short, they simply need and want tokio. Zero-cost async runtime is the perfect fit for performance-critical network jobs.

  • @hansenchrisw
    @hansenchrisw 2 года назад +1

    One of my funnest work projects was implementing work stealing to speed up a long running process. That alone took it from 3 days to 3 hours or so. We had to double check it actually did all of the work 😂.

    • @hnasr
      @hnasr  2 года назад

      Very interesting!

  • @scottspitlerII
    @scottspitlerII 2 года назад

    All of this is just a fancy way of beating the kernel to death, I wonder if this actually fixes the IRQ Storm problem? Think it’s time for a new architecture in silicon and in writing OS’s, micro kernels are the future.

  • @binday9009
    @binday9009 2 года назад

    Thank you for explaining this thoroughly!

  • @BusyExplore
    @BusyExplore 2 года назад +1

    This was so helpful!! Thank you

  • @journeystrong
    @journeystrong 2 года назад

    YO THANK YOU SO MUCH

  • @Movebiggies
    @Movebiggies 2 года назад

    thanks so much man

  • @KhmerueTeamsOfficial
    @KhmerueTeamsOfficial 2 года назад

    it's a crashing drive, that we known it!

  • @Alexander_RobloxYT
    @Alexander_RobloxYT 2 года назад +1

    Take aways: write real code for performance gains, don't write glue code, stick with C and forget about yet another Rusty language!

  • @bashardlaleh2110
    @bashardlaleh2110 2 года назад

    would love to watch you talking about kubernetes in-depth like you talk about proxies and stuff coz k8s is so popular now and it is really exciting

  • @RealKered
    @RealKered 2 года назад +1

    thats crazy my dudes

  • @QamarZaman-pq3fv
    @QamarZaman-pq3fv 2 года назад

    Awesome program

  • @dmitrikonnov922
    @dmitrikonnov922 2 года назад

    I'm shocked!

  • @salobhikhan
    @salobhikhan 2 года назад

    I would love to see backend engineering session on Spring Framework

  • @SB-qm5wg
    @SB-qm5wg 2 года назад

    I can understand why. Cloudflare is a proxy-behemoth

  • @techaido
    @techaido 6 месяцев назад

    8:18 sneaky guy

  • @RokoKovac
    @RokoKovac Год назад +1

    didn't understand shit, but enjoyed the video nonetheless!

  • @yash_gupta9696
    @yash_gupta9696 2 года назад

    Golang scheduler does do work stealing.

  • @kalmyk
    @kalmyk 2 года назад

    They talk about my one tapz

  • @rajithkumar3424
    @rajithkumar3424 2 года назад

    Was a fresh information.Will be nice , if you can improve your presentation skills , the way you talk . Please stick to the content

  • @aramikm
    @aramikm 2 года назад

    It's funny that people who never used Rust, don't consider language choice that important. But once you've used it you will become convinced that they would have never risked developing something like this in any other language

  • @Ankit-hs9nb
    @Ankit-hs9nb 2 года назад

    i first thought he is CarryMinati!😄

  • @gg-gn3re
    @gg-gn3re 2 года назад +3

    Nginx has been "implementing" HTTP3 for like 2 years, slow as hell. We've started and finished the implementation in Go months ago lmao. C is just too slow of dev time and takes too much work. A.I. maybe one day will fix that and write it all for us but until then, dev hours matter too much.

    • @liamkearn
      @liamkearn 2 года назад +1

      Yes, one and the same… Nginx despite being pretty notoriously tightarsed and slow have a good track record for well crafted solutions. I highly doubt your Go solution would measure up in any benchmark but time to market maybe that’s just the cynic in me!

    • @gg-gn3re
      @gg-gn3re 2 года назад

      @@liamkearn nginx isn't slow, wtf lol.. The Go solution it's what traefik, docker, caddy, etc all use. The http stack is less than 5% of the performance gains when dealing with traffic so it's pretty irrelevant. Cloudflare literally left nginx behind because of what I said which is the only thing that matters.

    • @liamkearn
      @liamkearn 2 года назад +1

      @@gg-gn3re sorry didn’t clarify I didn’t mean slow in terms of speed. I meant in terms of development

    • @gg-gn3re
      @gg-gn3re 2 года назад

      @@liamkearn oh well, looking at performance nginx is only ~10% better so it's worse than I thought.

    • @liamkearn
      @liamkearn 2 года назад

      @@gg-gn3re yes 10% better with no citations, specifics or baselines, sounds conclusive I’ll trust you analysed every stack frame.

  • @dmsalah
    @dmsalah 2 года назад +1

    🇧🇭==♥️😍

  • @shinebayar
    @shinebayar 2 года назад

    Nah not open source.

  • @elmehdisaniss2731
    @elmehdisaniss2731 2 года назад +5

    I want to become like you Hussein, would you like to be my guide pleeeease ?
    I am a DevOps Engineer and I deal with everything, including reverse proxies, deploying applications in aws lambda with api gate way, S3 and in kubernetes.

  • @lenkamoravcikova311
    @lenkamoravcikova311 2 года назад

    E

  • @guiller2371
    @guiller2371 2 года назад

    Good, I was never a fan of NGINS.

  • @tiredofeverythingnew
    @tiredofeverythingnew 2 года назад

    Get to the point!

  • @rjbrake
    @rjbrake 2 года назад

    dirka dirka dirka dirka

  • @islamAbdo7
    @islamAbdo7 2 года назад +1

    Thank you for explaining this thoroughly!