Это видео недоступно.
Сожалеем об этом.
Getting Started With MassTransit (Beginner Friendly)
HTML-код
- Опубликовано: 16 авг 2024
- Get the source code for this video for FREE → the-dotnet-wee...
☄️ Master the Modular Monolith Architecture: bit.ly/3SXlzSt
📌 Accelerate your Clean Architecture skills: bit.ly/3PupkOJ
🚀 Support me on Patreon to access the source code: / milanjovanovic
MassTransit is an open-source distributed application framework for .NET. It provides a messaging abstraction on top of the supported message transports. MassTransit lets you focus on adding business value instead of worrying about messaging complexity.
Health checks provide a way to monitor and verify the health of various components of an application, including databases, APIs, caches, and external services. Let's see how to implement health checks in ASP.NET Core. MassTransit supports many message transport technologies. Here are a few that are popular:
- RabbitMQ
- Azure Service Bus
- Amazon SQS
- Kafka
In today's video, I'll show you how to install and configure MassTransit in .NET. We'll connect MassTransit to a few message brokers - RabbitMQ and Azure Service Bus. And we will also cover how to publish and consume messages with MassTransit.
Check out my courses: bit.ly/3PupkOJ
Using MassTransit with RabbitMQ and Azure Service Bus
www.milanjovan...
Join my weekly .NET newsletter:
www.milanjovan...
Read my Blog here:
www.milanjovan...
Chapters
0:00 Installing MassTransit
0:51 What MassTransit does for you
1:45 Configuring MassTransit
3:41 Publishing messages with MassTransit
6:49 Consuming messages with MassTransit
11:18 Adding different message transports
Get the source code for this video for FREE → the-dotnet-weekly.ck.page/masstransit
Want to master Clean Architecture? Go here: bit.ly/3PupkOJ
Want to unlock Modular Monoliths? Go here: bit.ly/3SXlzSt
Thanks for this video! Subscribed! I already have some patterns in mind. Planning to start with Pub/Sub, then adding Competing Consumers and so on.
Glad it was helpful! And welcome aboard :)
man this is exactly what i needed yesterday 😂
Better late than never 😅
@@MilanJovanovicTech hahaha exactly, thanks for the video! I’ll be taking a closer look in a bit ⭐️
To the point and easy to follow. Thanks for this!
You're welcome!
One thing I would like to see is how to set up a durable message queue in case there are network issues between you and where you are publishing and how to correctly handle it without data loss. An additional requirement might be that message ordering is important, so just resending "dead letter" messages is not the best idea.
That's an interesting topic
@MilanJovanovicTech it's a problem I have had lately where inbound on-premises services sometimes disconnect for the service bus resulting in some data loss over long periods.
If MassTransit implements this like NServiceBus does, it's an under the hood inbox/outbox pattern. But I'm also looking to see how MT handles this.
Also, ordering should be irrelevant in a messaging system. Udi Dahan has some interesting thoughts on race conditions in messaging systems, but his conclusion is that there are no race conditions, just business processes that need to be explored more deeply.
show us the advanced topics such as how to to do Microservices with Saga and routing slip :)
Nothing fundamentally changes in a messaging based system when you move the consumers to other services - except you're now distributed. But that's an infrastructural concern. The programming model is the same.
Great video! I'm curious which theme you are using in VS?
It's ReSharper syntax highlighting
The best! Thanks for the video!!!!
You're welcome!
why when i seperate the project the publisher is publishing but the consumer never Consume i am using rabbitmq?
Does the consumer connect to RabbitMQ?
yes it is connected to RabbitMQ and when i use RabbitMQ Without MassTransit it works well
Millan, in this example you are using, your communication is in the same solution. Does MassTransit support communication between different solutions?
Its a messaging queue, so you are directly connected to the queue, so why would it matter what solution you are using?
@@_JustBeingCasual I read that MassTransit use namespace to configure the messaging . So in differentes solutions with differents namespace it would be a problem.
@@felipemarques3997 Hmm interesting, the contracts at least would be shared between solutions right? So in that case there could not be any issue, i think.
@@_JustBeingCasual Yes, exactly. But how do we share contracts between two different solutions?
@@felipemarques3997 There are different ways to do that, like including a '.dll' file, create a nuget package for those contracts. Well, that's the two ways that I can think off at the moment.
Hi Milan. Did both consumers get the same message because you used the in-memory bus and both consumers run in the same process? If maybe you used SQS as transport and have consumers in separate applications would these be competing consumers?
Yeah, that's the reason. Competing consumers happen if you go distributed, and using the same endpoint (queue). You can also configure consumers to use different endpoints to get a topic-like behavior.
Excellent Video.
Thank you very much!
If I want send a message to an azure service bus topic why do I need to create and register a consumer?
You don't need a consumer to send... You need a consumer to handle the message.
@@MilanJovanovicTech must be something wrong with my code then as it would not send until I created one 🤔 thanks for the reply
@@cmonstokeST4 I think for ASB to work with MassTransit you'll need to be on the Premium plan. Check their docs for more details.
Milan, are you planning to extend your course with Messaging?
That's a great idea honestly, I'm adding that as a project and I'll see when I can fit it into my schedule :)
Thanks bro
Any time
Very helpful video.
But I've a question, is it recommended to use the Inmemory process in modularMonolith??
Recommended? No. But it is "good enough" that it gets the job done.
im sometimes wondering if people even read docs, looks like they dont, according to all those comments : (
I'm sure they do, when they need to build something 😁
Noice. How about a comparison video between MassTransit and Wolverine? Wolverine is the new hotness on the block and looks very promising for decoupled systems. Especially when integrated with MartenDB, Wolverine looks like a must use tool.
Doesn't seem nearly as powerful as MassTransit, and a bit too opinionated for my liking. I'll do some research, though 👌
@@MilanJovanovicTech I think you're perfectly right. But I can't quite put my finger on it why People think Wolverine is as good as it's hyped up to be