.Net Core使用分布式缓存Redis:基础
一、前言
Redis的介绍网上很多不再赘述。本次环境为net core 2.2,使用的StackExchange.Redis来操作Redis。
二、引用Microsoft.Extensions.Caching.StackExchangeRedis
通过nuget搜索Microsoft.Extensions.Caching.StackExchangeRedis安装,因为依赖项版本的问题我这里用的版本是2.2.5,其本质上也是封装的StackExchange.Redis,但是它实现了net core规定的IDistributedCache接口。
三、添加redis服务
在Startup.cs中的ConfigureServices中添加Redis的服务,会自动进行依赖注入。最简单的如下:
public void ConfigureServices(IServiceCollection services) {//...... //添加redis连接 services.AddStackExchangeRedisCache(options => { options.Configuration = "127.0.0.1:6379"; options.InstanceName = "SampleInstance"; }); //...... }
InstaceName:实例名,加在redis的key前面的。
Configuration:连接redis的链接。
还存在一个优先级更高的ConfigurationOptions,可以配置多个redis服务的连接、密码等。
public void ConfigureServices(IServiceCollection services) {//..... //添加redis连接 services.AddStackExchangeRedisCache(options => { options.ConfigurationOptions = new ConfigurationOptions() { EndPoints = { { "127.0.0.1", 6379 } }, //Password = "123456" }; }); //...... }
具体的属性如下:
配置选项 | 默认 | 含义 |
---|---|---|
AbortOnConnectFail | true (false 在Azure上) | 如果为true,Connect 则在没有服务器可用时将不会创建连接 |
AllowAdmin | false | 启用一系列被认为具有风险的命令 |
ChannelPrefix | null |