StackExchange.Redis学习笔记 数据库及密码配置 GetServer函数

Posted 蓝夏

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了StackExchange.Redis学习笔记 数据库及密码配置 GetServer函数相关的知识,希望对你有一定的参考价值。

这一章主要写一些StackExchange.Redis的配置及不太经常用到的函数

数据库连接

下面是我的连接字符串,里面指定了地址,密码,及默认的数据库

Redis启动后默认会分成0-15个数据库,不同的数据库之间键可以重复,StackExchange.Redis的GetDatabase函数提供一个db的可选参数

默认-1实际上是0,可以通过设置连接字符串里的defaultdatabase来指定连接哪个数据库。

指定数据库的操作比较适合来根据业务来划分

Execute

在StackExchange.Redis中直接执行Redis命令可以通过Execute函数,但是对于大部分命令StackExchange.Redis的Database都会提供方法的封装,所以理论上是不需要调用Execute函数的

下面的代码等同于调用IDatabaseStringSetStringGet函数

GetServer

然而有一些比较常用的功能,却无法通过IDabaBase中提供的函数来执行,比如Keys,Flushdb,Scan等。这是为什么呢?

原因在于StackExchange.Redis提供的StringSet,SetAdd等函数是面向数据库集群的,所以实际上添加一个键并不一定是添加在某一台服务器上的。

而FlushDb等操作是针对一个具体的服务器(Server)上的一个数据库的操作。试想如果提供了一个针对整个集群的flushDb操作,万一误删了,后果不可想象。。。

当然StackExchange.Redis也提供了针对Server的相关函数。可以通过ConnectionMultiplexer 实例的GetServer指定具体的Server,这里需要设置具体的服务器地址及端口号。

然后就可以调用其提供的相关函数了

 

 关于Server的服务器地址参数我们也并不需要手写,Connection已经提供了一个GetEndPoints函数,直接调用即可

 

以上是关于StackExchange.Redis学习笔记 数据库及密码配置 GetServer函数的主要内容,如果未能解决你的问题,请参考以下文章

Redis学习笔记~StackExchange.Redis实现分布式Session

StackExchange.Redis学习笔记 事务控制和Batch批量操作

StackExchange.Redis中文使用文档

译StackExchange.Redis官方文档-中文版(序)

StackExchange.Redis.Extensions.Core 源码解读之 Configuration用法

StackExchange.Redis客户端读写主从配置,以及哨兵配置。