The Backend Engineering Show with Hussein Nasser

Episode 109 - RabbitMQ


Listen Later

RabbitMQ

RabbitMQ is an open source distributed message queue written in Erlang and supports many communication protocols. It was trying to solve the spaghetti 🍝 mesh architecture where every client is communicating with other client in System by introducing an extra layer in the middle.

(slide)

In this video we will explain basic components of RabbitMQ Such as AMQP, channel, queue, publisher, consumer and some stuff, we will also learn how to spin up a RabbitMQ server and we will finally write some code to develop a publisher client that post messages to RabbitMQ. We will also write the consumer piece which will be the code that reads rabbitMQ. Finally I will talk about my personal thoughts on this tech.

  • RabbitMQ Components(slide)
  • *Publisher
  • *Consumer
  • *Connection
  • *Channel
  • *Queue
  • Spin RabbitMQ server with Docker
  • Write a Publisher client NodeJs
  • Write a Consumer client Nodejs
  • My Thoughts about this tech
  • Summary
  • timecodes

    components 2:00

    spin up docker rabbit 8:30

    Write a Publisher client NodeJs 11:00

    Write a consumer client NodeJs 20:30

    my thoughts 33:50

    Source Code: https://github.com/hnasr/javascript_playground/tree/master/rabbitmq

    Example

    Schedule async job

    Exchange

    Queues

    Publisher

    Consumer

    AMQP

    Channel

    Connection

    HTTP

    AMQP

    Uses Channels and Queues

    Multiples channels into one connections

    docker run --name rabbitmq -p 5672:5672 -d rabbitmq

    docker run --name rabbitmq -p 5672:5672 -p 15672:15672 -d rabbitmq:3-management

    HTTP

    fetch("http://localhost:15672/api/vhosts”, {headers: {"Authorization" : `Basic ${btoa('guest:guest')}`}}).then(a=>a.json()).then(console.log)

    fetch("http://localhost:15672/api/channels", {headers: {"Authorization" : `Basic ${btoa('guest:guest')}`}}).then(a=>a.json()).then(console.log)

    fetch("http://localhost:15672/api/queues", {headers: {"Authorization" : `Basic ${btoa('guest:guest')}`}}).then(a=>a.json()).then(console.log)

    https://www.squaremobius.net/amqp.node/channel_api.html#channel_bindExchange

    https://www.rabbitmq.com/tutorials/tutorial-three-javascript.html

    ...more
    View all episodesView all episodes
    Download on the App Store

    The Backend Engineering Show with Hussein NasserBy Hussein Nasser

    • 4.9
    • 4.9
    • 4.9
    • 4.9
    • 4.9

    4.9

    40 ratings


    More shows like The Backend Engineering Show with Hussein Nasser

    View all
    Freakonomics Radio by Freakonomics Radio + Stitcher

    Freakonomics Radio

    32,263 Listeners

    Software Engineering Radio - the podcast for professional software developers by team@se-radio.net (SE-Radio Team)

    Software Engineering Radio - the podcast for professional software developers

    273 Listeners

    Risky Business by Patrick Gray

    Risky Business

    373 Listeners

    Science Vs by Spotify Studios

    Science Vs

    12,166 Listeners

    Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

    Syntax - Tasty Web Development Treats

    990 Listeners

    Darknet Diaries by Jack Rhysider

    Darknet Diaries

    8,110 Listeners

    Practical AI by Practical AI LLC

    Practical AI

    212 Listeners

    Within Reason by Alex J O'Connor

    Within Reason

    1,659 Listeners

    All-In with Chamath, Jason, Sacks & Friedberg by All-In Podcast, LLC

    All-In with Chamath, Jason, Sacks & Friedberg

    10,231 Listeners

    Dwarkesh Podcast by Dwarkesh Patel

    Dwarkesh Podcast

    548 Listeners

    Big Technology Podcast by Alex Kantrowitz

    Big Technology Podcast

    514 Listeners

    Hard Fork by The New York Times

    Hard Fork

    5,544 Listeners

    The AI Daily Brief: Artificial Intelligence News and Analysis by Nathaniel Whittemore

    The AI Daily Brief: Artificial Intelligence News and Analysis

    659 Listeners

    Prof G Markets by Vox Media Podcast Network

    Prof G Markets

    1,471 Listeners

    The Pragmatic Engineer by Gergely Orosz

    The Pragmatic Engineer

    74 Listeners