RabbitMQ : Message Queues for beginners

  Рет қаралды 175,762

That DevOps Guy

That DevOps Guy

Күн бұрын

Subscribe to show your support! goo.gl/1Ty1Q2 .
Patreon 👉🏽 / marceldempers
Folks! Today we'll be taking a look at Message Queues, what they are, why you may want to use a message queue, and how RabbitMQ helps offer message broker functionality.
In this video, we take a look at the basics, how to run RabbitMQ, some of the features.
We will also build and application that produces messages in a queue, and another that consumes the messages.
Checkout the source code below and follow along :)
In an upcoming video, we'll cover HA and replication so be sure to stay tuned for that!
We'll also learn how to run all of this on Kubernetes.
Also if you want to support the channel further, become a member 😎
marceldempers....
Checkout "That DevOps Community" too
marceldempers....
Source Code
--------------------------------------------------------------
github.com/mar...
If you are new to Kubernetes, check out my getting started playlist on Kubernetes below :)
Kubernetes Guide for Beginners:
---------------------------------------------------
• Kubernetes development...
Kubernetes Monitoring Guide:
-----------------------------------------------
• Kubernetes Monitoring ...
Kubernetes Secret Management Guide:
--------------------------------------------------------------
• Kubernetes Secret Mana...
Like and Subscribe for more :)
Follow me on socials!
marceldempers.dev
Twitter | / marceldempers
GitHub | github.com/mar...
Facebook | thatdevop...
LinkedIn | / marceldempers
Instagram | / thatdevopsguy
Music:
Track: INOSSI - Sunset Eyes (Free download) | is licensed under a Creative Commons Attribution licence (creativecommon...)
Listen: / sunset-eyes-free-download
Track: LiQWYD - Bridges (Free download) | is licensed under a Creative Commons Attribution licence (creativecommon...)
Listen: / bridges-free-download
Track: Amine Maxwell - Le Soir | is licensed under a Creative Commons Attribution licence (creativecommon...)
Listen: / le-soir
Track: souKo - souKo - Parallel | is licensed under a Creative Commons Attribution licence (creativecommon...)
Listen: / parallel

