.NET分布式缓存Redis从入门到实战
Posted 跟着阿笨一起玩NET
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.NET分布式缓存Redis从入门到实战相关的知识,希望对你有一定的参考价值。
一、课程介绍
今天阿笨给大家带来一堂NOSQL的课程,本期的主角是Redis。希望大家学完本次分享课程后对redis有一个基本的了解和认识,并且熟悉和掌握 Redis在.NET中的使用。本次分享课程包含以下知识点:
1、StackExchange.Redis (简称:SE)驱动在C#中Redis几种数据结构学习和使用。
2、ServiceStack.Redis ( 简称: SS) 驱动在C#中Redis几种数据结构学习和使用。
3、Redis主从集群服务器搭建和学习。
4、在ASP.NET中Redis如何进行Session托管。
5、在C#中如何使用Redis的生产者/消费者。
6、在C#中如何使用Redis的发布/订阅功能。
7、在C#中如何使用Redis的事务、锁。
如果您同样对本次分享《.NET分布式缓存Redis从入门到实战》课程感兴趣的话,那么请跟着阿笨一起学习吧。
废话不多说,直接上干货,我们不生产干货,我们只是干货的搬运工。
二、概念名称含义解释
2.1、什么是Redis?
Redis是一个开源的,使用C语言编写,面向“键/值”对类型数据的分布式NoSQL数据库系统,Redis纯粹为应用而产生,它是一个高性能的key-value数据库,特点是高性能,持久存储,适应高并发的应用场景,并且提供了多种语言的API。
Redis官网:https://redis.io/
多语言客户端驱动下载:https://redis.io/clients
2.2、Redis特点
Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。 与其他 key - value 缓存产品有以下三个特点:
● Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
● Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
● Redis支持数据的备份,即master-slave模式的数据备份。
三、Redis For Windows安装手册
3.1、Redis 在Windows系统上的安装
推荐大家下面几个学习Redis的网站:
Redis中文网:http://www.redis.net.cn/
可以在线编写Redis指令的网站:http://try.redis.io/ http://doc.redisfans.com/
3.2、Redis服务器主从集群的搭建
四、Redis几种数据结构
1、String( 字符串 )
这是最简单的Redis类型。如果只使用这种类型,Redis就像一个可持久化的Memcached服务器。
2、List(列表)
Redis的List是基于双向链表实现的,可以支持反向查找和遍历。
常用案例:聊天系统、社交网络中获取用户最新发表的帖子、简单的消息队列、新闻的分页列表、博客的评论系统。
3、Hash( 哈希 )
Hash是一个String类型的field和value之间的映射表,请见下图,类似于.NET中的Hashtable和Dictionary。主要用来存储对象,可以避免序列化的开销和并发修改控制的问题。
4、Set( 集合 )
Set也是一个列表,不过它的特殊之处在于它是可以自动排重的:当需要存储一个列表数据,而又不希望出现重复的时候,Set是一个很好的选择(比如ID的集合)。并且Set提供了判断某个成员是否在一个Set集合内的接口,这也是List所没有的。
5、Sorted Set(有序集合)
Sorted Set和Set的使用场景类似,区别是Sorted Set会根据提供的score参数来进行自动排序。当你需要一个有序的并且不重复的集合列表,那么就可以选择Sorted Set数据结构。常用案例:游戏中的排行榜。
五、Redis应用场景介绍
由于Redis具有的丰富数据结构,从而赋予了Redis同样也具有丰富的应用场景。比如:
1、会话缓存(Session Cache)
2、全页缓存(FPC)
3、队列
4、排行榜/计数器
5、发布/订阅
六、Redis在.NET中的使用
1、StackExchange.Redis (简称SE)
StackExchange.Redis目前被 StackOverFlow 使用, C#开发的话, 是很好的选择 。
nguet安装指令如下: Install-Package StackExchange.Redis
2、ServiceStack.Redis(简称SS)
Redis推荐的最好的.Net客户端ServiceStack。 ServiceStack.Redis 4.0 已经收费,因此我们使用4.0以下版本。
nuget安装指令如下:
Install-Package ServiceStack.Common -Version 3.9.71
Install-Package ServiceStack.Text -Version 3.9.71;
Install-Package ServiceStack.Redis -Version 3.9.71;
六、Redis实战演练分享
1、StackExchange.Redis (SE)驱动在C#中Redis几种数据结构学习和使用。
2、ServiceStack.Redis (SS) 驱动在C#中Redis几种数据结构学习和使用。
3、 Redis主从集群服务器搭建和学习。
4、在ASP.NET中Redis如何进行Session托管。
5、在C#中如何使用Redis的生产者/消费者。
6、在C#中如何使用Redis的发布/订阅功能。
7、在C#中如何使用Redis的事务、锁。
七、源码在线学习和演示
在线学习
八、总结
由于Redis涉及的知识点比较多,阿笨这次分享课程不能做到面面俱全,关于Redis一些的高级功能只能靠大家在以后工作中不断的总结和完善。本次分享课程遵循一个原则就是:从实战中来,到实战就去。曾经有一位讲师说过:一切只讲理论基础知识,不结合实战演练的课程都是耍流氓!因此还需要靠各位童鞋们不断的自我深入学习和了解Redis相关方面的知识。我们学习一门新技术一定要与实际项目相结合,解决我们的业务问题,达到学以致用,活学活用的目的。最后还是送大家一句话:师父领进门修行在个人,希望大家在学习的道路上一直坚持下去!
不信的话,扫一扫
以上是关于.NET分布式缓存Redis从入门到实战的主要内容,如果未能解决你的问题,请参考以下文章