Belajar RabbitMQ (message broker dan queue system berbasis AMQP) dari dasar hingga production-grade: setup environment, sejarah & arsitektur, instalasi, producers & consumers, work queues, exchanges & routing patterns, advanced routing dengan topics, RPC pattern, message properties, queue features & dead letter exchanges, TTL & queue expiration, virtual hosts, flow control, user management & authentication, authorization, TLS/SSL, clustering & high availability dengan quorum queues, streams, performance tuning, monitoring & alerting, federation & shovel, multi-protocol MQTT/STOMP/WebSockets, Docker & Kubernetes deployment, CI/CD & GitOps, backup & disaster recovery, hingga production deployment & best practices dengan total 33 episode.
Sebelum menyentuh RabbitMQ, kalian perlu menguasai konsep client-server, networking dasar, pemrograman asynchronous, dan serialisasi data. Di episode ini kalian juga menyiapkan environment lokal, menginstall RabbitMQ beserta Erlang/OTP, dan memverifikasi instalasi pertama.

Message broker lahir dari kebutuhan memisahkan layanan yang saling bergantung. Di episode ini kalian mempelajari evolusi messaging dari komunikasi langsung hingga message queuing, sejarah protokol AMQP dan RabbitMQ, serta perbandingannya dengan Kafka, Redis Pub/Sub, dan SQS.

Di episode ini kalian mempelajari seluruh kosakata inti RabbitMQ: producer, consumer, queue, exchange, binding, virtual host, connection, dan channel. Selanjutnya kalian membedah arsitektur Erlang VM serta alur perjalanan pesan dari publish hingga di-consume.

Saatnya menjalankan RabbitMQ yang sebenarnya. Di episode ini kalian menginstall RabbitMQ lewat package manager dan Docker, mengaktifkan Management Plugin, membuat admin user pertama, serta menjelajahi Management UI dan alat baris perintah rabbitmqctl untuk memastikan node sehat.

Saatnya menulis kode pertama dengan RabbitMQ. Di episode ini kalian membuat producer dan consumer sederhana memakai Python pika, Node.js amqplib, dan Go amqp091-go, lalu mempelajari best practices pengelolaan connection, channel, heartbeat, dan graceful shutdown.

Work queue adalah pola untuk mendistribusikan task berat ke banyak worker. Di episode ini kalian mempelajari round-robin dispatching, manual acknowledgment dengan Basic.Ack dan Basic.Nack, durability pesan, serta fair dispatch memakai prefetch count agar worker tidak kewalahan.

Exchange adalah router yang menentukan ke mana pesan pergi. Di episode ini kalian mempelajari lima tipe exchange: direct, fanout, topic, headers, dan default, beserta routing key, binding key, exchange-to-exchange binding, alternate exchanges, dan implementasi pola publish/subscribe.

Topic exchange membuka routing berbasis pola dengan wildcard. Di episode ini kalian menguasai aturan bintang dan pagar, merancang hierarki topik untuk routing log berdasarkan severity dan modul, serta mengenal headers exchange dengan aturan x-match all dan any.

Tidak semua komunikasi bisa asinkron penuh. Di episode ini kalian membangun request-reply pattern di atas RabbitMQ dengan correlation id dan reply-to queue, mengenal fitur Direct Reply-To, serta memahami kapan sebaiknya tidak memakai pola RPC di RabbitMQ.

Pesan RabbitMQ membawa lebih dari sekadar body. Di episode ini kalian mempelajari seluruh standard properties AMQP seperti delivery_mode, priority, expiration, dan correlation_id, menambahkan custom headers untuk metadata, serta strategi menangani pesan berukuran besar dengan chunking dan kompresi.
