RabbitMQ : Message Queues for beginners

Поделиться
HTML-код
  • Опубликовано: 4 авг 2020
  • 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.dev/join
    Checkout "That DevOps Community" too
    marceldempers.dev/community
    Source Code
    --------------------------------------------------------------
    github.com/marcel-dempers/doc...
    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/marcel-dempers
    Facebook | thatdevopsguy
    LinkedIn | / marceldempers
    Instagram | / thatdevopsguy
    Music:
    Track: INOSSI - Sunset Eyes (Free download) | is licensed under a Creative Commons Attribution licence (creativecommons.org/licenses/...)
    Listen: / sunset-eyes-free-download
    Track: LiQWYD - Bridges (Free download) | is licensed under a Creative Commons Attribution licence (creativecommons.org/licenses/...)
    Listen: / bridges-free-download
    Track: Amine Maxwell - Le Soir | is licensed under a Creative Commons Attribution licence (creativecommons.org/licenses/...)
    Listen: / le-soir
    Track: souKo - souKo - Parallel | is licensed under a Creative Commons Attribution licence (creativecommons.org/licenses/...)
    Listen: / parallel
  • НаукаНаука

Комментарии • 153

  • @MarcelDempers
    @MarcelDempers  3 года назад +9

    Rabbit MQ : High Availability and Replication 👉🏽ruclips.net/video/FzqjtU2x6YA/видео.html

    • @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 года назад +153

    Love your tutorials! You also look like you could bench press a node_modules folder.

  • @sm5172
    @sm5172 3 года назад +4

    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 года назад +7

    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 года назад +9

      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.

  • @KahaniyonKK
    @KahaniyonKK 4 года назад +2

    You are really doing great work man for everyone. Great stuff, easy explanation, demos are always awesome. Thanks and keep doing great work.

  • @decepticoon
    @decepticoon 3 года назад +1

    Truly love your channel. You're a great teacher and I love the way you present information! Keep making great videos please :)

  • @dufferzzzzz
    @dufferzzzzz 3 года назад +1

    Helped me so much! Thank you :) All the content on your channel is fantastic. Thanks for the great work

  • @watherby29
    @watherby29 Год назад

    Best tutorials I ever watched. Explaining what counts and not going into what does not matter. Also I like that it is a little fast paced (at least for me). Kindly make more of this gold :) Thanks

  • @briantoner2215
    @briantoner2215 2 года назад

    That's probably one of the best and most coherent technical presentations I have seen on youtube!

  • @ezrichie2006
    @ezrichie2006 3 года назад +4

    I came here for more understanding for rabbit, and ended up seeing a GO app in action :D very nice!

  • @phils8215
    @phils8215 3 года назад

    Very concise, very well explained. Your pace is excellent to follow!

  • @nathiToto22
    @nathiToto22 4 года назад +2

    I’m here for this topic 😃, really looking forward to more thank you for this.

  • @robbiealixsantos
    @robbiealixsantos 3 года назад +1

    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

  • @dickson710
    @dickson710 2 года назад +1

    so clear without any single BS, nice work!

  • @user-kn6vr7el8y
    @user-kn6vr7el8y 4 года назад +2

    The best video about RabbitMQ ever! Thank's a lot!

  • @PrakashReddyK
    @PrakashReddyK 4 года назад +2

    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.

  • @danielarledge7017
    @danielarledge7017 2 года назад +7

    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.

  • @MrVnelis
    @MrVnelis 3 года назад

    Your videos are awesome and really useful! Thanks so much for this excellent work!

  • @divanselev4413
    @divanselev4413 3 года назад +6

    No only squat, deadlift too) thank you for your work!

  • @nicknick65
    @nicknick65 3 года назад +1

    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.

  • @willypi3641
    @willypi3641 2 года назад

    I was some troubles understanding the message queue logic until I watched this video. Thanks a lot man, greeting from Mexico.

  • @RayStatham
    @RayStatham 4 года назад +1

    Really nice walk through there Marcel :)

  • @supernerd6983
    @supernerd6983 Год назад +2

    This camera format always has me expecting him to drop a freestyle

  • @1piece_forever
    @1piece_forever 4 года назад +2

    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 года назад +2

      Thanks so much! this means a lot 💪🏽

  • @thomasmcewen2840
    @thomasmcewen2840 Год назад

    SUPER high quality video! Thanks Marcel!

  • @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!

  • @DavidChandra
    @DavidChandra Год назад +1

    I love your tutorial. Subscribed.

  • @OddBallTrails
    @OddBallTrails 2 года назад

    Hey man, I love you. Thanks for all your videos. ❤️💙💜

  • @cheunhong9769
    @cheunhong9769 3 года назад +1

    Love you work, would like to see you cover about Apache Kafka next time.

  • @davidecortese8276
    @davidecortese8276 2 года назад

    Thank you!!! Great video and amazing explanation!

  • @kenchang3456
    @kenchang3456 4 года назад +1

    I agree with @Ray Statham, very nice easy intro to Rabbit MQ. Thank you very much.

  • @alexdan3457
    @alexdan3457 3 года назад

    Awesome video! Very helpful. Thanks

  • @faizanvanekar7882
    @faizanvanekar7882 3 года назад

    Awesome Explanation !!! Looking forward for some administration video on the same. Thanks !! Great work !!

  • @hzrq
    @hzrq 3 года назад

    Many thanks for the video! Worth the 22 minutes!

  • @cloudbrothers
    @cloudbrothers Год назад

    This is a great video. It's inspiring. Thanks for the content!

  • @buckfush187
    @buckfush187 4 года назад +1

    Yes man your channel is really underrated

  • @zenobikraweznick
    @zenobikraweznick 2 года назад

    Just discovered your channel, it's amazing, thank you!

  • @mariorios8827
    @mariorios8827 3 года назад

    Thank you, clear and concise

  • @hitkumar3748
    @hitkumar3748 3 года назад

    Very useful video,Thank you!!

  • @phillip0renner
    @phillip0renner 4 года назад

    Thank you. Great video.

  • @casquee
    @casquee 3 года назад

    Thanks a lot for sharing this!

  • @dialecticalmonist3405
    @dialecticalmonist3405 3 года назад

    I don't understand any of this, but I can tell that if I watch it more carefully and several more times, I would get it eventually. You explained it so thoroughly and clearly that I subscribed to your channel.

    • @MarcelDempers
      @MarcelDempers  3 года назад

      Glad you enjoyed it. Feel free to checkout my community page for the Discord server. Friendly folks happy to answer questions you may have 💪🏽👊🏽

  • @DatNguyen-ry1vr
    @DatNguyen-ry1vr 4 года назад

    great work. Thank you!

  • @anarmammadovn
    @anarmammadovn Год назад

    really great tutorial that I looking for. thanks best grads.

  • @zakariabouataya7248
    @zakariabouataya7248 9 месяцев назад

    Super interesting content, Thank you

  • @esc-sh
    @esc-sh 4 года назад

    This is a great intro to RabbitMQ

  • @rajendragosavi2233
    @rajendragosavi2233 3 года назад

    Subscribed.. amazing work

  • @MrPro1004fun
    @MrPro1004fun 2 года назад

    Thanks a lot for this fantastic video!!!

  • @amine250
    @amine250 4 года назад

    Very interesting, thanks marcel

  • @tangseakmeng599
    @tangseakmeng599 Год назад +1

    This is a brilliant tutorial.

  • @torbendury4374
    @torbendury4374 3 года назад

    Absolutely underrated channel. Besides beginner videos, are you also planning some deep dives?

  • @gogle-zero
    @gogle-zero 2 года назад

    very clear thanks !

  • @eclipsetutorialvideo
    @eclipsetutorialvideo 3 года назад +2

    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 :)

  • @giancarlotupacgutierrez6210
    @giancarlotupacgutierrez6210 3 года назад

    Excellent vídeo folk!

  • @user-bf5sb1fs1w
    @user-bf5sb1fs1w 3 года назад +1

    Thank you SO MUCH!!!

  • @BennyWalnuts
    @BennyWalnuts Год назад

    The arms on this guy. I feel compelled to trust his instruction.

  • @minhthinhhuynhle9103
    @minhthinhhuynhle9103 Год назад

    I decided to register for membership after watching fewer than 10 of your videos :)) Can't wait until I become a real DevOps Engineer. Imma upgrade my Level then :)))

  • @bharatsinghtanwar5963
    @bharatsinghtanwar5963 3 года назад +1

    Hey man, you are the best.

  • @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

  • @DigsWigs2022
    @DigsWigs2022 11 месяцев назад +1

    Best. Thank you

  • @mangeshgupta5677
    @mangeshgupta5677 3 года назад

    More power to you 💪

  • @mohammadkhazaee9818
    @mohammadkhazaee9818 2 года назад

    thank you explain it very well

  • @RaabStephan
    @RaabStephan 3 года назад

    Love that VSCode theme!

  • @OddBallTrails
    @OddBallTrails 2 года назад

    Good one. Thanks.

  • @datwilliama2
    @datwilliama2 3 года назад +1

    thank you so much :3

  • @Hackenbaker
    @Hackenbaker 3 года назад

    Very cleary. Thank so mucho.

  • @Chutchais
    @Chutchais 3 года назад

    Love it , thanks

  • @Su2509
    @Su2509 Год назад +1

    Thank you so much

  • @eliassal1
    @eliassal1 3 года назад

    Nice, useful and easy to understand video. I have a question, once consumer recieves a message from queue, queue is empty, so lets say during the day there were 1000 messages sent/received, how, from admin perspective I can see the history of messages and their details? Thanks in advance

  • @manpt123
    @manpt123 Год назад

    One of the best youtuber for Golang community

  • @rololop34
    @rololop34 2 года назад +1

    great video

  • @leafaravlis7361
    @leafaravlis7361 2 года назад

    thanks again!

  • @tarasgalatsiuk6744
    @tarasgalatsiuk6744 3 года назад

    Thank you!

  • @mohamedhabas7391
    @mohamedhabas7391 4 года назад

    good work ma man

  • @SodiqOlaniyi
    @SodiqOlaniyi Год назад +2

    Respect 🖖.

  • @deanprickle5394
    @deanprickle5394 2 года назад

    It was kinda hard to keep my eyes off your triceps XD...Excellent Video btw...cleared my doubts 🧡

  • @benripka6977
    @benripka6977 3 года назад

    Maaan so good

  • @NiteshKumar-do4en
    @NiteshKumar-do4en 4 года назад

    Great fan again good video please argo as ci or workflows

  • @13Macke37
    @13Macke37 3 года назад +1

    This is sooo great content. You have way too few subscribers.

  • @amirshahidi2973
    @amirshahidi2973 2 года назад

    excellent

  • @mzw8374
    @mzw8374 Год назад

    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?

  • @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

  • @WomboBraker
    @WomboBraker Год назад

    Man you are an absolute chad

  • @orestborovets2140
    @orestborovets2140 3 года назад

    Tapped like on 0:05 second durring intro. Great)
    Bro, the way that you provide the content is awesome and make me laugh. thousand likes please)

  • @mateuszobrzut3788
    @mateuszobrzut3788 3 года назад

    Great!

  • @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!

  • @kevintarango3736
    @kevintarango3736 2 года назад

    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  2 года назад

      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 ?

  • @BigFattyNat
    @BigFattyNat 2 года назад

    My boy got a flex camera angle 😆

  • @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 ...

  • @rogerthat_shorts
    @rogerthat_shorts 2 года назад

    Failed to establish message queue error I m getting....Any suggestions 🙏

  • @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]"

  • @user-ej9bv7qf1e
    @user-ej9bv7qf1e 8 месяцев назад

    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.

  • @DharmicYoddha
    @DharmicYoddha 2 года назад

    I didn’t know Arnold was a Dev Ops guy in parallel universe!

  • @elissar4158
    @elissar4158 3 года назад

    Thanks 🙏🏻🙏🏻🙏🏻
    How can publish message to rabbitmq using django without celery can you help me please?

  • @ashrafbaig697
    @ashrafbaig697 3 месяца назад

    Can you create queue type as Quorum and publish the image ? this is creating classic queue

  • @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 года назад +1

      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.

  • @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!

  • @nickwoodward819
    @nickwoodward819 3 года назад

    Harry Enfield running out of ideas XD
    Nice video

  • @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

  • @carlotuazon6783
    @carlotuazon6783 3 года назад

    what is the name of your text editor?