I just wanted to drop by and say a massive thank you for your awesome tutorial on Node.js microservice architecture with RabbitMQ. Your explanation was clear, concise, and super easy to follow. I've been diving into microservices lately, and your tutorial provided me with exactly the insights I needed to understand how to implement them effectively using Node.js and RabbitMQ. Your step-by-step guidance made the whole process seem much less daunting.
Like the elusive 6.0 of figure skating or batting a thousand in baseball, you've gone and created what may be the perfect (and I mean perfect) 1-hour RUclips video tutorial. The world held its breath in the last five minutes. Flawless!
Hi, great video, great example. But don't You think that a way you use RMQ and Express was to coupled? Routers inside callback of RMQ is not the best solution.
how about replacing axios call with creating an event when admin is down and a consumer for admin to listen to like_increase_event? does it solve the issue? I still do not get why did you call using axios while creating an event is more reliable... please explain. tnx
i am having problems connecting to the mysql database using typeorm since the createConnection function is deprecated, does anyone have a fix for it, will really appreciate, thanks.
Hello, great work, thanks a lot for this, but I cannot connect to mongo: neither to mongo atlas nor to mongo compass. This is the log I got: Error: No connection options were found in any orm configuration files. I spent couple of hours to solve this problem, but with no result. Do you have any ideas?
Hey,can you recommend the next Video/ Course to extend this learning? Want to get into making some production level microservices . Thanks!! Awaiting your Reply (*_*)
Hi ,is there a way to instead of typing the name of the queue directly in the code (hardcoded) in multiple microservices, define it i a declarative way or something?
I have started learning RabbitMQ recently and going through their documentation and watching another tutorial video on youtube (using Java) I learnt that it uses Exchange and and is binded to queues through some routing key. But here I see it used totally different (directly interacting with queue without the need for exchange and routing key). Does it have a different implementation in Nodejs or am I missing something?
It was great and easy to understand, few questions I'd like to ask: How to handle scenarios like sendtoqueue failed, and is there any chance that after getting sent to the queue something unprecedented happened with queue before the message being consumed,,, then how to maintain consistency. Thanks
Hi, let’s say the consuming service was down, you can configure rabbitmq to expect an acknowledgement from the consuming service, if not it will keep the event ready until it’s acknowledged from the service
Good question, not exactly depends on how you use it. Usually, the user identity is always a separate service. If you want to send information that the user is logged in at this time or a new user is registered then you can send and consume events. If you want to make sure that the user is authenticated in another microservice then in this case you should use Internal Http Calls to the User Identity Microservice to verify the user. I have a course that explains this thing exactly but I use Laravel unfortunately. I will create another one using Node, not sure when but you can check it later if you are interested more in the topic.
@@ScalableScripts I would definitely wait for your course. The code structure is exceptionally perfect. I would definitely wait for a course to make an app for end to end demonstration.
very good video but I have a comment. what happens when sending axios call to another service, the other service is down? you did not explain how you would manage that case? In a real production app, the whole concept of micro service is to keep each app separate to work independently and if one of them is down the other should be working. so imagine your post is dependent on comment service. someone leave a comment and call axios to sync it with post service and post is down! now axios call gets rejected.
I like your video and would like to suggest creating nodemon.json conf file with the { "watch":["src"], "ext":".ts", "exec":"ts-node ./src/app.ts" } and in package.json: "start":"nodemon" this way, you don't need to run the tsc on a constant basis, just for final builds
Yes, First I will release a NestJS Microservices course next week then I will create ~7 new courses with NodeJS over the next 2-3 months including the Microservices course
everyone in the comments is okay with this tutorial, but I think it could be done in 10 minutest(just rabbitmq part), all other parts with databases are redundant, just for pure beginners
I just wanted to drop by and say a massive thank you for your awesome tutorial on Node.js microservice architecture with RabbitMQ. Your explanation was clear, concise, and super easy to follow.
I've been diving into microservices lately, and your tutorial provided me with exactly the insights I needed to understand how to implement them effectively using Node.js and RabbitMQ. Your step-by-step guidance made the whole process seem much less daunting.
Like the elusive 6.0 of figure skating or batting a thousand in baseball, you've gone and created what may be the perfect (and I mean perfect) 1-hour RUclips video tutorial. The world held its breath in the last five minutes. Flawless!
Agree 100%. This is excellent content, thank you for taking the time to record and share.
I was considering giving the video the benefit of doubt, your reply killed the doubt before it could take flight
my exact thoughts ...Excellent.
dude this channel is gold!
I'm new to event-driven and this tutorial is very easy to understand
thanks, good tutorial, always see the ads before start see the video ^ ^
Awesome tutorial man! Keep it up!!
Thank you for useful information!
Finally something good and practical
Hi, great video, great example. But don't You think that a way you use RMQ and Express was to coupled? Routers inside callback of RMQ is not the best solution.
Good video! thanks for sharing!
Thanks!!!!!!!!!!! this tutorial is beautiful
keep up the good work amazing tutorial
Excellent course! Kept me up all night! :D
Thank you thank you. Good content!
great video!
Thanks for the video, 2 questions, how the frontend update the info asynchronously ? which db tool r u using to connect both sql and no sql db ?
Quite, interesting... good job..
What software are you using to access the dbs?
Super awesome. Thank you so much
What great content, I am looking forward to publishing a nodejs course with microservices on your platform.
how about replacing axios call with creating an event when admin is down and a consumer for admin to listen to like_increase_event? does it solve the issue? I still do not get why did you call using axios while creating an event is more reliable... please explain. tnx
i am having problems connecting to the mysql database using typeorm since the createConnection function is deprecated, does anyone have a fix for it, will really appreciate, thanks.
bro did you fix it or is it not fixed unsolvable
hey man, you make microservice became a joke with such nice explanation thanks for it homie ;)
Is there a way to inform he publisher that a message has been successfully delivered to the consumer?
Hello, great work, thanks a lot for this, but I cannot connect to mongo: neither to mongo atlas nor to mongo compass. This is the log I got: Error: No connection options were found in any orm configuration files. I spent couple of hours to solve this problem, but with no result. Do you have any ideas?
Great video.
However, using express routers inside RabbitMQ callback isn't optimal
Can both admin and the main server use same database for eg mongodb ?
Excellent
why you need to save same data into two databases?
Thank you so much 👍🤞👏🎉👌🙌😊
You may want to use increment method of repository instead to avoid state reads.
Hey,can you recommend the next Video/ Course to extend this learning? Want to get into making some production level microservices . Thanks!! Awaiting your Reply (*_*)
Hi ,is there a way to instead of typing the name of the queue directly in the code (hardcoded) in multiple microservices, define it i a declarative way or something?
Provide it as an env var. If you use docker, you can parameterize your build
What IDE are you using?
Great video! Is there a rule of thumb for when to send internal http requests vs. consume events?
thats what im asking in my comments!
Great tutorial!
But, how to authorize each API?
why you use two Database for products??
I have started learning RabbitMQ recently and going through their documentation and watching another tutorial video on youtube (using Java) I learnt that it uses Exchange and and is binded to queues through some routing key. But here I see it used totally different (directly interacting with queue without the need for exchange and routing key). Does it have a different implementation in Nodejs or am I missing something?
It uses default exchange (auto created by rmq) if you don't specify a routing key or use an exchange explicitly
damn ...thankyou so much
are you using Clean Architecture?
I'm not sure it is a Clean Architecture or not since that was not my focus. This was the 'simplest' app I thought about microservices.
It was great and easy to understand, few questions I'd like to ask: How to handle scenarios like sendtoqueue failed, and is there any chance that after getting sent to the queue something unprecedented happened with queue before the message being consumed,,, then how to maintain consistency. Thanks
Hi, let’s say the consuming service was down, you can configure rabbitmq to expect an acknowledgement from the consuming service, if not it will keep the event ready until it’s acknowledged from the service
@@combinedprogrammer2477 can u please share a link to it
thank you so much
hi, Very nice tutorial. if authentication service is also used then it will also send and consume Events?
Good question, not exactly depends on how you use it. Usually, the user identity is always a separate service. If you want to send information that the user is logged in at this time or a new user is registered then you can send and consume events. If you want to make sure that the user is authenticated in another microservice then in this case you should use Internal Http Calls to the User Identity Microservice to verify the user. I have a course that explains this thing exactly but I use Laravel unfortunately. I will create another one using Node, not sure when but you can check it later if you are interested more in the topic.
@@ScalableScripts I would definitely wait for your course. The code structure is exceptionally perfect. I would definitely wait for a course to make an app for end to end demonstration.
thanks man
Nice application!! Can I get the same results in another way, maybe another tool?
what do you mean exactly?
You can use Redis streams for example
very good video but I have a comment. what happens when sending axios call to another service, the other service is down? you did not explain how you would manage that case? In a real production app, the whole concept of micro service is to keep each app separate to work independently and if one of them is down the other should be working. so imagine your post is dependent on comment service. someone leave a comment and call axios to sync it with post service and post is down! now axios call gets rejected.
what is the name of ide
PHPStorm
play in 1.5x speed
1.75x
😭😭😭
3x
That's brutal....😂😂😂
I like your video and would like to suggest creating nodemon.json conf file with the
{
"watch":["src"],
"ext":".ts",
"exec":"ts-node ./src/app.ts"
}
and in package.json:
"start":"nodemon"
this way, you don't need to run the tsc on a constant basis, just for final builds
do you have any plans to create this course? I have not found one on your site
Yes, First I will release a NestJS Microservices course next week then I will create ~7 new courses with NodeJS over the next 2-3 months including the Microservices course
@@ScalableScripts Thank you!
i hope there's tutorial send many email with node js and rabbitmq ^ ^
everyone in the comments is okay with this tutorial, but I think it could be done in 10 minutest(just rabbitmq part), all other parts with databases are redundant, just for pure beginners