Redis in.NET Core(1)

这是关于Redis的系列文章。

Redis, 简单理解为内存数据库吧,很多有都在用,也有人没用过。

它的应用场景是什么?

主要有Session 缓存,整页缓存,消息队列,排行和计数,Pub/Sub等等。

安装

你可以官网(https://redis.io/download)去下载安装到你的系统。

但是我还是使用docker吧,不然系统的环境太乱了。

docker如果不会的话,请自行到docker官网下载安装。安装好docker后,命令行执行:

如果本地没有image的话,会有个从仓库拉取image的过程,会慢一点。

安装好之后,执行docker ps查看正在运行的容器:

可以看到名为my-redis的容器正在运行中。

测试

使用该命令连接到Redis CLI:docker run -it --link my-redis:redis --rm redis redis-cli -h redis -p 6379

连接成功后效果如图:

Redis是Key-Value数据库,测试一下,为Name这个可以设定一个值,然后取出这个值:

设定值使用set [key] [value],取值使用get [key]。

redis是可以正常工作的,那么继续。

建立.NET Core 项目

Redis支持非常多的语言,当然也支持C#。Redis的C#库有很多,这里有一个列表:https://redis.io/clients#c 。我选择了StackExchange.Redis,因为这是推荐使用的。

建立一个控制台项目,然后从Nuget安装StackExchange.Redis这个库:

使用Redis库

取值

下面我要读取之前存的Name这个key对应的值,这样写:

这里ConnectionMultiplexer这个东西实现了IDisposable,通常情况下我不会使用using这样的语句,因为ConnectionMultiplexer是要被共享和重用的,不应该为每次操作都建立一个新的ConnectionMultiplexer。它是线程安全的。

第一句话,就是连接到Redis服务器,因为我才用的是6379默认端口,就不用写上去了。

第二句话,是返回数据库。当然Redis支持多数据库,这个以后再说,目前就保持简单。

第三句话,就是读取Name这个key对应的值了。

看看输出的结果:

就是之前通过redis cli设置的那个值。

设定值

设定值很简单,就是db.StringSet(key, value)。

再看一下输出的结果:

确实更新了。

回到Redis-CLI,再取一次值看看:

嗯,也是这个值。

今天先到这,公众号的文章,写短点,不耽误时间,争取天天更新。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180929G1R2RS00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励