0Pricing
Redis Caching & Messaging (Pub/Sub, Streams) · Lekcja

Trwałość komunikatów w strumieniach

Poznają Państwo, jak Streams zapewnia trwałość komunikatów i ich uporządkowane dostarczanie, odróżniające je od Pub/Sub.

Trwałość komunikatów w strumieniach to bezpłatna lekcja Redis Caching & Messaging (Pub/Sub, Streams) na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Redis Caching & Messaging (Pub/Sub, Streams), a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Redis Caching & Messaging (Pub/Sub, Streams) zawiera 4 lekcji w sumie.

Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.

What is Message Persistence?

In messaging systems, persistence means messages aren't lost, even if the recipient isn't ready to receive them immediately.

Think of it like leaving a note on a fridge instead of shouting it to someone who might not be home. The note stays until it's read.

This is crucial for reliability in many applications.

Streams Retain Your Data

Unlike some other Redis messaging features, Redis Streams are designed to be persistent. Every message (entry) you add to a stream is stored in Redis.

This storage acts like an append-only log. New entries are always added to the end, creating a historical record of events.

Unique Entry IDs for Order

Every entry in a Redis Stream gets a unique Entry ID. This ID is automatically generated by Redis and consists of two parts:

  • Timestamp (milliseconds): The time the entry was added.
  • Sequence Number: A counter for entries added within the same millisecond.

Example: 1678886400000-0

Adding Messages to a Stream

We use the XADD command to add new entries to a stream. The * tells Redis to auto-generate the Entry ID, ensuring uniqueness and proper ordering.

Each entry also holds field-value pairs, like a mini-hash.

XADD mystream * sensor-id 123 temperature 25.5

Reading from a Stream

To read entries from a stream, we use the XREAD command. You specify the stream name and the ID from which to start reading.

Crucially, reading an entry does not remove it from the stream. It stays there for other consumers or for future review.

XREAD COUNT 2 STREAMS mystream 0

Streams vs. Pub/Sub: Persistence

This is where Redis Streams significantly differ from Redis Pub/Sub (Publish/Subscribe).

  • Streams: Messages are persistent. They are stored and can be read multiple times, even by consumers who connect later.
  • Pub/Sub: Messages are ephemeral. They are delivered once to active subscribers and then disappear.

Pub/Sub: Fire and Forget

With Pub/Sub, if no client is subscribed to a channel when a message is published, that message is simply lost. There's no backlog or history.

It's like a live broadcast: if you're not tuned in, you miss it. This is great for real-time notifications where history isn't needed.

Streams Ensure Order

The automatically generated Entry IDs in Redis Streams guarantee strict chronological order. Messages are always stored and retrieved in the exact order they were added.

This is vital for applications where the sequence of events matters, such as logging, auditing, or event sourcing.

When to Use Persistent Streams

Choose Redis Streams when you need:

  • Reliable Event Logs: A complete, ordered history of events.
  • Message Replay: Ability for new consumers to process past events.
  • Auditing & Analytics: Historical data for analysis.
  • Decoupled Microservices: Services can process events at their own pace.

Stream Persistence Check

You're building an application that needs to ensure every event is processed, even if a consumer is temporarily offline. Which Redis feature is best suited for this requirement?

Recap: Streams' Core Strengths

In this lesson, we explored the crucial aspects of Redis Streams: message persistence and guaranteed ordered delivery.

  • Streams store all entries, forming an immutable log.
  • Each entry has a unique, time-based ID ensuring strict order.
  • This persistence and ordering are key differentiators from Redis Pub/Sub, making Streams ideal for reliable event processing and historical data.

Często zadawane pytania

Czy lekcja „Trwałość komunikatów w strumieniach” jest bezpłatna?

Tak — pełny tekst „Trwałość komunikatów w strumieniach” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Redis Caching & Messaging (Pub/Sub, Streams), przejdź na CoddyKit PRO. Kurs Redis Caching & Messaging (Pub/Sub, Streams) zawiera 4 lekcji w sumie.

Co nauczysz się w „Trwałość komunikatów w strumieniach”?

Poznają Państwo, jak Streams zapewnia trwałość komunikatów i ich uporządkowane dostarczanie, odróżniające je od Pub/Sub. Ćwiczysz Redis Caching & Messaging (Pub/Sub, Streams) z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Redis Caching & Messaging (Pub/Sub, Streams)?

Nie wymagamy żadnego doświadczenia. Redis Caching & Messaging (Pub/Sub, Streams) w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „Trwałość komunikatów w strumieniach”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Redis Caching & Messaging (Pub/Sub, Streams)?

Tak. Każda lekcja Redis Caching & Messaging (Pub/Sub, Streams) zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Czym są Redis Streams?
  2. Struktury danych i polecenia Streams
  3. Trwałość komunikatów w strumieniach
  4. Ograniczanie i przycinanie strumieni
← Powrót do Redis Caching & Messaging (Pub/Sub, Streams)