StackExchange.Redis操作redis(net core支持)
电脑版发表于:2018/12/9 20:40
官方git开源地址
https://github.com/StackExchange/StackExchange.Redis
官方文档
在docs里边都是官方的文档

通过nuget命令下载StackExchange.Redis(net framework,net core都支持)
Install-Package StackExchange.Redis -Version 2.0.519
最基本的连接与获取字符串操作
static void Main(string[] args)
{
//配置连接
var conn = ConnectionMultiplexer.Connect("localhost");
//获取连接
IDatabase idb = conn.GetDatabase();
//获取字符串
string city = idb.StringGet("city");
Console.WriteLine(city);
Console.ReadLine();
} localhost默认表示本机,端口为6379
也可以指定服务器与端口
通过 服务器:端口的格式
var conn = ConnectionMultiplexer.Connect("xx.205.xx.xx:6379");
指定Redis的连接密码
直接后面接密码就好了
var conn = ConnectionMultiplexer.Connect("69.xx.210.2xx:6379,password=密码");
配置Redis主从模式

这种方式当主服务挂掉后,依然可以进行读取。
但是不能进行写入。如果进行写入会报错
(error) READONLY You can't write against a read only slave.
因为重节点,只能读取确不能写入。这个时候就需要配置哨兵来监控是否有节点挂掉了
当然连接redis的配置也可以使用redis配置类进行
这样代码可读性和维护性都更好
ConfigurationOptions config = new ConfigurationOptions
{
EndPoints =
{
{"47.105.xx.xx",6379 },
{"39.106.xxx.xxx",6379},
},
KeepAlive = 180,//发送消息以帮助保持套接字活动的时间(秒)(默认时间60s)
Password = "密码"
};
//配置连接
var conn = ConnectionMultiplexer.Connect(config);