RabbitMQ in .NET Core (Part 1, Single producer and consumer with Queue)

  Рет қаралды 123,324

DotNet Core Central

DotNet Core Central

Күн бұрын

Пікірлер: 161
@theghumketu2367
@theghumketu2367 2 жыл бұрын
Wohoo it just took 20 minutes to learn something valuable today. Thank you
@vittoriomorellini1939
@vittoriomorellini1939 2 жыл бұрын
Perfect explanation BASIC to understand rabbitmq and its use in microservices
@DotNetCoreCentral
@DotNetCoreCentral 2 жыл бұрын
Thanks!
@antarikshverma8999
@antarikshverma8999 4 жыл бұрын
Perfactly demonstration of exchange concepts , Thank you. Your channel is now my favorite channel for dotnet core learning.
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@Antariksh verma, thanks for watching!
@tzadiko
@tzadiko 3 жыл бұрын
Actually this video did NOT discuss exchanges at all. That is another video. This video is queues only.
@krishnakishore2889
@krishnakishore2889 3 жыл бұрын
so simple and the best video so far I have seen in you tube on c# communicating with Rabbit MQ
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@Krishna Kishore, thanks for watching!
@charlesmcnicoll9060
@charlesmcnicoll9060 4 жыл бұрын
Great stuff and great teaching! Everything worked as is on my computer. I especially enjoyed the painless installation of RabbitMQ using Docker, so easy! You have a new subscriber, thanks a lot!
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@Charles McNicoll, thanks for watching! Yes, using docker to install makes life so much easier. Though in a production environment if you are using docker and want to keep durable messages, then it might become a little complex. In production, I use AWS Managed RabbitMQ and it's super simple as well.
@RAM-ff8dy
@RAM-ff8dy 4 жыл бұрын
Super informative, looking forward for next RabbitMq series, try to post them ASAp..
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@RAM, thanks for watching!
@mrohailiqbal
@mrohailiqbal Жыл бұрын
Really great stuff. Nicely explained. Keep it up bro
@olufemioyedepo2791
@olufemioyedepo2791 4 жыл бұрын
nice video on rabbitmq, keep them coming...
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@Olufemi Oyedepo, thanks for watching!
@olufemioyedepo2791
@olufemioyedepo2791 4 жыл бұрын
@@DotNetCoreCentral you're welcome. Your video on background jobs using Hangfire was 👌🏾. I became a subscriber since then.
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@@olufemioyedepo2791 thank you!
@ericngo2228
@ericngo2228 3 жыл бұрын
Simple and straightforward. Excellent tutorial for beginners, who want to use RabbitMQ for inter process communication. It saves a lot of money in compare with using Azure Service Bus.
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@Eric Ngo, thanks for watching!
@aparnadevi7040
@aparnadevi7040 3 жыл бұрын
Awesome explanation. Very easy to understand.
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@aparna devi, thanks!
@madhvigupta6232
@madhvigupta6232 Күн бұрын
You should create more content video related to intermediate level interview questions on .Net and .Net core, Solid design principles and all , as others are just making us mugging up all the concept where you teach in depth
@pasdilhan
@pasdilhan 2 жыл бұрын
Short and sweet but covered necessary basics.. Thanks
@thethomasproject
@thethomasproject 3 жыл бұрын
Agreed with other comments. Not too little or not too much as an intro. And I got to build a quick project (though I didn't get it all), to see it working. Great intro!!
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@Frank Thomas, thanks for watching!
2 жыл бұрын
Thank you for your short, concise and clear explanation
@DotNetCoreCentral
@DotNetCoreCentral 2 жыл бұрын
Thanks!
@peymanGhaderkurehpaz
@peymanGhaderkurehpaz 4 жыл бұрын
Thanks bro , this series is going to be awesome. Micorservices are really in trend and it's great to make a series about how to design microservices. ❤👌
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@peyman Ghkp, thanks!
@idog63
@idog63 3 жыл бұрын
excellent video. very clear and easy to follow. 👍
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@idog63, thanks for watching!
@tehseenakhtar3209
@tehseenakhtar3209 2 жыл бұрын
good basics of producer and consumer. kindly add the chapters ( instead of key moments) in the video that helps a lot in segmentaion of video. like 14:02 Create a Consumer. Add the chapters in description
@DotNetCoreCentral
@DotNetCoreCentral 2 жыл бұрын
Thanks for the suggestion! And thanks for watching!
@varunsharma10286
@varunsharma10286 3 жыл бұрын
Great video, It was Valuable and Informative.
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@varun sharma, thanks for watching!
@bashirmanafikhi
@bashirmanafikhi 2 жыл бұрын
great, I watched a lot of lessons, but you are the best
@DotNetCoreCentral
@DotNetCoreCentral 2 жыл бұрын
Thanks!
@shreeK-27
@shreeK-27 2 жыл бұрын
Great tutorial. 👍👍
@DotNetCoreCentral
@DotNetCoreCentral 2 жыл бұрын
Thanks for watching!
@sanjeevgaur1973
@sanjeevgaur1973 6 ай бұрын
Simply WOW 👍
@DotNetCoreCentral
@DotNetCoreCentral 3 ай бұрын
Thanks a lot 😊
@zakiit9594
@zakiit9594 4 жыл бұрын
Thx again, would love it if you cover more on the admin screen!
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@zaki it, I will try to do a video in the future. Thanks!
@RohitSingh-go4ng
@RohitSingh-go4ng 8 ай бұрын
Rabbit MQ it is always send byte format it is possible to consume in the json format
@MarioStaats
@MarioStaats 4 жыл бұрын
Great tutorial, directly subscribed :-)
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@Mario Staats, thanks for watching!
@bnks2011
@bnks2011 2 жыл бұрын
Excellent explanation.. Thanks
@DotNetCoreCentral
@DotNetCoreCentral 2 жыл бұрын
Thanks for watching!
@vincent4624
@vincent4624 4 жыл бұрын
Very nice tutorial. Starting out with the very basics of RabbitMQ. Just what I needed! I'll definatly be following this series :)
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@Vincent, thanks for watching!
@primavera919
@primavera919 2 жыл бұрын
How did you launch the command line @ 4:41?
@ankitjindal6050
@ankitjindal6050 3 жыл бұрын
Very well explained and demoed. Thanks!
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@Ankit Jindal, thanks for watching!
@salarkazazi7584
@salarkazazi7584 2 жыл бұрын
Thank to so much, great start !
@mukeshtrivedi1896
@mukeshtrivedi1896 4 жыл бұрын
very informative vedio,can you make for multiple consumer along with circuitbreaker and poly
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@Mukesh Trivedi, thanks for watching. I can surely try that.
@santoshkumaryadav4436
@santoshkumaryadav4436 2 жыл бұрын
Thanks for this great video, Can you please make some videos on Azure
@sivakumarr28
@sivakumarr28 3 жыл бұрын
Great demo. Keep it up..
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@Sivakumar R, thanks!
@amnesia3490
@amnesia3490 3 жыл бұрын
What I don't understand is, in the consumer, it's an console app, that means when you run it once, it compile and process up to the Console.Readline(), and it stops... So how is that happening when you run producer again and can see the result in consumer ? Consumer is an console app already compiled and executed to the Console.Readline()... Is it using something like websockert ? How it will behave on web api on production ?
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@AmnesiA, in this example, Console.ReadLine is a blocking call and it makes the application wait for a user input, which means until unless a character is entered from the keyboard. But in a production application, you will probably use something like an IHostedService interface implementation to manage this, so that the consumer never shuts down.
@aminejadid2702
@aminejadid2702 4 жыл бұрын
Thank you. Can you please do a video about Redis Cache and .Net core ?
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@amine jadid, thanks for watching. I have a video on Redis and .Net Core. Here is the link: kzbin.info/www/bejne/p4qlkoB8fcqio5o
@aminejadid2702
@aminejadid2702 4 жыл бұрын
@@DotNetCoreCentral thanks
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@@aminejadid2702 Welcome!
@hazlotumismo1419
@hazlotumismo1419 3 жыл бұрын
Very cool video, thank you for sharing Sir!
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@Hazlo tu mismo!, thanks for watching!
@giorgiocipriano3334
@giorgiocipriano3334 3 жыл бұрын
I have an error with the consumer, can I see the message in the rabitmq console only with th producer?
@SaisharathGoud
@SaisharathGoud Жыл бұрын
Hi, I am having errors CS8370 Feature "using declaration" is not available in C# 7.3. what's the solution for this?
@rahulmathew8713
@rahulmathew8713 3 жыл бұрын
Awesome job
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@Rahul Mathew, thanks for watching!
@Moosa_Says
@Moosa_Says 2 жыл бұрын
Perfect! Thanks :)
@DotNetCoreCentral
@DotNetCoreCentral 2 жыл бұрын
Thanks for watching!
@elyeskacem4784
@elyeskacem4784 Жыл бұрын
the command of rabbitMQ : docker run -d --hostname my-rabbit --name ecomm-rabbit -p 15672:15672 -p 5672:5672 rabbitmq:3-management
@milos5247
@milos5247 3 жыл бұрын
Is it a better practice to create queues and exchanges through code or through the management client?
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@Milos Miric, if you want to control access, then it's better to create everything through the management console. But if it's a single app and managed by a single team it's an overhead to manage through the console. In a nutshell, if you need more security, it's better to create everything using the management console and provide specific security access, otherwise, just have single-user access to everything and make queue/exchange from code, you can move much faster and without the management overhead.
@milos5247
@milos5247 3 жыл бұрын
@@DotNetCoreCentral Thanks for explaining.
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@@milos5247 you are welcome!
@TightyWhities94
@TightyWhities94 2 жыл бұрын
beginner here. what's the benefit of the "using" keywords behind connection and challenge?
@DotNetCoreCentral
@DotNetCoreCentral 2 жыл бұрын
@TightyWhities94, the 'using' keyword is used for disposing the connection object, and whichever object it is used with
@videolounge6885
@videolounge6885 Жыл бұрын
can you please write the command here which you used to install the rabbitmq? Also docker image command is not working on my system help me to rectify it.
@meganj7155
@meganj7155 2 жыл бұрын
If I host this consumer in EKS It is getting exited . Console.readline() is not consider after hosting
@DotNetCoreCentral
@DotNetCoreCentral 2 жыл бұрын
you cannot use Readline in Linux, its a windows thing. You need to use IHostedService instead. I have a video on the same in my channel, check it out
@meganj7155
@meganj7155 2 жыл бұрын
@@DotNetCoreCentral 🙏
@zeeshanasghar3751
@zeeshanasghar3751 4 жыл бұрын
just a suggestion your video "Microservice resilience - Circuit Breaker using polly in .Net Core " should be part of this series ?
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@Zeeshan Asghar, yes, it is part of Microservices. I might have not put it in the playlist, I will do that. Thanks for pointing it out.
@eliassal1
@eliassal1 4 жыл бұрын
Nice, useful and easy to understnad. A couple of questions, what "Durable false or true" flag means for RabbitMQ, 2nd, when messages are consumed they disappear from queue, how for example if during the day Rabbit receives 1000 messages and I, from admin perspective can see what happened and details of each message in the dashboard? I activated Recent-history plugin but still can't see the history of messages, thanks again
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@Salam Elias, the "Durable" flag is used to indicating the RabbitMQ to persist the metadata of the Queue and its in-flight messages to the disk so that it can recover a restart. Regarding tracing messages coming to RabbitMQ, I used a combination of out of box RabbitMQ logs and Application logs, for all debugging/tracing purposes. These logs are shipped to AWS Cloudwatch and we do our analysis there. I have not used the Admin site for detailed log analysis. I have used the Admin site mainly to monitor the general health of the exchanges, connections, queues, and nodes.
@eliassal1
@eliassal1 4 жыл бұрын
@@DotNetCoreCentral Thanks for your reply. I used Biztalk server heavily in different Publish-Subscribe scenarios, inside of it, you can see all what happened according to a time period you configure. I think it is a little bit heavy nad needs a lot of efforts to use different tools to do admin stuff. I beleive that RabbitMQ is a good tool but it needs to improve its admin features
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@@eliassal1 got it.
@naufilshaikh09
@naufilshaikh09 3 жыл бұрын
Perfect start in RabbitMQ but i have frontend application in javascript and backend in dotnet core. how can i setup between them.
@naufilshaikh09
@naufilshaikh09 3 жыл бұрын
I mean do i need to setup rabbitmq both side or communicate frontend app and backend app using signalr ?
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@@naufilshaikh09 yes, from backend if you need to send messages real-time to frontend, you will need SignalR for that.
@mallianumula
@mallianumula 3 жыл бұрын
I am new to this, I have a clarification. what is the best approach for client implementation for continues reading, if we do console app, by mistake if someone close the window then, message pulling stop working. so is windows service is better approach or is there any other tools can use as client. make sure client read the message as long as it push into the queue. please advise, thanks
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@Malli Anumula, I use Linux for all my application need, so I have never faced this issue recently. And .NET Core does not support Windows Service, for the very reason that it runs both in Linux and windows. You can either run it as a Web application, so you host it in a web server in Windows, or you can run it as a task using Windows task manager.
@mallianumula
@mallianumula 3 жыл бұрын
@@DotNetCoreCentral noted, windows task is not an option for me bcz there could be some delay for windows task min is 1min delay to trigger. I will check web option with SignalR .. thanks for update..
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@@mallianumula thanks!
@triptisharma4731
@triptisharma4731 4 жыл бұрын
I want to be able to consume from multiple queues within this single consumer without any of the queues blocking each other. How can we achieve that?
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@Tripti Sharma, you can use this Nuget package I created: www.nuget.org/packages/Plain.RabbitMQ/, and source code for this is here: github.com/choudhurynirjhar/plain-rabbitmq. After you use the Nuget, you can create a singleton instance of IConnectionProvider. And multiple instances per consumer for ISubscriber. And each ISubscriber can be used by background tasks: kzbin.info/www/bejne/Z3fIaIR6bLSpn5o, that way they are running in separate threads. That's all is needed. Thanks
@shreeK-27
@shreeK-27 2 жыл бұрын
From where do we get the 3 digit of the image? e67?
@DotNetCoreCentral
@DotNetCoreCentral 2 жыл бұрын
You can do docket list, its the first 3 digit of the docker container
@shreeK-27
@shreeK-27 2 жыл бұрын
@@DotNetCoreCentral ok 👍
@shreeK-27
@shreeK-27 2 жыл бұрын
@@DotNetCoreCentral when trying to run from the browser getting bad_header and localhost:15672 site can't providebsecure connection error . Why is that happening ?
@DotNetCoreCentral
@DotNetCoreCentral 2 жыл бұрын
@@shreeK-27 I am not sure, I have never seen this error. Its hard to say without seeing exactly what you are doing.
@saisivakrishnagarimella8534
@saisivakrishnagarimella8534 2 жыл бұрын
Hi, any minimum publish time for message? I am getting timeout, if publishing time more than 20sec. please let me know, Thank you in Advance
@kartheeknandini3767
@kartheeknandini3767 3 жыл бұрын
please so more videos on rabbitMQ
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@kartheek nandini, I have other videos for RabbitMQ in this series, have you watched all of them?
@amitmistry0101
@amitmistry0101 4 жыл бұрын
Hi sir, Other then docker, what we used to install RabbitMQ
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@amit mistry, you can install in Windows or Linux box, but that's very complex and time-consuming. This is the URL you can follow: www.rabbitmq.com/install-windows.html
@another-day-2024
@another-day-2024 4 жыл бұрын
nice intro, can you go deeper and show it plays important role in developing microservice app?
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@Shahriar Hossain, thanks for watching! And yes, that's the goal, first cover all the basics, and then get into a real-life example with microservices.
@zakiit9594
@zakiit9594 4 жыл бұрын
Thanks a bunch
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@zaki it, thanks for watching!
@odinsrensen7460
@odinsrensen7460 3 жыл бұрын
That worked, thanks.
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@Odin Sørensen, thanks for watching!
@rabbanishaik2363
@rabbanishaik2363 Жыл бұрын
Is it possible to schedule messages?
@DotNetCoreCentral
@DotNetCoreCentral Жыл бұрын
Not that straight forward, but can be done through some plugins.
@rabbanishaik2363
@rabbanishaik2363 Жыл бұрын
@@DotNetCoreCentral can you please make a simple demo?
@DotNetCoreCentral
@DotNetCoreCentral Жыл бұрын
@@rabbanishaik2363 Sure, will do
@rabbanishaik2363
@rabbanishaik2363 Жыл бұрын
@@DotNetCoreCentral thank you. Looking forward
@CoderBB
@CoderBB Жыл бұрын
Please add all Rabbitmq videos in playlist
@poojanaik5052
@poojanaik5052 3 жыл бұрын
How to check msgs stored on docker? Someone help me out pls
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@Pooja Naik, when you say message stored on docker, do you mean message sent to RabbitMQ running inside a docker container? If that is the case you can just use the RabbitMQ management studio to do that.
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@Pooja Naik, for accessing the management studio, you will need to open localhost:15672 in your browser
@antarikshverma8999
@antarikshverma8999 4 жыл бұрын
Please try to cover more on management console part.
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@Antariksh verma, thanks sure I will.
@dev4g276
@dev4g276 2 жыл бұрын
Can you please make one video on rabbit mq with mqtt plugin with wrb api please
@DotNetCoreCentral
@DotNetCoreCentral 2 жыл бұрын
I will check it
@dev4g276
@dev4g276 2 жыл бұрын
@@DotNetCoreCentral sir i will be great full to you thank you
@maneeshdeepankar2984
@maneeshdeepankar2984 9 ай бұрын
great
@nagarazzarazza8405
@nagarazzarazza8405 3 жыл бұрын
How do we setup in azure?
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@nagarazza razza, I will do a separate video on that.
@narendra_ingle
@narendra_ingle 3 жыл бұрын
Weblogic jms queue how i can read from there
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@Narendra Ingle, you will need to create a bridge, which will read a message from here and post it to WebLogic. There might be some plugins available, but I have never used any.
@anishachavan8710
@anishachavan8710 3 жыл бұрын
I had an error in the Uri
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@Anisha Chavan, can you provide a little bit more details on the error?
@anishachavan8710
@anishachavan8710 3 жыл бұрын
@@DotNetCoreCentral yes sure
@anishachavan8710
@anishachavan8710 3 жыл бұрын
@@DotNetCoreCentral system.argumentexception hresult=0x80070057 message=wrong scheme in amqp uri: ampq source=rabbitmq.client stacktrace: at rabbitmq.client.connectionfactory.seturi(uri uri) at rabbitmq.client.connectionfactory.set_uri(uri value) at rabbitmq.consumer.program.main(string[] args) in c:\users\anisha\source epos abbitmq.consumer abbitmq.consumer\program.cs:line 16 I changed the Uri to :amqp://guest:guest@host:5672/vhost
@DotNetCoreCentral
@DotNetCoreCentral 3 жыл бұрын
@@anishachavan8710 are you creating a new virtual host or you are using the default virtual host? if you are using the default virtual host then your URL should be just "amqp://guest:guest@localhost:5672"
@anishachavan8710
@anishachavan8710 3 жыл бұрын
@@DotNetCoreCentral I am using a default virtual host I'll try and let you know
@rfidhari
@rfidhari 4 жыл бұрын
Could you please share the URL for next video
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@Hari Subbu, thanks for watching this video. Here is the URL for next video: kzbin.info/www/bejne/eZ6VoaaLYt-Bb5I
@kidoo1567
@kidoo1567 3 ай бұрын
AMQP 0-9-1 ,HTTP WEB SOCKET
@dharmeshsharma
@dharmeshsharma 4 жыл бұрын
This could not help to actual use of micro services. As apis the best way to give examples and understand others to best way. The console is just help the code not best way to use in real world. All the best
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@dharmesh art channel, I did mention in this video that this is a series, where I will first go through the basic concepts of RabbitMQ, and after that, I will create a real-life example of how to use RabbitMQ to create Microservice. And here is the video where I did it: kzbin.info/www/bejne/qIauopSFba6Eeac I guess the title caused the confusion, I will change the title of this series.
@june3878
@june3878 Жыл бұрын
tired of these "Hello World" examples.
@antarikshverma8999
@antarikshverma8999 4 жыл бұрын
Please try to cover more on management console part.
@DotNetCoreCentral
@DotNetCoreCentral 4 жыл бұрын
@Antariksh verma, sure, I will schedule it.
RabbitMQ Direct Exchange producer/consumer (Part 2, RabbitMQ in .NET Core)
20:19
An introduction to MassTransit using RabbitMQ (In ASP.NET Core)
22:11
DotNet Core Central
Рет қаралды 48 М.
Try this prank with your friends 😂 @karina-kola
00:18
Andrey Grechka
Рет қаралды 9 МЛН
RabbitMQ : Message Queues for beginners
22:06
That DevOps Guy
Рет қаралды 180 М.
What is RabbitMQ?
10:10
IBM Technology
Рет қаралды 336 М.
Intro To RabbitMQ
54:06
IAmTimCorey
Рет қаралды 112 М.
How To Build Loosely Coupled Microservices With MassTransit
23:01
Milan Jovanović
Рет қаралды 40 М.
RabbitMQ Getting Started from DOTNET | Amazon MQ
22:27
Rahul Nath
Рет қаралды 4,3 М.
What Is A Message Queue + RabbitMQ and MassTransit Integration
15:15
Milan Jovanović
Рет қаралды 34 М.
Build Highly Scalable Applications With RabbitMQ in  .NET
14:02