Saved
Software · Systems

RabbitMQ

RabbitMQ isn’t about speed—it’s about certainty in chaos.

Worth your time?4/5Yes.Study the whole thing.What works, what does not, who it is for ↓
9:25in productionCh. 1 · Origins/ 9:25 · ceiling 15 min
4 chapters · 9:25Ceiling 15:00

The brief is written and checked. The video joins this page when it is cut.4 chapters · 1 min read · 9:25 planned

Read the brief

RabbitMQ is an Erlang-based open-source message broker that implements AMQP and extends to STOMP, MQTT, and HTTP via plug-ins. It uses OTP for clustering and failover. Client libraries exist for all major languages. Licensed under MPL. Commercial versions launched November 2020. Developed in 2007 by Rabbit Technologies Ltd., a joint venture between LShift and CohesiveFT.

Chapters & takeaways4
  1. 1:00
    Origins

    Born in 2007 as an AMQP-first broker, it remains open-source under the Mozilla Public License.

  2. 2:34
    Mechanism

    Erlang and OTP power its clustering, failover, and protocol gateways for AMQP, HTTP, STOMP, and MQTT.

  3. 4:28
    Extensibility

    Plug-ins extend it—but core reliability comes from AMQP semantics, not add-ons.

  4. 6:01
    Commercial Layer

    Commercial versions launched in November 2020—not to replace open source, but to fund enterprise features.

1 more chapterFewer chapters
Worth your time?

Yes. Study the whole thing.

4/ 5
What works
  • AMQP routing
  • clustering and failover
  • cross-language client support
  • Shovel and Federation plug-ins
What does not
  • kafka-style streaming
  • serverless deployment
  • built-in schema registry
  • multi-tenancy isolation
Study it if
  • teams needing protocol flexibility
  • organisations committed to Erlang operations
  • engineers building resilient async workflows
Skip it if
  • teams avoiding JVM or Erlang runtimes
  • startups requiring zero-ops messaging
  • use cases demanding native event-time processing
Who should study it, and who should skipHide who it is for
The written brief1 min read

What it is and the problem it solves

RabbitMQ is an open-source message broker. It solves service decoupling and reliable inter-process communication in distributed systems. It ensures messages survive process crashes, network failures, and broker restarts. It lets producers send without knowing who consumes—or even whether anyone does.

How it works

RabbitMQ is a message broker written in Erlang. It routes messages between producers and consumers using exchanges, queues, and bindings. It runs on the Open Telecom Platform for clustering and failover. It supports AMQP by default and adds STOMP, MQTT, and other protocols via plug-ins. Gateways exist for AMQP, HTTP, STOMP, and MQTT.

What works

AMQP routing works reliably: direct, topic, fanout, and headers exchanges route messages predictably. Clustering via Open Telecom Platform delivers automatic failover and queue replication across nodes. The Shovel and Federation plug-ins move messages between brokers. Client libraries exist for all major languages. The Management plug-in provides real-time monitoring and control.

What does not

RabbitMQ does not natively support Kafka-style log-based streaming or exactly-once delivery guarantees across network partitions. It does not offer embedded, serverless, or fully managed operation outside commercial offerings. The core broker has no built-in schema registry, message tracing, or multi-tenancy isolation.

What it changes

RabbitMQ changes how teams decouple services at scale. It enables reliable asynchronous communication across heterogeneous language stacks. It shifts operational responsibility from custom retry logic to declarative routing topologies and durable queues. It makes protocol translation (e.g., MQTT to AMQP) a configuration layer, not a rewrite.

Is it worth your time

Yes—if you need a mature, open-source, protocol-flexible broker with strong clustering and extensibility, and can manage Erlang runtime dependencies. No—if you require zero-configuration deployment, built-in observability beyond the Management plug-in, or native Kubernetes orchestration without commercial layers.

Same field · Software4 of 114
8:56
Jenkins (software)2011Jenkins is an open-source automation server that helps automate building, testing, and deploying software, enabling continuous integration and delivery. It originated as Hudson and was renamed in 2011 following a naming dispute with Oracle. The rename followed a community vote on January 29, 2011. Jenkins runs as a server-based system, either in servlet containers like Apache Tomcat or as a stand-alone web application using Eclipse Jetty. It supports multiple version control tools and build systems. The Pipeline plugin, which enables pipeline-as-code using Groovy, was not enabled by default until version 2 in 2016. Jenkins replaced Hudson in Eclipse in 2017.
10:03
Go (programming language)Robert Griesemer, Rob Pike, Ken Thompson · 2009Go is a statically typed, compiled programming language designed in 2007 by Robert Griesemer, Rob Pike, and Ken Thompson at Google to improve programming productivity for multicore, networked machines and large codebases. It combines static typing and runtime efficiency like C, readability and usability like Python, and high-performance networking and multiprocessing. Publicly announced in November 2009 and released as version 1.0 in March 2012, Go emphasizes simplicity, safety, and developer tooling — especially around concurrency via goroutines and channels, packaging, testing, and deployment — while deliberately omitting features like inheritance, assertions, pointer arithmetic, and implicit type conversions. Its design reflects a focus on the software development process itself rather than just language syntax or semantics.
9:31
GrafanaGrafana LabsGrafana is open-source dashboard software that queries external data sources at render time. It unifies metrics, logs, and traces without storing data itself. Its JSON-based dashboards are versionable and composable. Since 2021, it uses AGPLv3 licensing. It originated from Graphite work at Orbitz and launched in January 2014. Its UI began as a fork of Kibana v3.
9:47
TypeScriptAnders Hejlsberg · 2012TypeScript is a compiler-layered static typing system for JavaScript. It solves scalability problems in large codebases by enabling early error detection and better tooling — without breaking compatibility. Its mechanism is transpilation, not runtime enforcement. Its biggest win is developer velocity in complex projects — proven by the 8–12× speedup in TypeScript 7.0. Its cost is added complexity and no runtime guarantees.
Up next in Technology

REST

Roy Fielding · 10:49

REST is not a web API recipe—it’s a diagnostic lens for why your endpoints break at scale.

10:49