Clemens Vasters

What is a Message Queue and when and why would I use it?

How can you build systems that get slow but never crash? Message queues provide a powerful buffer against unpredictable traffic, protecting your services from overload.

What is a Message Queue and when and why would I use it?
#1about 5 minutes

The history and ubiquity of queues in daily life

Real-world examples like postal services, registration lines, and traffic illustrate the fundamental principles of queuing for managing shared resources.

#2about 11 minutes

How queues already power modern computing systems

Your computer's operating system and network stack rely on multiple hidden queues for CPU scheduling, thread pools, and handling network requests.

#3about 5 minutes

Defining a queue as a fundamental data structure

A queue is a first-in, first-out (FIFO) data structure where taking an item removes it, providing exclusive access and an observable length.

#4about 3 minutes

What a message queue is and how it ensures reliability

A message queue uses a durable broker to accept, store, and manage the lifecycle of each message, guaranteeing delivery even if a consumer crashes.

#5about 1 minute

Why Apache Kafka is not a message queue

Apache Kafka functions as an event stream and lacks key queue features like individual message lifecycle management and exclusive consumer acquisition.

#6about 5 minutes

Understanding the structure of a message as an envelope

A message consists of a payload (the data) wrapped in an envelope with metadata that guides its transport and processing without inspecting the content.

#7about 6 minutes

Exploring real-world use cases for message queues

Message queues are critical in industries like finance, industrial automation, and connected vehicles, and can act as secure bridges between isolated networks.

#8about 1 minute

The competing consumers pattern for load balancing

The competing consumers pattern allows multiple worker processes to pull jobs from a single queue, with the queue ensuring each job is assigned exclusively.

#9about 2 minutes

Using queues for load leveling to handle request bursts

Queues act as a buffer to absorb sudden spikes in traffic, preventing system overload and enabling back-end services to process work at a steady pace.

#10about 2 minutes

Handling message failures with dead-letter queues

A dead-letter queue (DLQ) is a built-in error handling mechanism that automatically collects messages that fail processing or expire.

#11about 2 minutes

An overview of the messaging and eventing ecosystem

The messaging landscape includes different broker types like queue brokers, event stream brokers, and event routers, each suited for different use cases.

#12about 1 minute

The claim check pattern for handling large files

The claim check pattern is the recommended approach for large files, where the file is stored separately and a reference to it is passed through the queue.

Related jobs
Jobs that call for the skills explored in this talk.

Featured Partners

From learning to earning

Jobs that call for the skills explored in this talk.