你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Messaging

Azure 应用服务
用于 Redis 的 Azure 缓存

解决方案构想

本文是一种解决方案构想。 如果你希望我们在内容中扩充更多信息,例如潜在用例、备用服务、实现注意事项或定价指南,请通过提供 GitHub 反馈来告知我们。

此解决方案使用 Azure Cache for Redis 在发布和订阅系统中路由实时消息。 它还纵向扩展 Azure SignalR 服务等 Web 通信框架。

体系结构

Architecture diagram of Azure Cache for Redis as a message broker. Messages arrive at the cache, go to web apps and web APIs, and then go to users.

下载此体系结构的 Visio 文件

数据流

  1. 发布者将消息发送到 Azure Cache for Redis。
  2. Azure Cache for Redis 存储这些消息并负责传递给订阅者。
  3. 订阅者从 Azure Cache for Redis 拉取他们订阅的消息。

组件

  • Azure Cache for Redis 是一种完全托管的内存中缓存,可实现高性能和可缩放的体系结构。 可用于创建云或混合部署,以亚毫秒级延迟每秒处理数百万个请求,所有这些部署都具有托管服务的配置、安全性和可用性优势。 尽管 Azure Cache for Redis 通常用作数据缓存来提高应用程序性能,但你也可将其用作消息中转站。
  • Azure 应用服务是一项基于 HTTP 的服务,用于托管 Web 应用程序、REST API 和移动后端 。 通过应用服务,可使用 .NET、Java、Ruby、Node.js、PHP 或 Python 等偏好的语言进行开发。 在基于 Windows 和 Linux 的环境中,应用程序都可以轻松地运行和缩放。
  • Azure SignalR 服务是一种开源软件库,它提供了一种向 Web 应用实时发送通知的方法。

方案详细信息

此方案演示如何使用 Azure Cache for Redis 作为消息代理来实现发布/订阅异步消息传送功能。 它非常适合路由实时消息。 还可使用此解决方案来纵向扩展 Web 通信框架。 例如,对于部署在单独的 Internet Information Services (IIS) 实例上的 SignalR 应用程序,可使用此解决方案在其中分发消息。

可能的用例

此解决方案适用于使用发布和订阅系统的场景,包括:

  • 连接公司内部业务功能的微服务的中间件。
  • 应用程序日志的收集和分发系统。
  • 座位预订系统。

后续步骤