Tutorial: How to Build Apps using Redis Streams

Redis Streams is a brand-new data structure that’s available in Redis 5.0. It enables you to use Redis Enterprise as a high-speed, in-memory, streaming database. Redis Streams can be used to collect and distribute data in many solutions in AI, IoT, fraud detection, messaging, and so on.

With Redis Streams, you can:

  • Collect large volumes of data arriving in high velocity (the only bottleneck is your network I/O);
  • Create a data channel between many producers and many consumers;
  • Effectively manage your consumption of data even when producers
    and consumers don’t operate at the same rate;
  • Persist data when your consumers are offline or disconnected;
  • Communicate between producers and consumers asynchronously;
  • Scale your number of consumers;
  • Implement transaction-like data safety when consumers fail in the
    midst of consuming data and
  • Use your main memory efficiently.

In this tutorial, you will learn not only how Redis Streams works, but also how to build a sample application that uses Redis Streams. The tutorial is organized into three chapters:

  1. How to use Redis Streams: In this chapter, you’ll explore how you can add data to a stream, and how you can read that data (all at once, asynchronously, as it arrives, etc.) to satisfy different consumer use cases.
  2. How to use consumer groups in Redis Streams: A consumer group is a way to split a stream of messages among multiple clients to speed up processing or lighten the load for slower consumers; its aim is to scale out your data consumption process. In this chapter, you will learn how to use consumer groups to distribute your data load, and how to recover from failures.
  3. How to build a Redis Streams application: In this chapter, you will read about the design components of a Redis Streams application. The chapter also explains how to run and test your application and how to verify your data.

Download the tutorial today and learn how to build a high-speed, robust application using Redis Streams.