随笔分类 -  Redis

摘要:分布式锁 1)阻塞锁: 尝试在redis中创建一个字符串结构缓存,方法传入的key,value为锁的过期时间timeout的时间戳。 若redis中没有这个key,则创建成功(即抢到锁),然后立即返回。 若已经有这个key,则先watch,然后校验value中的时间戳是否已经超过当前时间。 若已超过 阅读全文
posted @ 2020-08-25 11:53 蜗牛的希望 阅读(165) 评论(0) 推荐(0)
摘要:持久化 快照的方式(RDB) 文件追加方式(AOF) 快照形式: save和bgsave能快速的备份数据。但是。。。。。。。。。。, Save命令:将内存数据镜像保存为rdb文件,由于redis是单线程模型,期间会阻塞redis服务进程,redis服务不再处理任何指令,直到rdb文件创建完成为止。 阅读全文
posted @ 2020-08-25 11:52 蜗牛的希望 阅读(122) 评论(0) 推荐(0)
摘要:Redis事务 原子性:就是最小的单位 一致性:好多命令,要么全部执行成功,要么全部执行失败 隔离性:一个会话和另一个会话之间是互相隔离的 持久性:执行了就执行了,数据保存在硬盘上 典型例子:银行转账,A给B转账100万,首先要A的账户减去100万,然后B的账户增加100万,如果中间断了那就出问题了 阅读全文
posted @ 2020-08-24 21:01 蜗牛的希望 阅读(96) 评论(0) 推荐(0)
摘要:发布订阅,简单场景下的发布订阅完全可以使用。 可以简单的理解,将一个公众号视为发布者,关注公众号的人视作订阅者,公众号发布一条文章或者消息,凡事订阅公众号的都可以收到消息。一个人可以订阅多个公众号,一个公众号可以被多个人订阅。 //创建一个公众号--创建一个主题 Console.WriteLine( 阅读全文
posted @ 2020-08-24 15:15 蜗牛的希望 阅读(183) 评论(0) 推荐(0)
摘要:3)Set,可以去重的、无序的集合。可以取交集、并集。zset(sorted set),有序的、去重的集合,排序不是根据value排序,而是根据score排序。 using (RedisClient client = new RedisClient("127.0.0.1", 6379, "12345 阅读全文
posted @ 2020-08-23 23:49 蜗牛的希望 阅读(136) 评论(0) 推荐(0)
摘要:2)hash类型,上代码 using (RedisClient client = new RedisClient("127.0.0.1", 6379, "12345", 10)) { //删除当前数据库中的所有Key 默认删除的是db0 client.FlushDb(); //删除所有数据库中的ke 阅读全文
posted @ 2020-08-21 23:30 蜗牛的希望 阅读(138) 评论(0) 推荐(0)
摘要:Redis之品鉴之旅(一) 好知识就如好酒,需要我们坐下来,静静的慢慢的去品鉴。Redis作为主流nosql数据库,在提升性能的方面是不可或缺的。下面就拿好小板凳,我们慢慢的来一一品鉴。 1)redis号称是大数据高并发的利器,那么到底什么是redis? redis是nosql(not only s 阅读全文
posted @ 2020-08-20 23:16 蜗牛的希望 阅读(169) 评论(0) 推荐(1)