Intro To RabbitMQ

  Рет қаралды 88,740

IAmTimCorey

IAmTimCorey

Жыл бұрын

RabbitMQ is a powerful message broker that can help you create resilient and scalable applications. If you're not familiar with message brokers, don't worry - by the end of this video, you'll have a clear understanding of what they are and why they're useful.
In this video, I'll explain the basics of message brokers, demonstrate how RabbitMQ can be used with C# applications, and provide tips for setting it up effectively. Whether you're building microservices or simply looking to improve the reliability and scalability of your applications, this video will be a valuable resource for you.
Full Training Courses: IAmTimCorey.com
Source Code: leadmagnets.app/?Resource=Int...
Mailing List: signup.iamtimcorey.com/

Пікірлер: 220
@mnasirkhanctl
@mnasirkhanctl Жыл бұрын
Not only you teach coding, but architecting a system at the same time. Blessed to have a mentor like you Sir!
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thank you!
@aditheorigin4926
@aditheorigin4926 Жыл бұрын
Great content.. your content not only teach us c# but the whole echo system. ♥️
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thanks!
@YazanGplay
@YazanGplay Жыл бұрын
Can't believe you uploaded a video about RabbitMQ, I was making researches about this topic last week, I really need this video! Thanks Tim
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Glad I could help!
@johnseabi5517
@johnseabi5517 Жыл бұрын
Thanks for the vid Tim. Just yesterday I was looking for a tutorial on this topic and did not find something as clear. Thank you so much.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You are very welcome.
@marks_02
@marks_02 Жыл бұрын
Another great option is to use Azure Service Bus as the queue, and then use Azure functions to pull out of service bus. The functions can be triggered automatically when a message arrives in the SB.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Yep. Functions can operate on both sides.
@user-ht9st4up8q
@user-ht9st4up8q 3 ай бұрын
I really like these clips; they help me understand instantly, unlike other KZfaq videos.
@IAmTimCorey
@IAmTimCorey 3 ай бұрын
Great!
@franciscopalmabeltran3257
@franciscopalmabeltran3257 Ай бұрын
Tim. You're doing a lot of good stuff for people who needs a practical focus of the knowledge, specially in a world where people expect you to have experience with every tool and aspect.
@IAmTimCorey
@IAmTimCorey Ай бұрын
Thank you!
@zachariachege7660
@zachariachege7660 11 ай бұрын
Great stuff Tim. I Was looking for a tutorial on this topic and the experience I got is the best. Looking out for more.
@IAmTimCorey
@IAmTimCorey 11 ай бұрын
Glad it was helpful!
@TheDdaniel10000
@TheDdaniel10000 Жыл бұрын
I have been waiting for RabbitMQ, explained by you for a long time. Now, I am confident that I'll know what the hell is this XD. Thank you for everything.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You are welcome.
@torrvic1156
@torrvic1156 9 ай бұрын
Thanks a lot Tim! Even I with my zero experience with RabbitMQ and in a kind of stressful condition managed to understand something about it. At least know I know what it is and what is the purpose of this system.
@IAmTimCorey
@IAmTimCorey 9 ай бұрын
I am glad it was helpful.
@yehy6357
@yehy6357 Жыл бұрын
Hi Very clear way of explaning. I saw some videos on RabbitMQ, but I was waiting for your way of explaining things. Thanks
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You are welcome.
@MDimitrovv
@MDimitrovv Жыл бұрын
Thank you for the great video again Tim! :)
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You are welcome.
@xlerb2286
@xlerb2286 Жыл бұрын
For years I was constrained to having to use MSMQ and I wasn't that keen on message queues. RabbitMQ is so much better in so many ways, big fan of message queues now.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
I am glad it was helpful.
@bwzffgh7
@bwzffgh7 Жыл бұрын
Microsoft excels at taking relatively simple concepts and implementing them in the most extraordinarily complicated ways as possible.
@ngobenimsesenyaneplatius9862
@ngobenimsesenyaneplatius9862 8 ай бұрын
this is a great intro, straight to the point
@IAmTimCorey
@IAmTimCorey 8 ай бұрын
Thanks!
@tresaidh3y90
@tresaidh3y90 Жыл бұрын
Thank you for another great Video Tim.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You are welcome.
@diegocadena7693
@diegocadena7693 Жыл бұрын
Thanks! Another excellent explanation as always
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You are welcome.
@unknown-xt1gy
@unknown-xt1gy Жыл бұрын
Amazing knowledge I got from this tutorial, Thank you very much
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You are welcome.
@wheelsam2659
@wheelsam2659 Жыл бұрын
Thanks for the video! I'm new to the message broker concept and a little confused still. If I stand up a C# API, should the "Receiver" call the API on the received event? Is is standard to host the MQ on the same server as one of the API's? If I'm understanding correctly I can place this in-between my API and my JavaScript website? I really appreciate all the content!
@7sim
@7sim Жыл бұрын
Great video Tim! Hope to see more RabbitMQ content soon :)
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thanks!
@shawnsmith8975
@shawnsmith8975 Жыл бұрын
I was able to use Dapper and insert the messages, I used a stored procedure, really cool.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Great!
@gsateesh7643
@gsateesh7643 7 ай бұрын
Hi @iamtimcorey , thanks for the great tutorial. My current organization is using rabbitmq for production too. One question, can we use rabbitmq for simple chat applications where one to one and one to many user are present?
@liorh6459
@liorh6459 5 ай бұрын
Hi Tim, Great video, really helpful. I have a question: I expected that if the data is being encoded as byte[] we wouldn't be able to see the message on rabbitMQ UI, how could we?
@mohammadanas4377
@mohammadanas4377 Жыл бұрын
What a masterpiece AS ALWAYS
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thank you!
@tonguyenducmanh
@tonguyenducmanh Жыл бұрын
thank you so much, now i can understand rabbitmq
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You are welcome.
@gustavoftrindade
@gustavoftrindade Жыл бұрын
Thank you very much for the video, it was very useful.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You are welcome.
@Baraka-yl2dp
@Baraka-yl2dp Жыл бұрын
Great Video. Keep up the good work. I was wondering how this would compare or collaborate with SignalR? I think that would be an excellent topic for another video. Another excellent option for another video will be how to integrate this in Azure for many remote clients from many sources or senders.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thanks for the suggestion. Please add it to the list on the suggestion site so others can vote on it as well: suggestions.iamtimcorey.com/ As for a comparison to SignalR, they are really different. SignalR maintains a constant connection between the server and client in order to send and receive messages. With RabbitMQ, you send messages to the server and then close the connection. The server holds the messages until someone is listening. Then it sends the messages to the client. It is a very disconnected, asynchronous system.
@xexexino779
@xexexino779 3 ай бұрын
Thank you Tim , ur explanation On Point 😎
@IAmTimCorey
@IAmTimCorey 3 ай бұрын
You are welcome.
@haripranesh5342
@haripranesh5342 9 ай бұрын
Great explanation man👌 Thank you !
@IAmTimCorey
@IAmTimCorey 9 ай бұрын
You are welcome.
@jameswachira5713
@jameswachira5713 3 ай бұрын
Excellent tutorial. Very helpful
@IAmTimCorey
@IAmTimCorey 3 ай бұрын
I am glad it was helpful.
@sumeyyebusra
@sumeyyebusra 10 ай бұрын
Great video! I hope we get a tutorial on MassTransit too. Thank you so much.
@IAmTimCorey
@IAmTimCorey 10 ай бұрын
Thanks for the suggestion. Please add it to the list on the suggestion site so others can vote on it as well: suggestions.iamtimcorey.com/
@jacool5168
@jacool5168 23 күн бұрын
Dziękujemy.
@IAmTimCorey
@IAmTimCorey 23 күн бұрын
Thank you!
@jacool5168
@jacool5168 23 күн бұрын
Very Good quick lesson
@IAmTimCorey
@IAmTimCorey 23 күн бұрын
Thank you!
@khawarsaeed1851
@khawarsaeed1851 Жыл бұрын
Excellent SIR
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thanks!
@fatmazayed
@fatmazayed 3 ай бұрын
very nice explaniation with real demo 🥰
@IAmTimCorey
@IAmTimCorey 3 ай бұрын
Thank you!
@angonchowdhury1385
@angonchowdhury1385 Жыл бұрын
Hey Tim, that was a great content. Do you have any plan to bring more tutorials on this topic?
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Yes, I do.
@june3878
@june3878 10 ай бұрын
Do you have an example of a production application with asynchronous message handling and exception handling?
@satyanarayana2645
@satyanarayana2645 9 ай бұрын
Really Great Content Tim. Now I got good understanding on RabbitMQ. In addition to present video, could you please do some video related to connecting to rabbit mq using azure functions and sending messages. Thanks once again for your valuable time and efforts.
@IAmTimCorey
@IAmTimCorey 9 ай бұрын
Thanks for the suggestion. Please add it to the list on the suggestion site so others can vote on it as well: suggestions.iamtimcorey.com/
@mateuszg2930
@mateuszg2930 Ай бұрын
That's really interesting topic!
@IAmTimCorey
@IAmTimCorey Ай бұрын
Thanks!
@KevMc64Ware
@KevMc64Ware Жыл бұрын
Great Vid Tim, Love the VS tips as well. You started off by talking about a 'sign up page'. So for example, if the client hits submit to register, then it gets queued, client closes down etc, when the message eventually gets processed, and the client was already registered, what happens then?
@KevMc64Ware
@KevMc64Ware Жыл бұрын
or are we talking a max of a few seconds where the client just waits for the response.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Most signup actions don't have to be immediate. For instance, even the "we've sent you an email. Click on the link in it to create your login." isn't really immediate. That can take a few seconds and it is ok. Others, though, are even longer. For instance, the welcome email that tells you about the services available to you. That can come out days later and its ok.
@jopsuey
@jopsuey Жыл бұрын
awesome Tim!
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thanks!
@zumanoka3310
@zumanoka3310 2 ай бұрын
Great tutorial, +1
@IAmTimCorey
@IAmTimCorey 2 ай бұрын
Thank you!
@ivandrofly
@ivandrofly Жыл бұрын
The drawing tool is awesome
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thanks!
@randre6420
@randre6420 25 күн бұрын
This is a great video! I really learned a lot. I'll try to simulate this too later. Just want to check if you have a video related to dead letter exchange. Thank you!
@IAmTimCorey
@IAmTimCorey 24 күн бұрын
I don't have a video specific to dead letter exchange. Sorry. You can add it as a suggestion on suggestions.iamtimcorey.com if you want to see one.
@FernandoLab
@FernandoLab 8 күн бұрын
Thank you so much!
@IAmTimCorey
@IAmTimCorey 7 күн бұрын
You're welcome!
@mivewin
@mivewin 10 ай бұрын
Thanks for sharing! I'm left with a question that the video does not mention that much about, which is 'when do I use it'? We are going to use it to get webhook events from the payment service stripe and store it in the database that our server uses. The advantage we see is no load on server and no extra code in our server. We want to create a message bus for sending requests to others services as well like the CRM service hubspot. But when I saw our video I was thinking we could also use RabbitMQ for client requests like you show in your video and the part about load-balancing is interesting and got me thinking how many things people can wait for and I can't think of a lot. Actually I could only think of your example 'the register account' case. I'm thinking regular show a list of all 'objects' or all CRUD operations where you want the list of objects to be changed instantly. What I could think of was registering to a newsletter and could maybe think of more examples, but I think it would only be a low percentage of all requests going to the server that could wait. Is that true in most cases it's only very little of websites traffic which are using queues? Also I was thinking do anyone go all out and puts every request in the queues to get the full benefit of the load/balancing, or would it hurt performance for e.g. loading some objects details page too much with this layer? Thanks again, so much quality in your videos.
@IAmTimCorey
@IAmTimCorey 10 ай бұрын
Good questions. Queues are typically more useful for tasks that are long-running rather than ones that need real-time results. For instance, you could request a report and have it emailed to you once the report is generated. That could use a queue. You could use a queue for a purchase, where the warehouse processes it, the shipping department processes the next step (also from a queue), etc. Typically, you wouldn't be using it for times when the user wants an immediate response.
@ivandrofly
@ivandrofly Жыл бұрын
Thanks Tim :)
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You are welcome.
@haroldemmers6428
@haroldemmers6428 Жыл бұрын
Great video Tim 👍 Could you also do DDS (Data Delivery Service)? And possibly how it is used in ROS2?
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thanks for the suggestion. Please add it to the list on the suggestion site so others can vote on it as well: suggestions.iamtimcorey.com/
@haroldemmers6428
@haroldemmers6428 Жыл бұрын
@@IAmTimCorey Done
@haroldemmers6428
@haroldemmers6428 Жыл бұрын
@@IAmTimCorey I like to do that. But I think admins need to first do a (p)review and give the thumbs up before I get that kind of option.
@user-ej9bv7qf1e
@user-ej9bv7qf1e 6 ай бұрын
How one can consume some messages, not acknowledge them immediately, close the channel/connection, and later on, in a new process acknowledge a few selected consumed message? The selection is based on some side processes on the consumed messages.
@abhishekbevinal7495
@abhishekbevinal7495 Жыл бұрын
Thank you so much 😊
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You're welcome.
@user-uq7hg9zw5j
@user-uq7hg9zw5j 7 ай бұрын
Really good tutorial
@IAmTimCorey
@IAmTimCorey 7 ай бұрын
Thank you!
@user-uq7hg9zw5j
@user-uq7hg9zw5j 7 ай бұрын
Only a question, if the consumer doesn't ack the message , does the massage position chage? I mean is the not ack message pushed in the queue? thanks a lot@@IAmTimCorey
@VuvaToniKroos
@VuvaToniKroos 10 ай бұрын
thank you, Sir
@IAmTimCorey
@IAmTimCorey 10 ай бұрын
You're welcome!
@keivankashanimanesh
@keivankashanimanesh Жыл бұрын
Hi Tim thanks for your video, please make a video like this for Redis
@IAmTimCorey
@IAmTimCorey Жыл бұрын
I already did: kzfaq.info/get/bejne/i9iBisyaxNHKeXk.html
@keivankashanimanesh
@keivankashanimanesh Жыл бұрын
@@IAmTimCorey Thanks a lot Tim
@uchendukwe786
@uchendukwe786 9 ай бұрын
Thank you for this great intro. Please is there a way for one message to be consumed by more than one consumer such that when the producer sends a message, the message can be consumed by 2 or more consumers? I am looking at a pub/sub scenario where one producer sends a message that is needed by multiple consumers. How do you ensure that the message is not deleted immediately the first consumer consumes it and how do you ensure the message gets removed from the ques after it has been consumed by all the consumers that need to consume it?
@IAmTimCorey
@IAmTimCorey 9 ай бұрын
Yep, that's a setting you can set. You just need to establish how long the messages will live, etc.
@andywalter7426
@andywalter7426 Жыл бұрын
Can rabbitmq be a replacement for signal r? If so, then signal r would eventually be dead. What a person would do is use rabbit mq to put to the que and whoever, takes it would do it. obviously if several parts need it, then hopefully a workaround for it. Is this intended to even replace signal r?
@IAmTimCorey
@IAmTimCorey Жыл бұрын
No, they are two completely different technologies that serve two different purposes. With SignalR, ApplicationA opens up a direct connection to ApplicationB. It then keeps that connection open as long as is needed (usually the entire length of the application's lifecycle). RabbitMQ, on the other hand, sits in between the two applications. ApplicationA sends a message to RabbitMQ. That connection is then closed (or more messages can be sent, but the connection does not need to be open all the time). RabbitMQ puts the message in the right queue and potentially alerts all interested parties (one or many). If the message is to be processed once, as was the case in our demo, ApplicationB will connect to RabbitMQ and get the message. That connection does not need to be established while ApplicationA is sending the message. An analogy would be that SignalR is a phone call and Message Brokers (like RabbitMQ) are email hosts. We still make phone calls, even though we can send an email and we still send email even when we could make a call. The two communication mediums serve different purposes.
@manofqwerty
@manofqwerty Жыл бұрын
I think discussing a long running process, such as a large file upload, is useful in these instances as you can't tell the user the status of the file upload right away.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
I'm sorry, I'm not sure what you mean.
@zua1283
@zua1283 Жыл бұрын
@@IAmTimCorey I think what mike is trying to say is that it would be nice to hear about how we could be able to show the status of say, a file upload to the client so it doesnt just hang. i dont know though but im assuming thats what he means
@andywalter7426
@andywalter7426 Жыл бұрын
The only thing concerning about azure service bus which is related to rabbitmq is the cost. I doubt most businesses would want to pay over 10,000 dollars a month for azure service bus no matter how good it is unfortunately. Are there any free online queing options?
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Azure Service Bus costs $0.05/million messages. If you get to $10,000/month, you are either doing something wrong or you should be happy to pay that amount.
@hervelabrie-durand3701
@hervelabrie-durand3701 8 ай бұрын
Great video
@IAmTimCorey
@IAmTimCorey 8 ай бұрын
Thanks!
@ConstancyCAE
@ConstancyCAE 11 ай бұрын
Tim The gem!
@IAmTimCorey
@IAmTimCorey 11 ай бұрын
Thanks!
@joshuajosh3721
@joshuajosh3721 10 ай бұрын
Hi Tim, Is RabbitMQ only work for post or put actions? not used in get and delete action ?
@IAmTimCorey
@IAmTimCorey 10 ай бұрын
RabbitMQ is a message broker. It just receives and sends messages. What you do when you receive those messages is up to you.
@joshuajosh3721
@joshuajosh3721 10 ай бұрын
@@IAmTimCorey Thanks for your reply, I also watched your suggestion app course. in this scenario, can I use RabbitMQ between Blazor server and MongoDB, use a background worker to receive a message from RabbitMQ ? but if I want to get a suggestion data (not post a suggestion data), Can I send get request message to RabbitMQ? Thanks in advance.
@mayurbanta
@mayurbanta Жыл бұрын
Colored tabs are useful if we use vertical Tabs. Yes it will be helpful to have corresponding color in Solution explorer.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thanks for sharing!
@hermanroro
@hermanroro Жыл бұрын
Currently I'm working with hangfire, I don't see the difference between Rabbit MQ and Hangfire, Can you help me please? Thank you!
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Hangfire schedules tasks. RabbitMQ receives messages and sends them out (think email server).
@shuvbhowmickbestin
@shuvbhowmickbestin 2 ай бұрын
Hey Tim, can you tell me how to make the annotations appear at 16:43 like the one called "uriString" inside the Uri method?
@IAmTimCorey
@IAmTimCorey 2 ай бұрын
Here you go: kzfaq.info/get/bejne/o9Wida6i2dfRo6M.htmlsi=0YKpnFgXE27nvQgs
@shuvbhowmickbestin
@shuvbhowmickbestin 2 ай бұрын
@@IAmTimCorey Thanks Tim.
@eduardrivas6964
@eduardrivas6964 Жыл бұрын
Tim, why you don't have content on mobile? Xamarin is not good enough? I need to learn mobile but I'm struggling to decide between C# technology and flutter with Dart.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
I've covered intros to .NET MAUI and Blazor Hybrid (both successors to Xamarin). I haven't done a lot with mobile because it is a bit of a niche subject. However, I will be covering it more in the near future.
@eduardrivas6964
@eduardrivas6964 Жыл бұрын
@@IAmTimCorey Awesome, thanks.
@neilvermeulen5283
@neilvermeulen5283 Жыл бұрын
Thank you.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You're welcome!
@ahmedelsheikh9598
@ahmedelsheikh9598 Жыл бұрын
Thanks a lot
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You are welcome.
@DavidMartin-vs1dm
@DavidMartin-vs1dm Жыл бұрын
Will your next tutorial be for using complex type messages?
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Probably not, but I may if I get enough interest on the suggestion site: suggestions.iamtimcorey.com
@andywalter7426
@andywalter7426 Жыл бұрын
I have a question. Couldn't sql server be used as a service bus? If so, then rabbit mq would be completely useless because you simply put into sql server. sql server can easily be like a que system where you put data and whoever processes it does not have to be online at the time. When they process, then can delete from sql server. what is the advantage of rabbit mq vs using sql server?
@IAmTimCorey
@IAmTimCorey Жыл бұрын
SQL is far more expensive and is not designed to be a queue. For instance, it cannot guarantee that only one application gets the message, it doesn’t do push notifications, it doesn’t handle the constant churn of messages as well, and much more.
@MiningForPies
@MiningForPies Жыл бұрын
I’ve got a queueing system up and running in SQL (had to do it that way because it’s managed by non developer IT people who do know sql quite well). It’s ok, it can easily handle 1000 requests a minute and process them individually, but when you get a backlog (say the server is down for a couple of hours) it really starts to slow down. RabbitMQ is designed to act like a firehose, doing testing with it in docker I had messages going through at about 1000 a second, never mind a minute.
@olliegelton5976
@olliegelton5976 6 ай бұрын
Thanks🎉🎉
@IAmTimCorey
@IAmTimCorey 6 ай бұрын
You are welcome.
@TheJuliFailer
@TheJuliFailer Жыл бұрын
I have an issue here. The thing is that im not very familiar with this type of applications and im trying to learn. I have thrown the dokcer container an I do have access to RabbitMQ Server. The thing is that when I run the Sender's program nothing happends. I mean, the program compiles with no errors, but when I check the server, I cannot find the exchange neither the queue. Does sb know the reason??
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Check your connection string. It may be different than mine. Also, make sure you have open ports and the ports are the correct numbers in Docker.
@TheJuliFailer
@TheJuliFailer Жыл бұрын
@@IAmTimCorey sorry for bother you again but where can i find the connection string?
@GeorgAubele
@GeorgAubele 2 ай бұрын
I get the error message "None of the specified endpoints were reachable" in line 8 of the sender script: IConnection cnn = factory.CreateConnection(); The URI is correct and the server (via Docker) is running. Does anybody know a solution? Die RabbitMQ change the syntax?
@Ignota_ludio_ludius
@Ignota_ludio_ludius Ай бұрын
Syntax is still working the same, maybe there's a small problem with the docker container. You can try deleting your existing container and create a new one with this line: docker run -d --hostname rmq --name rabbit-server -p 8080:15672 -p 5672:5672 rabbitmq:3-management (just paste it into cmd) if that doesn't work either mabye there's a typo somewhere else (that happens to me quite often ^ ^) here's the code: using RabbitMQ.Client; using System.Text; ConnectionFactory factory = new(); factory.Uri = new Uri(uriString: "amqp://guest:guest@localhost:5672"); factory.ClientProvidedName = "Rabbit Sender App"; IConnection cnn = factory.CreateConnection(); IModel channel = cnn.CreateModel(); string exchangeName = "DemoExchange"; string routingKey = "demo-routing-key"; string queueName = "DemoQueue"; channel.ExchangeDeclare(exchangeName, ExchangeType.Direct); channel.QueueDeclare(queueName, false, false, false, null); channel.QueueBind(queueName, exchangeName, routingKey, null); /*byte[] messageBodyBytes = Encoding.UTF8.GetBytes("Hello everyone!"); channel.BasicPublish(exchangeName, routingKey, null, messageBodyBytes);*/ for (int i = 0; i < 60; i++) { Console.WriteLine("Sending message: " + i); byte[] messageBodyBytes = Encoding.UTF8.GetBytes("Message #" + i); channel.BasicPublish(exchangeName, routingKey, null, messageBodyBytes); Thread.Sleep(1000); } channel.Close(); cnn.Close();
@ammadkhalidbutt6558
@ammadkhalidbutt6558 10 ай бұрын
I have watched many of your videos and found them really helpful, but whenever I look for the source code, it always takes my email and I've never once received the source code file unfortunately.
@IAmTimCorey
@IAmTimCorey 10 ай бұрын
Check your spam filter. We are working on an improved system. Just takes time. In the meantime, email help@iamtimcorey.com and Tom can get it to you a different way.
@CB-wk6kr
@CB-wk6kr 11 ай бұрын
It would be helpful if you could provide this course-specific list.
@IAmTimCorey
@IAmTimCorey 11 ай бұрын
Which course-specific list?
@CB-wk6kr
@CB-wk6kr 11 ай бұрын
@@IAmTimCorey I was looking for this RabbitMQ course in the portal but didn't find it there.
@IAmTimCorey
@IAmTimCorey 11 ай бұрын
I don't have a course on RabbitMQ, sorry.
@CB-wk6kr
@CB-wk6kr 11 ай бұрын
Thank you for the info, I thought you had one 😊
@12varshney
@12varshney Жыл бұрын
Let’s say I have 2 micro services . One is order service and other is payment . Order service can not commit until it gets confirmation that payment is successful . So if order service puts message in queue and payment service processes it then how order service get confirmation that payment is done ?
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Have the order service listen for a message from the payment service about completed payments.
@12varshney
@12varshney Жыл бұрын
@@IAmTimCorey I might have 10 requests in waiting then how order service can listen for a particular response?
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Each should have a unique id. Then, when the order service gets a "payment complete" message, it can use that id to figure out which order to continue processing.
@12varshney
@12varshney Жыл бұрын
@@IAmTimCorey Is this possible with RabbitMQ if yes then how ?
@TheCorruptedClan
@TheCorruptedClan Жыл бұрын
Can rabbitmq be used in an offline/online desktop application?
@IAmTimCorey
@IAmTimCorey Жыл бұрын
When the app comes online, it can send and receive messages. You would just need to handle how to store the messages until you are online on the desktop side.
@katamaran_dobrej_zabawy
@katamaran_dobrej_zabawy Жыл бұрын
Is source code sending works? I tried but didn't recieved mail.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Check your spam filter. If you don't see it there, email help@iamtimcorey.com and Tom will get it to you.
@giokinggioking5334
@giokinggioking5334 Ай бұрын
Hi Tim I did try to download the example but for some reason I did not receive the email.
@IAmTimCorey
@IAmTimCorey Ай бұрын
You can email help@iamtimcorey.com and someone will help you out. Just make sure to include the details like which video you were trying to get the code for.
@spookycoder
@spookycoder Жыл бұрын
How failsafe / resilient is the queue itsself?
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Very, if you need it to be. You can set it up as a cluster or even as a set of clusters over multiple locations.
@koustubhshah3735
@koustubhshah3735 11 ай бұрын
Hi Tim, Its a great video. I am facing some issue, can you please help me out. I need some help with RabbitMQ. I have started learning from now only. With so many trails, I have successfully code and run the program but whatever queues and exchanges I am declaring in my code, I am not able to display on my RabbitMQ management console its not updating there which I have run on localhost using Docker Container. Can you please help me out, I have researched and tried a lot but didn't work. My code is running well in console
@IAmTimCorey
@IAmTimCorey 11 ай бұрын
I'm sorry, I can't diagnose your issue from that information. Your best option is to debug step by step. If it works in one deployment but not in another, check your connection strings. Use logging and breakpoints to validate your assumptions.
@egldeveloper9903
@egldeveloper9903 Жыл бұрын
What is the best free RabbitMQ hosting provider (dev purposes)?
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Host it locally with Docker. If you want to do something web-based, I would use Azure Service Bus, which will cost $0.05/1 million messages.
@SertuncSELEN
@SertuncSELEN Жыл бұрын
Can you make a video about masstransit? thank you
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thanks for the suggestion. Please add it to the list on the suggestion site so others can vote on it as well: suggestions.iamtimcorey.com/
@mayurbanta
@mayurbanta Жыл бұрын
@@IAmTimCorey Upvoted MassTransit. Thanks for the amazing content.
@marcelosilva6250
@marcelosilva6250 7 ай бұрын
im not getting the source code sadly, ive tried 2 different email addresses
@IAmTimCorey
@IAmTimCorey 7 ай бұрын
Check your spam filter and then email help@iamtimcorey.com
@amimridul4278
@amimridul4278 6 ай бұрын
that's great
@IAmTimCorey
@IAmTimCorey 6 ай бұрын
Thank you!
@captkalik
@captkalik Жыл бұрын
Do you have an example of rabbit mq with one publish event and multiple subscribers for example I publish an event user created and I want two subscribers to do something with it, like one app may subscribe to event and send text and another app may subscribe to same event and log data
@IAmTimCorey
@IAmTimCorey Жыл бұрын
I don't, but it is a good suggestion. Please add it to the list on the suggestion site so others can vote on it as well: suggestions.iamtimcorey.com/
@captkalik
@captkalik Жыл бұрын
@@IAmTimCorey ok added it
@mayankjaiswal155
@mayankjaiswal155 Жыл бұрын
Hey anyone tell me whats the setup for c#? on Mac
@IAmTimCorey
@IAmTimCorey Жыл бұрын
This will all work on a Mac. You just need to install Docker and Visual Studio for Mac and you will be set.
@androidsavior
@androidsavior 9 ай бұрын
How can we make a web app listen and recieve messages ?
@IAmTimCorey
@IAmTimCorey 9 ай бұрын
That’s what an API does.
@androidsavior
@androidsavior 2 ай бұрын
@@IAmTimCoreyit worked in a web app by placing the code inside a 'BackgroundService' and putting 'await Task.Delay(1000, stoppingToken);' inside an infinite while loop `while (!stoppingToken.IsCancellationRequested)`
@nickadams2361
@nickadams2361 4 ай бұрын
wow I had no idea excalidraw had a drawing library!
@IAmTimCorey
@IAmTimCorey 3 ай бұрын
I'm glad you learned something new.
@mdzakariamasud8326
@mdzakariamasud8326 Жыл бұрын
Please make a tutorial on MQTT Broker (emqx)
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thanks for the suggestion. Please add it to the list on the suggestion site so others can vote on it as well: suggestions.iamtimcorey.com/
@NOOB_TO_PRO-hk4iy
@NOOB_TO_PRO-hk4iy 9 ай бұрын
Hi,no email received to download code
@IAmTimCorey
@IAmTimCorey 9 ай бұрын
Email help@iamtimcorey.com and they can help you out.
@BG-eng
@BG-eng 9 ай бұрын
So what happens if the Broker is down?
@IAmTimCorey
@IAmTimCorey 9 ай бұрын
No messages go through.
@sabajangidze
@sabajangidze Жыл бұрын
I did not receive code in my email
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Email help@iamtimcorey.com
@LogicException
@LogicException 8 ай бұрын
47:08 Message #47, #49 and #48. Unfortunately, he didn't address this great case at that moment.
@IAmTimCorey
@IAmTimCorey 8 ай бұрын
Order is not guaranteed. Is that what you wanted to be covered?
@MTEXX
@MTEXX 10 ай бұрын
Neo: I know Rabbit MQ
@IAmTimCorey
@IAmTimCorey 10 ай бұрын
👍🏻
@user-um4xd3he1o
@user-um4xd3he1o 7 ай бұрын
It's too difficult without translation.
@IAmTimCorey
@IAmTimCorey 7 ай бұрын
What do you mean? The captions can be viewed in any language, just so you know.
RabbitMQ : Message Queues for beginners
22:06
That DevOps Guy
Рет қаралды 170 М.
Intro to Docker - A Tool Every Developer Should Know
1:16:03
IAmTimCorey
Рет қаралды 206 М.
WHY IS A CAR MORE EXPENSIVE THAN A GIRL?
00:37
Levsob
Рет қаралды 9 МЛН
4- Lean six sigma basics
4:49
Info on your tips !!
Рет қаралды
What is RabbitMQ?
10:10
IBM Technology
Рет қаралды 304 М.
Intro to Redis in C# - Caching Made Easy
1:27:29
IAmTimCorey
Рет қаралды 171 М.
What is Span in C# and why you should be using it
15:15
Nick Chapsas
Рет қаралды 247 М.
RabbitMQ Crash Course
42:53
Hussein Nasser
Рет қаралды 196 М.
RabbitMQ in .NET Core (Part 1, Single producer and consumer with Queue)
19:38
DotNet Core Central
Рет қаралды 115 М.
Microservices Explained in 5 Minutes
5:17
5 Minutes or Less
Рет қаралды 681 М.
STOP Learning These Programming Languages (for Beginners)
5:25
Andy Sterkowitz
Рет қаралды 637 М.
.NET Framework vs .NET Core vs .NET vs .NET Standard vs C#
25:14
IAmTimCorey
Рет қаралды 534 М.