Messaging

API Apps
Cache for Redis
Web Apps

Solution ideas

This article is a solution idea. If you'd like us to expand the content with more information, such as potential use cases, alternative services, implementation considerations, or pricing guidance, let us know by providing GitHub feedback.

This solution uses Azure Cache for Redis to route real-time messages in publish and subscribe systems. It also scales up web communication frameworks like Azure SignalR Service.

Architecture

Architecture Diagram Download an SVG of this architecture.

Dataflow

  1. The publishers send messages to Azure Cache for Redis.
  2. Azure Cache for Redis stores these messages and manages the delivery to the subscribers.
  3. The subscribers pull messages that they've subscribed to from Azure Cache for Redis.

Components

Key technologies used to implement this architecture:

  • Azure Cache for Redis Azure Cache for Redis is a fully managed, in-memory cache that enables high-performance and scalable architectures. Use it to create cloud or hybrid deployments that handle millions of requests per second at submillisecond latency – all with the configuration, security and availability benefits of a managed service.
  • Azure App Service Azure App Service is an HTTP-based service for hosting web applications, REST APIs, and mobile back ends. You can develop in your favorite language, be it .NET, .NET Core, Java, Ruby, Node.js, PHP, or Python. Applications run and scale with ease on both Windows and Linux-based environments.

Scenario details

This scenario demonstrates how to use Azure Cache for Redis as a message broker to implement a publish/subscribe asynchronous messaging capability. It's ideal for routing real-time messages and scaling up web communication frameworks such as SignalR.