Redis 缓存
ABP Framework 缓存系统 拓展了 ASP.NET Core 分布式缓存. 因此, 标准 ASP.NET Core 分布式缓存支持的 任何提供程序 都可以在你的应用程序中使用,并且可以像 微软文档 那样进行配置.
不过, ABP为 Redis Cache 还提供了一个集成包: Volo.Abp.Caching.StackExchangeRedis. 为何使用中这个包而不是标准的Microsoft.Extensions.Caching.StackExchangeRedis包有两个原因.
- 它实现
SetManyAsync
和GetManyAsync
方法. 这些都不是 Microsoft 缓存库的标准方法,而是由ABP框架缓存系统添加的. 当你需要通过单个方法调用设置/获取多个缓存项时,它们显著提高了性能. - 它 简化 了 Redis 缓存 配置 (将在下面解释).
Volo.Abp.Caching.StackExchangeRedis 已经使用了 Microsoft.Extensions.Caching.StackExchangeRedis 包,但对其进行了扩展和改进.
安装
如果使用Redis,则此软件包已安装在应用程序启动模板中. 在项目
.csproj
的文件夹中打开命令行窗口并输入命令:
abp add-package Volo.Abp.Caching.StackExchangeRedis
配置
Volo.Abp.Caching.StackExchangeRedis 包自动从IConfiguration
获取Redis配置. 因此,你可以在以下位置设置配置 appsettings.json
:
"Redis": {
"IsEnabled": "true",
"Configuration": "127.0.0.1"
}
设置IsEnabled
为可选的,如果未设置将默认视为true
.
或者,你可以在模块的ConfigureServices方法中配置标准的RedisCacheOptions类:
Configure<RedisCacheOptions>(options =>
{
//...
});