Nest.js Kafka Microservice Tutorial

แชร์
ฝัง
  • เผยแพร่เมื่อ 21 พ.ย. 2024

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

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

    Get my highly-rated Udemy courses at a discount here: michaelguay.dev/udemy/

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

    In a short time, something complicated was simplified.
    Great tutorial.

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

    Hi, Can you follow up this video to dead letter queue, error handling, message repeat, load balance etc. Alot of people who use kafka use it at a enterprise-level for log replication, backups, redundancy. Can you make a another simple video like this for handling real world scenarios?

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

    Amazing. Your tutotials are concise, clear and packed with essential info. Thank you!

  • @abhikbanerjee3719
    @abhikbanerjee3719 ปีที่แล้ว +6

    Awesome tutorial! Just a heads up - for anyone using NestJs 10+ and @nest/microservices ^10, the data field contains the value itself (data.value will be undefined)

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

    Wonderful content man! You are one of few creators who make short and clear. I am watching all your videos even if I aware of the topics to see your perception. Eager to wait for more content :-)

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

      Thank you so much! This is greatly appreciated.

  • @GuilhermeSilva-vn6fw
    @GuilhermeSilva-vn6fw 7 หลายเดือนก่อน

    You simplified a lot of things and have wonderful teaching skills, thank you

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

    Awesommeeeeeeee !
    Please make more Microservices with nest & react

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

    Thanks for taking the time to code out our suggestion from the previous video, appreciated!

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

      Sure, thanks for the great suggestion!

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

    Hello, future man speaking here. `data.values` is not a thing anymore, the `data` object is now directly the DTO.
    Nest version: 9
    KIafkajs version: 2.2

  • @funnyclipz520
    @funnyclipz520 2 ปีที่แล้ว

    Awesome tutorial.... finally found a good tutorial of Kafka with example using NodeJS

  • @mohammedriyadh120
    @mohammedriyadh120 2 ปีที่แล้ว

    Hi Michael, Thanks a lot for the great channel, i will appreciate it if you can go much deeper with kafka clients and consumers options

  • @AmirMo_Razmi
    @AmirMo_Razmi 2 ปีที่แล้ว

    you save me from my nightmares from my project, bro

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

    if you are new to microservices, do not forget to have you rabbitMQ server running before you start this trying to connect here

  • @moylababa8196
    @moylababa8196 2 ปีที่แล้ว

    I found your channel today and subscribed immediately. your channel is full of awesome tutorial. keep up the good work. Besh wishes

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

    Tutorial is really helpful for beginners

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

    Hi Michael, thanks for this tutorial. It is worth every minute of my time. I have a very important question. How do we send back a response to the API gateway, which is intended for the frontend application ? Lets say billing was successfully and frontend application needs a feed back in order to proceed or cancel the order. How do we implement this ?

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

      Thanks! Continually polling the backend, Websockets, or a refresh button are some common approaches.

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

    Hi Michael, thank you for sharing, for some reason .Everthing is working well but I'm getting an undefined when a consume the event, probably my kakfa configuration is different

  • @까망색-j6q
    @까망색-j6q 3 หลายเดือนก่อน

    thanks this is the awesome tutorial for beginners

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

    Ha. Not what I expected. I'm used to microservices communicating via pub sub using various cloud message buses. This tutorial looks to me awfully like the dreaded "distributed monolith' - the microservices in this video all seem to have to know about each other, rather than just emitting an event and not knowing or caring what other services might consume those events...The 3 services are tightly coupled - this ends up messy, hard to understand when you have many microservices. Kind of misses the whole point of microservices, for me, anyway. Fair comment or did I miss something? I'm surprised. NestJs has always seemed better thought through in it opinions than this... is it really encouraging direct service to service comms as the default ? Or is that just how this example does it?

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

    Noob Question:
    Shouldn't the API Gateway also implement a message pattern while communicating with the billing service. An Order would go to Gateway -> Billing -> Auth and it would need to return as response back to the user via same Gateway so that the billing was successful?

  • @10_manhcuongnguyen87
    @10_manhcuongnguyen87 ปีที่แล้ว

    Hi, first of all thank you for this video. I implemented according but only get empty memberAssignment as {}

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

    Nice one

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

    Great content as always 👏
    Keep up the good work 👍

    • @mguay
      @mguay  2 ปีที่แล้ว

      Thank you very much.

  • @kisstamas6675
    @kisstamas6675 2 ปีที่แล้ว

    I learned about microservices it is the very best when the services are fully independent from each other. That means they are not communicating directly with each other, but only with events. In this video you are useing the both way to communicate with services, it's weird for me. The independency between microservices is crucial, because they can not effect each other processes (when one service terminated unexpectedly the other services have to work fine). If it necessery you have to store data redundant on each service.
    What do you think about that?
    Actually this is a very good video :)

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

      I agree this approach can come with some baggage. Check out my other Nest.js + Kafka video for a more decoupled approach.

    • @kisstamas6675
      @kisstamas6675 2 ปีที่แล้ว

      @@mguay thank you, i'm following you, so i will check your videos ;)

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

    Could anyone comment pros and cons between setting up kafka consumer as a microservice vs as a Nestjs module as in previous tutorial?

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

    Wondering if is it possible to achieve this using mono repo? Because I want to avoid code duplication and manage single node_modules. The way you set it up works but I wonder wouldn't be a bit difficult to maintain the project code base in the long run?

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

      Also wondering about this

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

      Yeah, this seems like not the right approach tbh.. Pretty sure nest is supposed to manage this.

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

    I have a question, lets say like we want to share the same Data Types between Billing and Auth for the handleOrderCreated from billing microservices. Like when we send a message right, then subscribe to it and get a callback with a params inside it, how do we want to make it like predictable? Like what is the "inside" of this particular param?
    How do we do this?

    • @permanar_
      @permanar_ 2 ปีที่แล้ว

      You called the `user.stripeUserId` because you "know" whats inside the object. But then how do we make it like type-safe and predictable?

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

    Nice video, is there a way to do that using Fastify instead od Express?

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

    Hi. In my case, I just got the undefined value just because my payload in eventPattern does not have value property. I don't know why it is different with the video .
    Please share if you know the difference with me.

    • @darrenhudson1033
      @darrenhudson1033 2 ปีที่แล้ว

      I had the same issue and just used the data object without calling data.value. may be a change in the JSON.stringify maybe?

  • @johndev-k3o
    @johndev-k3o หลายเดือนก่อน

    why is there no response on the postman?

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

    hello , thx for the video , what is the difference between this approach and the other approach you did it in the other video using only kafka js , is it the same ?

    • @mohammad-e6d9b
      @mohammad-e6d9b 6 หลายเดือนก่อน

      me too . its not clear for me .

  • @carlosspark2756
    @carlosspark2756 2 ปีที่แล้ว

    Hi great content , would you show a server-frontend mvc architecture using nest-next npm package

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

    pretty nice. Big ups 👍

  • @hoseinmirian
    @hoseinmirian 2 ปีที่แล้ว

    thanks amazing video. dont u have a course for this on udemi or somewhere? second, the concept of microservice is to have each service based on one language if team wants, and the way nest js works seems its fit for whole communication through js files? third!, Its a bit confusing when u are sending any type of request to the same root route like localhost:3000. whilst having route for each service might makes more sense what do u think? I mean u are sending all type of request to it and it dispatch events! fine! but there is no actual route so front-end can call in different end point.. can u clarify on that, tnx

  • @zhangshiyucao
    @zhangshiyucao 2 ปีที่แล้ว

    this is gold, thank you

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

    How to keep nodemodules common for all services ?

  • @muhammadnaveedashfaq2991
    @muhammadnaveedashfaq2991 2 ปีที่แล้ว

    Amazing content. Thanks

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

    Great content 🤩

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

    Hi amazing video! I have a issue, I have a macbook M1 and tried to use docker-compose for intall kafdrop but I had a error.
    Can you have a mac M1? Do know how to install kafdrop in M1 machines?
    Thanks!

  • @saurabh9446
    @saurabh9446 2 ปีที่แล้ว

    I am getting this error - "The group coordinator is not available". I am using docker-compose with WSL2 on windows home

  • @ninabohm1535
    @ninabohm1535 2 ปีที่แล้ว

    Great tutorial, merci!

  • @martinduong6944
    @martinduong6944 2 ปีที่แล้ว

    It's amazing tutorial.

  • @yatindrajain6828
    @yatindrajain6828 2 ปีที่แล้ว

    Hi, Is there any way to get messages based on offset or get offset of last consumed message?

  • @shubham8550
    @shubham8550 2 ปีที่แล้ว

    great content 😊👍

  • @mkroven
    @mkroven 2 ปีที่แล้ว

    thank you this is a great tutorial.

  • @wayneyu3031
    @wayneyu3031 2 ปีที่แล้ว

    How can I set up the VS Code theme as yours, can u give me so reference? Again, I love your video so much, great work, looks cool! keep going bro!

    • @mguay
      @mguay  2 ปีที่แล้ว

      Thanks! I use Material Theme + Icons which are extensions.

  • @Abhishekn._
    @Abhishekn._ ปีที่แล้ว

    thanks

  • @abdullahajibade7210
    @abdullahajibade7210 2 ปีที่แล้ว

    Does the event pattern has a return type as message pattern. I asked because of the subscription you did.

    • @mguay
      @mguay  2 ปีที่แล้ว

      It returns an Observable the same as the message pattern, however I'm not sure what data would come back, if any.

  • @mridulmishra8166
    @mridulmishra8166 2 ปีที่แล้ว

    -21deg Dude do u live in siberia ? :p ... great content BTW.

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

      I'm in the USA.

  • @xisssss
    @xisssss 2 ปีที่แล้ว

    great tutorial! really sorry for the stupid question.. but what vscode theme are you using?

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

      No such thing. I’m using Material theme and icons.

  • @arslananjum416
    @arslananjum416 2 ปีที่แล้ว

    Can anyone tell, how to create API with implementation of kafka in nodejs?

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

    Hi, I'm currently on nest@9.x.x and kafka@2.x.x and had to call the toString() prototype method on the ClientKafka emit() method.
    The NestJs documentation needs update.

  • @michaelmontero2902
    @michaelmontero2902 2 ปีที่แล้ว

    amazing.

  • @farzadthev1554
    @farzadthev1554 2 ปีที่แล้ว

    Cool !!!
    Thanx a lot

  • @samereldadah1911
    @samereldadah1911 2 ปีที่แล้ว

    Great

  • @MartinPerez-mi1ty
    @MartinPerez-mi1ty 2 ปีที่แล้ว

    New sub

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

    Nice tutorial, but too much code in one place, making it hard to comprehend

  • @marcovignotto1559
    @marcovignotto1559 2 ปีที่แล้ว

    Thanks! I literally love your content! But you're too fast, I think in 5 minutes I paused 100 times!

    • @mguay
      @mguay  2 ปีที่แล้ว

      Thanks! And I appreciate the feedback.