Kafka vs. RabbitMQ vs. Messaging Middleware vs. Pulsar

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 ก.ย. 2024
  • Get a Free System Design PDF with 158 pages by subscribing to our weekly newsletter: bit.ly/bytebyt...
    Animation tools: Adobe Illustrator and After Effects.
    Checkout our bestselling System Design Interview books:
    Volume 1: amzn.to/3Ou7gkd
    Volume 2: amzn.to/3HqGozy
    The digital version of System Design Interview books: bit.ly/3mlDSk9
    ABOUT US:
    Covering topics and trends in large-scale system design, from the authors of the best-selling System Design Interview series.

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

  • @chetankhandave1072
    @chetankhandave1072 3 หลายเดือนก่อน +48

    Very good information, but it can much better if you explain how Stream processing works in Kafka , RabbitMQ, Pulsar. Polling and pushing in each techniques is very important to know.

    • @jayrigger7508
      @jayrigger7508 3 หลายเดือนก่อน +2

      sounds like a good thing for you to work on and post yourself on own channel

    • @alexw1306
      @alexw1306 3 หลายเดือนก่อน +7

      @@jayrigger7508 why so arrogant? He literally suggested a potential improvement and you come by and say "Just do it yourself".

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

      That’s not an improvement, but literally a different topic.

  • @MobileComputing
    @MobileComputing 3 หลายเดือนก่อน +52

    Cool, some names of MQ tools were mentioned. Where is the "vs" in "Kafka vs. RabbitMQ vs. Messaging Middleware vs. Pulsar"?

  • @CalifornianViking
    @CalifornianViking 3 หลายเดือนก่อน +18

    @ByteByteGo - Thanks for another good video.
    A word of caution. While message queues are impressive, they are often misapplied. I have seen message queues make systems slower and less reliable while consuming a lot of resources that could have been used to speed up other parts of the system.
    It would be great if you could create a video that explains when (and when not) to use a message queue.

    • @br.3250
      @br.3250 3 หลายเดือนก่อน +1

      Do you know anything about that, I'd certainly be useful

  • @fadthegreat
    @fadthegreat 3 หลายเดือนก่อน +2

    wow, within 4min we already get and understand the high level of each message queueing from old to latest. Thank you

  • @ManticoreRoko
    @ManticoreRoko 3 หลายเดือนก่อน +6

    Why are you forget Redpanda(and Redpanda ecosystem)?? Redpanda is most powerful streaming solution today working C++ and GO under hood + Kafka Api. Please talk about Redpanda too

    • @angryktulhu
      @angryktulhu 3 หลายเดือนก่อน +2

      No 😂

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

      vendor lock in ecosystems get outta here

  • @hentie5371
    @hentie5371 3 หลายเดือนก่อน +4

    What is XXX would be better title. There is no 'vs.' in the whole video. If I just throw this video's content to my tech design spec as explanation of why I picked Kafka over RabbitMQ or another way around, I will probably have to look for another job again.
    When we talk about 'vs.' we should go from advantages, disadvantages, use case (this was mentioned). No advantage or disadvantage for one over another has been mentioned throughout the video.

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

    While Pulsar is evolution of a message queue in one way, it lacks exactly once delivery policy, which is Kafka is famous for the most

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

    Don't forget about Microsoft Message Queue (MSMQ), it's still there.

  • @Flako-dd
    @Flako-dd 3 หลายเดือนก่อน +1

    I looked into Pulsar recently, looks really powerful. Anybody got real-world experience already?

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

    This is great information! Thanks for the video. Can you do a video explaining and reviewing some of the top Platforms as a Service options? Eg. Heroku, Render, Digital Ocean, Vercel, Fly, etc. When to use them and which ones are better for which job? Thank you.

  • @RahulSingh-pd1cr
    @RahulSingh-pd1cr 3 หลายเดือนก่อน +1

    Which tool has been used for this graph can anyone tell me

  • @MelroyvandenBerg
    @MelroyvandenBerg 3 หลายเดือนก่อน +1

    I don't like the cloud focuses solutions. Like the latest you showed. I want to run a message queue system on prem.

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

      I've spent a few years with a RabbitMQ backed system on-prem. Granted, on-prem, on a VM on desktop/laptop, and on-prem in a VM in a llocal data center are all about the same thing these days. Failure modes and recovery aren't always obvious (especially if the VM is frozen and moved), but it's at least a decent solution and might be a great one depending on your circumstances.

  • @PeriMCS
    @PeriMCS 3 หลายเดือนก่อน +1

    I see Kafka is often used as message queue which it is not.

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

      Persistent sharded logs as the source of truth 🥵

  • @devalshah69
    @devalshah69 3 หลายเดือนก่อน +2

    anyone have used ZeroMQ?

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

    Great video
    How do you design animated diagram?

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

    Ibm mq supports hardware failures - not so sure.
    We ran it at a fairy large company - once a new service without proper disposal code took down MQ node, no one could publish or consume a message

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

    please do Spark and Hadoop

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

    If we buy ByteByteGo subscription will you share your powerpoint clip arts ?

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

    hin and goog luk, please what s the sofwre wich you make your presentation

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

    How do you create the animations? After Effects or built-in animation with Power Point?

  • @JonnyJiang-c4m
    @JonnyJiang-c4m หลายเดือนก่อน

    how about rocketmq?

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

    can i ask what tool to created animated diagrams like that ?

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

    How do you make these slides? What is the tool name?

  • @JoseLee-o5p
    @JoseLee-o5p 6 วันที่ผ่านมา

    Collins Meadow

  • @LindaMartinez-l1l
    @LindaMartinez-l1l 16 วันที่ผ่านมา

    Cordelia Fields

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

    We would need implementation too for all the tools you have explained.
    Please make videos on those too.

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

    theres an incredibly nasty high pitch noise until 0:12

  • @shinobi77
    @shinobi77 3 หลายเดือนก่อน +1

    How about Redis Pub/Sub?

  • @Fahad-et3sc
    @Fahad-et3sc 3 หลายเดือนก่อน

    one day i will understand all this lol

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

    how about rocketMQ?

  • @miran248
    @miran248 3 หลายเดือนก่อน +17

    Worth mentioning is also (jetstream) nats, trivial to scale, has routing, partitioning, queueing, pub sub; it also has key value store, object store.
    Imagine if kafka and redis had a baby.

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

      Wow, didn't know of it. Specially the object store seems cool

    • @miran248
      @miran248 3 หลายเดือนก่อน +1

      @@rogsiel While i haven't used their object store yet, i am using the key value store to persist actor's internal state, that way i don't need to rebuild it (event sourcing pattern) before processing the requests.
      The only issue i have with nats is the lack of backup / recovery options, seems like replication + a recovery cluster is the preferred way.

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

      oh that's cool . Will definitely look into it. Having pub/sub and object store together is interesting.
      I'm already doing the exact same thing for backups and persistent data.

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

      Nats doesn’t have partitioning, and apparently never will. You can emulate it with channels, but you won’t get rebalancing, for example. So it’s more like a cousin to Kafka

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

      @@nikitamyazin6586 Are you talking about jetstream topics or old nats streaming server (stan)?
      You can have multiple consumers on the same topic and as long as they belong to the same group they will all act as one.
      You can also partition topics, based on some (hashed) key and split incoming traffic across multiple workers, so that the same topic always reaches the same worker, which is very useful with actors.
      I'm sure you've seen this and we're just thinking of different kinds of partitioning.
      docs DOT nats DOT io/nats-concepts/subject_mapping

  • @artemvasilyev1637
    @artemvasilyev1637 2 หลายเดือนก่อน +1

    what service do you use to draw these animations?

  • @JonathanDieu
    @JonathanDieu 3 หลายเดือนก่อน +2

    Thank you for continuing to create such helpful resources! 🐐

  • @ihsanpro9406
    @ihsanpro9406 3 หลายเดือนก่อน +1

    How do you exclude NATS from here ? Come on man !

  • @JohnSmith-op7ls
    @JohnSmith-op7ls 3 หลายเดือนก่อน +66

    Programming content creators: Want to know how companies you’ll never work for do things the companies you will work for don’t need to do?

    • @oskarszwajkowski
      @oskarszwajkowski 3 หลายเดือนก่อน +8

      Or giving you freshest framework/tool so you can rewrite your application again for no reason at all 😅

    • @JohnSmith-op7ls
      @JohnSmith-op7ls 3 หลายเดือนก่อน +2

      @@oskarszwajkowski Trend casing, when you need an excuse to not do real work

    • @matonolo
      @matonolo 3 หลายเดือนก่อน +14

      U are just mad because u cant handle more advance concepts than programming.

    • @quinnherden
      @quinnherden 3 หลายเดือนก่อน +5

      ​@@matonolo "More advanced concepts than programming".. what?

    • @JohnnySacc
      @JohnnySacc 3 หลายเดือนก่อน +16

      Event-driven microservice architecture is important to know if you want to work in backend. Not sure why you're acting like this is impractical knowledge.

  • @ament4069
    @ament4069 3 หลายเดือนก่อน +1

    Each diagram seems so informative
    Thank you

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

    Hi, I do not know your name, but I really enjoyed your videos and learned so much from them. In the diagram, (0:17min) I think there is a typo in the flow from passenger management to notification shouldn't be "Notify Driver" instead of "Notify Passenger" or invert the flow from the notification queue to passenger. If I'm wrong, please let me know if you have time of course. Hope you have a really nice day or night Mr. and keep going.

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

    The animated flow charts and diagrams are very impressive, which tool did you use to create those?
    BTW all the videos you created are super high quality in both content and presentation, great job!

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

    Should the arrow from driver management to notification be labeled as "NOTIFY DRIVER"?

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

    From this video, I don't understand how there was an "evolution". It seems you are just naming arbitrary virtues of each messaging system... Very hard to follow. Cheers.

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

    Its good know abt latest tech trends and tools but challenging part to learn where to use them in overall system. Breaking a system into different apps is most challenging thing in real world which can only be learn by experience

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

    Love your videos. You mentioned exactly once semantics as a feature of Kafka. I have found that another game changer is the capability of building systems that also maintain a guarantee of message order per key (usually a session id) which makes all of it (often in combination with Apache Flink) suitable for a whole new class of applications.

  • @LindaMartin-d2h
    @LindaMartin-d2h 23 วันที่ผ่านมา

    Treutel Island

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

    I use only Kafka. May be I nee to try something new.

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

    Thank you for doing this!

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

    how about NATS?

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

    🫡

  • @ianjohnson2433
    @ianjohnson2433 3 หลายเดือนก่อน +1

    Bro i think you are well knowledgeable but to help,why not indicate by doing than just explaining?I have never seen you code or apply these concepts.

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

    Which you had included product from Microsoft in this comparison.

  • @alexalexin9491
    @alexalexin9491 3 หลายเดือนก่อน +5

    Oh please, you must've beaten all records of unintelligibility in this video. I struggled to understand the simplest words you sais instead of getting the main ideas of the video. Can you please work on your prounciation a little, PLEASE?

    • @mtsmithtube
      @mtsmithtube 3 หลายเดือนก่อน +2

      There's a transcript option

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

      this is a you problem, video is well explained. maybe you should learn some basics first.