这是关于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,再取一次值看看:
嗯,也是这个值。
今天先到这,公众号的文章,写短点,不耽误时间,争取天天更新。
领取专属 10元无门槛券
私享最新 技术干货