Пікірлер: 153
@MarcelDempers
@MarcelDempers 4 жыл бұрын
Rabbit MQ : High Availability and Replication 👉🏽kzbin.info/www/bejne/fKvUm6eLZ91pj6M
@Techtips200
@Techtips200 3 жыл бұрын
Very nice video...small Query wrt Rabbitmq Linux vulnerability on default port 5672..how to remove this vulnerability...change the port or firewalld rules?
@crimzin2180
@crimzin2180 2 жыл бұрын
Hi Bud, Thank you for the great videos. I need to set up a high availability RabbitMQ with 3 nodes and then need to have a load balancer like nginx or haproxy for it. I am trying nginx but I don't know how to make the connections persistent. Do you have any info or exaples for that?
@MarcelDempers
@MarcelDempers 2 жыл бұрын
@@crimzin2180 I dont have much experience in that area especially the persistence. I would think that your client would establish a connection which would remain open whilst subscribing to the queue. HA or NGINX would have that connection open to an upstream until the client closes the connection. Here is an example book showing a basic HA proxy config with Rabbit livebook.manning.com/book/rabbitmq-in-action/chapter-6/35
@gosnooky
@gosnooky 3 жыл бұрын
Love your tutorials! You also look like you could bench press a node_modules folder.
@dadurex
@dadurex 2 жыл бұрын
XDDDDDD
@hiwijaya
@hiwijaya 2 жыл бұрын
LoL
@smooth8580
@smooth8580 2 жыл бұрын
lmaoo
@DigsWigs2022
@DigsWigs2022 Жыл бұрын
Lol
@robbiealixsantos
@robbiealixsantos 4 жыл бұрын
Very cool, thank you for this!! Your video was very easy to understand and follow BTW if anyone is running into the message "Stats in management UI are disabled on this node" when accessing the Management dashboard, use the following command when starting up the RabbitMQ container: docker run -d --rm --net rabbits -p 8080:15672 --hostname rabbit-1 --name rabbit-1 rabbitmq:3-management The reason is that the default image disables metrics collector in the management_agent plugin
@sm5172
@sm5172 3 жыл бұрын
Excellent video, thank you for going straight to the point and even editing out all the pauses! I came for RabbitMQ but I'm staying for more Go and Kubernetes.
@jerweiyeoh7096
@jerweiyeoh7096 4 жыл бұрын
Just wanna thank you for the great videos and content! Trying to get into DevOps myself and it has been a struggle, and your videos has always been helpful in understanding some concepts I struggle with. Always excited for your content as it explains modern tech in an understandable format. Appreciate it and keep up the good work!
@MarcelDempers
@MarcelDempers 4 жыл бұрын
Thanks so much 💪🏽Good luck out there. My advice: Build up a good understanding of using Linux, learn docker, use docker to run everything (like i do in all my videos) It will powerlevel and fast track your learning especially when running open source stuff locally. Learn the basics of Kubernetes. Try apply your docker learning, to K8s. Then learn how to run it locally on Kubernetes. Create trial AWS\Azure account, try running kubernetes in the cloud. This will give you a good foothold and foundation to build on.
@lashlarue7924
@lashlarue7924 7 ай бұрын
Bro, I subscribed within the first 2 minutes, never having seen or heard of you before, you're the man.
@willypi3641
@willypi3641 2 жыл бұрын
I was some troubles understanding the message queue logic until I watched this video. Thanks a lot man, greeting from Mexico.
@divanselev4413
@divanselev4413 3 жыл бұрын
No only squat, deadlift too) thank you for your work!
@briantoner2215
@briantoner2215 3 жыл бұрын
That's probably one of the best and most coherent technical presentations I have seen on youtube!
@supernerd6983
@supernerd6983 Жыл бұрын
This camera format always has me expecting him to drop a freestyle
@nicknick65
@nicknick65 3 жыл бұрын
wow man, very nicely done. Ive just finished learning Go and now getting into RabbitMQ and Kafka. Your docker stuff was brilliant. Learnt heaps. Just subscribed.
@MarcelDempers
@MarcelDempers 3 жыл бұрын
🙏🏽
@PrakashReddyK
@PrakashReddyK 4 жыл бұрын
Marcel , Good Morning :) ( for me ). Thanks Very much for wonderful content. I am more visible kind of guy , cant thank you enough for explaining clearly about architecture on a white board. I have learned a lot from your videos.
@1piece_forever
@1piece_forever 4 жыл бұрын
I think you should definitely know that, you are doing a great great work for the community. Thank you. And please keep doing.
@MarcelDempers
@MarcelDempers 4 жыл бұрын
Thanks so much! this means a lot 💪🏽
@НиколайСладкий-н4к
@НиколайСладкий-н4к 4 жыл бұрын
The best video about RabbitMQ ever! Thank's a lot!
@decepticoon
@decepticoon 3 жыл бұрын
Truly love your channel. You're a great teacher and I love the way you present information! Keep making great videos please :)
@KahaniyonKK
@KahaniyonKK 4 жыл бұрын
You are really doing great work man for everyone. Great stuff, easy explanation, demos are always awesome. Thanks and keep doing great work.
@TheAfreitag
@TheAfreitag 3 жыл бұрын
You saved my bacon here, need to set up a rabbitmq cluster so this in combination with your next video are really helping me out!
@OddBallTrails
@OddBallTrails 2 жыл бұрын
Hey man, I love you. Thanks for all your videos. ❤️💙💜
@buckfush187
@buckfush187 4 жыл бұрын
Yes man your channel is really underrated
@manpt123
@manpt123 Жыл бұрын
One of the best youtuber for Golang community
@kenchang3456
@kenchang3456 4 жыл бұрын
I agree with @Ray Statham, very nice easy intro to Rabbit MQ. Thank you very much.
@phils8215
@phils8215 3 жыл бұрын
Very concise, very well explained. Your pace is excellent to follow!
@cheunhong9769
@cheunhong9769 3 жыл бұрын
Love you work, would like to see you cover about Apache Kafka next time.
@torbendury4374
@torbendury4374 3 жыл бұрын
Absolutely underrated channel. Besides beginner videos, are you also planning some deep dives?
@BennyWalnuts
@BennyWalnuts Жыл бұрын
The arms on this guy. I feel compelled to trust his instruction.
@RayStatham
@RayStatham 4 жыл бұрын
Really nice walk through there Marcel :)
@DavidChandra
@DavidChandra Жыл бұрын
I love your tutorial. Subscribed.
@tangseakmeng599
@tangseakmeng599 Жыл бұрын
This is a brilliant tutorial.
@deanprickle5394
@deanprickle5394 2 жыл бұрын
It was kinda hard to keep my eyes off your triceps XD...Excellent Video btw...cleared my doubts 🧡
@itier
@itier Жыл бұрын
Maybe an refresh of the series rabbit on kubernetes with rabbitmq/cluster-operator? It's an game changer on how things (could) work ...
@devopssimon
@devopssimon 3 жыл бұрын
Hi Marcel. When I run the rabbitmq docker container and look at the logs it seems to start in maintenance mode and when I look at the web management I see the node name, but I don't see any of the node status information, like file descriptors, memory or disk space etc. I used the following command to start the container docker run -d --rm --net rabbits -p 8090:15672 --hostname rabbit-1 --name rabbit-1 rabbitmq:3.8 Here are the end of the logs 2021-05-23 11:14:30.499 [info] Running boot step direct_client defined by app rabbit 2021-05-23 11:14:30.500 [info] Resetting node maintenance status 2021-05-23 11:14:30.502 [info] Application rabbit started on node 'rabbit@rabbit-1' 2021-05-23 11:14:30.502 [info] Application cowlib started on node 'rabbit@rabbit-1' 2021-05-23 11:14:30.504 [info] Application cowboy started on node 'rabbit@rabbit-1' 2021-05-23 11:14:30.515 [info] Application rabbitmq_management_agent started on node 'rabbit@rabbit-1' 2021-05-23 11:14:30.566 [info] Application prometheus started on node 'rabbit@rabbit-1' 2021-05-23 11:14:30.568 [info] Application rabbitmq_web_dispatch started on node 'rabbit@rabbit-1' 2021-05-23 11:14:30.586 [info] Prometheus metrics: HTTP (non-TLS) listener started on port 15692 2021-05-23 11:14:30.586 [info] Application rabbitmq_prometheus started on node 'rabbit@rabbit-1' 2021-05-23 11:14:30.586 [info] Ready to start client connection listeners 2021-05-23 11:14:30.598 [info] started TCP listener on [::]:5672 completed with 3 plugins. 2021-05-23 11:14:31.784 [info] Server startup complete; 3 plugins started. * rabbitmq_prometheus * rabbitmq_web_dispatch * rabbitmq_management_agent 2021-05-23 11:14:31.787 [info] Resetting node maintenance status
@anarmammadovn
@anarmammadovn Жыл бұрын
really great tutorial that I looking for. thanks best grads.
@hzrq
@hzrq 3 жыл бұрын
Many thanks for the video! Worth the 22 minutes!
@MrVnelis
@MrVnelis 3 жыл бұрын
Your videos are awesome and really useful! Thanks so much for this excellent work!
@SodiqOlaniyi
@SodiqOlaniyi Жыл бұрын
Respect 🖖.
@bharatsinghtanwar5963
@bharatsinghtanwar5963 3 жыл бұрын
Hey man, you are the best.
@cloudbrothers
@cloudbrothers Жыл бұрын
This is a great video. It's inspiring. Thanks for the content!
@esc-sh
@esc-sh 4 жыл бұрын
This is a great intro to RabbitMQ
@Su2509
@Su2509 Жыл бұрын
Thank you so much
@zakariabouataya7248
@zakariabouataya7248 11 ай бұрын
Super interesting content, Thank you
@davidecortese8276
@davidecortese8276 2 жыл бұрын
Thank you!!! Great video and amazing explanation!
@rololop34
@rololop34 2 жыл бұрын
great video
@rogerthat_shorts
@rogerthat_shorts 2 жыл бұрын
Failed to establish message queue error I m getting....Any suggestions 🙏
@datwilliama2
@datwilliama2 3 жыл бұрын
thank you so much :3
@mohammadkhazaee9818
@mohammadkhazaee9818 2 жыл бұрын
thank you explain it very well
@alexdan3457
@alexdan3457 3 жыл бұрын
Awesome video! Very helpful. Thanks
@mariorios8827
@mariorios8827 3 жыл бұрын
Thank you, clear and concise
@jekabskarklins
@jekabskarklins 2 жыл бұрын
07:00 I think you can still run rabbitMQ as deployment just create a service with the specified name and dirrect traffic to the pods in the deployment
@MarcelDempers
@MarcelDempers 2 жыл бұрын
If you need replication setup, each pod needs to be individually addressable, so load balancing between multiple pods wont be sufficient for that need. This is why a headless service with a statefulset is used instead.
@ashrafbaig697
@ashrafbaig697 5 ай бұрын
Can you create queue type as Quorum and publish the image ? this is creating classic queue
@МаксимСлободянюк-н9о
@МаксимСлободянюк-н9о 3 жыл бұрын
Thank you SO MUCH!!!
@MrPro1004fun
@MrPro1004fun 2 жыл бұрын
Thanks a lot for this fantastic video!!!
@mzw8374
@mzw8374 2 жыл бұрын
Hello, What if we setup the rabbitmq on EC2 instance not with containerization (k8s) for serving all the microservices on kubernetes cluster, is it possible?
@gogle-zero
@gogle-zero 2 жыл бұрын
very clear thanks !
@WomboBraker
@WomboBraker 2 жыл бұрын
Man you are an absolute chad
@TheRishith
@TheRishith 3 жыл бұрын
Great job, have gone through most of the videos, all are fantastic. Can you make a series of Tekton and Integare with argo CD
@MarkDeibert
@MarkDeibert 2 жыл бұрын
What is the VS Code theme you're using? I wish VS Code would implement a feature that shows the theme name small at the bottom somewhere. Also, really great content my friend. Very clear and easy to follow instruction.
@MarcelDempers
@MarcelDempers 2 жыл бұрын
Thanks for the kind words 🙏 I used to use "Amethyst Dark", Now I use "Reloaded Dark [Darker]"
@giancarlotupacgutierrez6210
@giancarlotupacgutierrez6210 3 жыл бұрын
Excellent vídeo folk!
@rohitsolanki667
@rohitsolanki667 10 ай бұрын
I have two broker from different device and create queue when publish msg , So I want if i publish msg it will be retain and show in both broker subscribe . it will manage only configuration no use predefined queue because my msg will be published by device . so how can i achieve this replication of msg . i use client tool for subscribe is mqttbox . please give me solution 🙏
@shraddhapriya2395
@shraddhapriya2395 2 жыл бұрын
How can I connect to my organization rabbitmq ? In other words, How can I connect to a host other than localhost? Thanks in advance!
@OddBallTrails
@OddBallTrails 2 жыл бұрын
Good one. Thanks.
@danielzarzeczny2800
@danielzarzeczny2800 3 жыл бұрын
1:10 I believe that you mean HTTP not TCP, when you say about synchronous calls between services. TCP itself is asynchronous. Some higher-level protocols like HTTP, that rely on TCP make commnication synchronous, but not TCP itself. I just discovered your channel and I love it. You're doing a great work! Keep going :)
@mangeshgupta5677
@mangeshgupta5677 3 жыл бұрын
More power to you 💪
@amine250
@amine250 4 жыл бұрын
Very interesting, thanks marcel
@zxc11118
@zxc11118 Жыл бұрын
Awesome video! I copied the code, but had to rework the dockerfile and add the go.mod and go.sum files, and add the installation of the modules command (go mod download), because running like it was there, didn't work for me.
@MarcelDempers
@MarcelDempers Жыл бұрын
Great stuff 💪🏽 Some of my guides are still using older versions of Go Do you mind submitting a PR?
@zxc11118
@zxc11118 Жыл бұрын
@@MarcelDempers Not all! 👍
@rakeshmali1727
@rakeshmali1727 3 жыл бұрын
nice video.. one question though: at 7:00 you said hostname is required for `rabbitmq` instances to find and talk to each other. Why do multiple rabbitmq instances need to communicate? Isn't it that the other application services (producer and consumers) require communication with each other?
@MarcelDempers
@MarcelDempers 3 жыл бұрын
In most software, to achieve high availability, the software runs multiple copies and forms a leader\worker topology, traditionally known as master/slave. They need to communicate in order to up hold high availability. Producers and consumers in message broker technology dont communicate with one another and talk to the queue itself, in this case, they talk to RabbitMQ
@13Macke37
@13Macke37 4 жыл бұрын
This is sooo great content. You have way too few subscribers.
@leafaravlis7361
@leafaravlis7361 2 жыл бұрын
thanks again!
@somebodyyouusedtoknow8600
@somebodyyouusedtoknow8600 2 жыл бұрын
he is the buffed programmer
@hn3m3s1s
@hn3m3s1s 3 жыл бұрын
thank you! random question: would you mind sharing how you make your commandline arguments/options in grey? that's pretty nice!
@MarcelDempers
@MarcelDempers 3 жыл бұрын
I have no idea to be honest 😀 I believe this may just be a VSCode theme that does it
@hn3m3s1s
@hn3m3s1s 3 жыл бұрын
@@MarcelDempers You don't have this in your normal terminal? only in VSCode? That's pretty nite tho!
@DatNguyen-ry1vr
@DatNguyen-ry1vr 4 жыл бұрын
great work. Thank you!
@nickwoodward819
@nickwoodward819 4 жыл бұрын
Harry Enfield running out of ideas XD Nice video
@kevintarango3736
@kevintarango3736 3 жыл бұрын
Hi bro, First of all thanks for making this helpful video, I have a problem, when I get in to the local host my dashboard is so different in front of the dashboard you get in the video, I have been reading about it and I have found that I could be something about the node configuration but I did everything as you did, can you give an advice? And thanks again bro
@MarcelDempers
@MarcelDempers 3 жыл бұрын
Not quite sure about this one. The configuration is pretty lean so unsure if its config related. Wondering if the management plugin on that container image has changed perhaps ?
@mohamedhabas7391
@mohamedhabas7391 4 жыл бұрын
good work ma man
@carlotuazon6783
@carlotuazon6783 3 жыл бұрын
what is the name of your text editor?
@ruixue6955
@ruixue6955 2 жыл бұрын
7:43 RabbitMQ CLI 8:31 plugins 11:03 producer 14:05 put message into a queue
@suhasadduri1691
@suhasadduri1691 Жыл бұрын
why you stopped doing vedios ??
@kcinosdev6642
@kcinosdev6642 Жыл бұрын
Very good and knowledgeable video, thanks but TOO MUCH ADS : four (4) so for.
@NiteshKumar-do4en
@NiteshKumar-do4en 4 жыл бұрын
Great fan again good video please argo as ci or workflows
@OseremeOkojie
@OseremeOkojie 11 ай бұрын
Not Cbum "what is up youtube"
@mateuszobrzut3788
@mateuszobrzut3788 3 жыл бұрын
Great!
@adriancor1344
@adriancor1344 4 жыл бұрын
you live in Australia or Spain?
@MarcelDempers
@MarcelDempers 4 жыл бұрын
Aussie Aussie Aussie 🦘💪🏽
@quanchi88
@quanchi88 3 жыл бұрын
Do you even lift bro? :) I'm just kidding. Great video, thanks for it
@openyard
@openyard 3 жыл бұрын
This business off chopping of pause intervals in video or audio clips makes the listening stressful after a few seconds and sounds argumentative. The brain needs time to process the information in a calm fashion.
@elcapitan6126
@elcapitan6126 Жыл бұрын
slightly off topic but it's good to see other devs keeping themselves in shape (I assume you lift regularly). I can't stand the physically-unhealthy culture typically associated with software development. healthy body healthy mind.
@MarcelDempers
@MarcelDempers Жыл бұрын
I am literally reading this from the gym 🤣 💪🏽👍🏼
@mohammadkhazaee9818
@mohammadkhazaee9818 2 жыл бұрын
damm.. you look like Boris Johnson
@Naton
@Naton 3 жыл бұрын
Too much zoom make it nauseating
@BigFattyNat
@BigFattyNat 3 жыл бұрын
My boy got a flex camera angle 😆
@ezrichie2006
@ezrichie2006 4 жыл бұрын
I came here for more understanding for rabbit, and ended up seeing a GO app in action :D very nice!
@danielarledge7017
@danielarledge7017 2 жыл бұрын
I'm transitioning from a senior system admin position to a devops position in my company and I can't tell you how valuable your content is to me. Best Devops channel on youtube.
@bebebewin
@bebebewin 8 ай бұрын
go heels
@DigsWigs2022
@DigsWigs2022 Жыл бұрын
Best. Thank you
@eclipsetutorialvideo
@eclipsetutorialvideo 4 жыл бұрын
Great intro to using RabbitMQ in Docker, it is a bit confusing the consumer part with loops consuming but you need to learn Go language. Otherwise it was easy to follow. Thanks, could you show us the RPC pattern :)
@nathiToto22
@nathiToto22 4 жыл бұрын
I’m here for this topic 😃, really looking forward to more thank you for this.
@elissar4158
@elissar4158 3 жыл бұрын
Thanks 🙏🏻🙏🏻🙏🏻 How can publish message to rabbitmq using django without celery can you help me please?
@MohammadSikt
@MohammadSikt 10 ай бұрын
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.
@RakshithSShellikeri
@RakshithSShellikeri Жыл бұрын
hey hi can anyone help me i am working on project for rabbitmq to develop an messaging app pls kindly anyone revert if u got any idea on this
@DharmicYoddha
@DharmicYoddha 2 жыл бұрын
I didn’t know Arnold was a Dev Ops guy in parallel universe!
@dufferzzzzz
@dufferzzzzz 4 жыл бұрын
Helped me so much! Thank you :) All the content on your channel is fantastic. Thanks for the great work
@Aryeh-o
@Aryeh-o 6 ай бұрын
If He Man made devops tutorials
@RouhollahNaby
@RouhollahNaby 2 жыл бұрын
Where is your github repo link?
@Mustafa-099
@Mustafa-099 5 ай бұрын
Bulging Biceps 🗿
RabbitMQ : How to setup a RabbitMQ cluster - for beginners
23:12
That DevOps Guy
Рет қаралды 64 М.
Intro To RabbitMQ
54:06
IAmTimCorey
Рет қаралды 101 М.
Every parent is like this ❤️💚💚💜💙
00:10
Like Asiya
Рет қаралды 12 МЛН
Пришёл к другу на ночёвку 😂
01:00
Cadrol&Fatich
Рет қаралды 11 МЛН
Understanding KUBECTL - Learning Kubernetes
40:34
That DevOps Guy
Рет қаралды 10 М.
Kubernetes Course - Full Beginners Tutorial (Containerize Your Apps!)
2:58:01
RabbitMQ Crash Course
42:53
Hussein Nasser
Рет қаралды 202 М.
What is Kubernetes AFFINITY ?
17:28
That DevOps Guy
Рет қаралды 7 М.
Learn RabbitMQ for Event-Driven Architecture (EDA)
2:21:01
ProgrammingPercy
Рет қаралды 11 М.
What are Kubernetes HEALTH probes ?
16:08
That DevOps Guy
Рет қаралды 6 М.
Introduction to Microservices, Docker, and Kubernetes
55:08
James Quigley
Рет қаралды 1,6 МЛН
Kubernetes 101 workshop - complete hands-on
3:56:03
Kubesimplify
Рет қаралды 1,6 МЛН
What is RabbitMQ?
10:10
IBM Technology
Рет қаралды 321 М.