Stack Exchange Redis®* 缓存概述
使用 .NET.NET Aspire,可通过多种方式在应用程序中使用缓存。 一种常用选项是使用 Stack Exchange Redis,这是一种高性能数据存储,可用于存储经常访问的数据。 本文概述了 Stack Exchange Redis 缓存以及帮助你在应用程序中使用它的资源的链接。
若要在应用程序中使用多个 Redis 缓存集成,请参阅 教程:通过 .NET.NET Aspire 集成实现缓存。 如果您有兴趣使用 Redis 缓存来处理 Azure,请参阅 教程:如何通过 Redis 缓存将 .NET Aspire 项目部署到 Azure。
Redis 序列化协议 (RESP)
Redis 序列化协议(RESP)是一种二进制安全协议,Redis 用于与客户端通信。 RESP 是一种简单的基于文本的协议,易于实现并高效进行分析。 RESP 用于将命令发送到 Redis 并从 Redis接收响应。 RESP 设计为快速高效,使其非常适合在高性能应用程序中使用。 有关详细信息,请参阅 Redis 序列化协议规范。
除了 Redis 本身,还有两个经过良好维护的 RESP 实现可用于 .NET。
- Garnet:Garnet 是来自 Microsoft Research 的远程缓存存储,可提供强大的性能(吞吐量和延迟)、可伸缩性、存储、恢复、群集分片、密钥迁移和复制功能。 Garnet 可以处理现有的 Redis 客户端。
- Valkey:一种灵活的分布式键值数据存储系统,支持缓存工作负载及其他更复杂的工作负载。
.NET Aspire 使你可以轻松地在应用程序中对 Redis、Garnet 或 Valkey RESP 协议进行建模,并且可以根据要求选择要使用的协议。 所有 .NET AspireRedis 集成都可以与 Redis、Garnet 或 Valkey RESP 协议一起使用。
缓存
缓存是一种用于在内存中存储经常访问的数据的技术。 这有助于缩短从原始源(如数据库或 Web 服务)检索数据所需的时间。 通过减少对原始源发出的请求数,缓存可以显著提高应用程序的性能。 若要访问 RedisIConnectionMultiplexer
对象,请使用 Aspire.StackExchange.Redis
NuGet 包:
分布式缓存
分布式缓存是一种缓存,用于跨多个服务器存储数据。 这允许在应用程序的多个实例之间共享数据,这有助于提高可伸缩性和性能。 分布式缓存可用于存储各种数据,例如会话状态、用户配置文件和经常访问的数据。 若要在应用程序中使用 Redis 分布式缓存(IDistributedCache
接口),请使用 Aspire.StackExchange.Redis.DistributedCaching
NuGet 包:
输出缓存
输出缓存是一种缓存类型,用于存储网页或 API 响应的输出。 这允许直接从缓存提供响应,而不是每次从头开始生成响应。 输出缓存有助于通过减少生成响应所需的时间来提高 Web 应用程序的性能。 若要在应用程序中将声明性 Redis 输出缓存与 OutputCache
属性或 CacheOutput
方法配合使用,请使用 Aspire.StackExchange.Redis.OutputCaching
NuGet 包:
另请参阅
中的 缓存 - ASP.NET Core 中的缓存概述
- 分布式缓存 在 .NET 中
- 在
中 分布式缓存 - 输出缓存中间件在 ASP.NET Core 中
*:Redis 是 Redis 有限公司的注册商标。其中的任何权利都保留给 Redis 有限公司。Microsoft 的任何使用仅用于参考目的,并不表示 Redis 和 Microsoft 之间的任何赞助、认可或关联。返回顶部?