![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Redis
柠檬精爱喝白醋
2020年Java转C#.net
展开
-
Redis 学习笔记(十四)redis缓存穿透和雪崩
缓存穿透缓存穿透:当查询的内容在缓存中没有命中时,会向数据层发送查询命令,当存在大量的查询命令穿过缓存到达数据库时,会导致数据库崩溃,引发服务器的死机。应对方案:使用布隆过滤器(bloomfilter):布隆过滤器是一种数据结构,将所有可能会查询的参数以hash形式存储,在控制层中进行参数校验,不符合就会丢弃此查询命令,不会向下传递。创建缓存空对象:当用户查询内容在redis中没有命中,则在redis中创建这个空对象,以防止用户无限次的穿过缓存去查询数据库。对于这些会占用大量内存空间的空对象,可以原创 2020-10-24 16:04:45 · 109 阅读 · 0 评论 -
Redis 学习笔记(十三)redis哨兵模式
哨兵模式概述Redis的哨兵模式用于管理 Redis 集群,负责以下三个任务:监控(Monitoring): 哨兵定期检查redis服务器是否运作正常。提醒(Notification):当被监控的某个 Redis出现问题时, 哨兵可以通过 API 向管理员或者其他应用程序发送通知。自动故障迁移(Automatic failover):当一个主机不能正常工作时,哨兵会开始一次自动故障迁移操作,它会将失效主机r的其中一个从机升级为新的主机, 并让其他从机改为认主新的主机。一般使用多哨兵原创 2020-10-24 14:59:18 · 93 阅读 · 0 评论 -
Redis 学习笔记(十二)redis主从复制
主从复制:将主机redis中的数据复制到其他从机redis中,数据复制是单向的,只能由主节点到从节点。主机以写数据为主,从机以读数据为主,这样可以减缓服务器的压力。实现主从复制需要搭建redis集群,redis集群至少需要三台redis服务器。搭建环境时,只需要配置从机,不需要配置主机,(从机认主即可):主从配置查看当前redis库信息 info replication在从机中进行认主设置 slaveof <masterIP> <masterPort> #原创 2020-10-23 13:49:10 · 122 阅读 · 0 评论 -
Redis 学习笔记(十一)redis订阅和发布
redis 发布订阅(pub/sub)是一种信息通信模式。发送者(pub)发送消息,订阅者(sub)接收消息。redis订阅频道(channel)需要先订阅频道,再向频道发送消息。redis 发布订阅的原理:通过 subscribe 命令订阅频道后,redis-server 中将维护一个字典,字典的键是频道名,值是一个链表,链表中保存了所有订阅了该频道的客户端(subscribe 命令就是将客户端添加到指定频道的链表中)。订阅频道命令 subscribe <channel> ...原创 2020-10-23 11:08:06 · 189 阅读 · 0 评论 -
Redis 学习笔记(十)redis持久化
关于持久化的相关配置已在上一章笔记中介绍了,本章不再赘述。一、redis持久化概述由于Redis的数据都存放在内存中,如果没有配置持久化,redis重启后数据就全丢失了,于是需要开启redis的持久化功能,将数据保存到磁盘上,当redis重启后,可以从磁盘中恢复数据。redis提供两种方式进行持久化:一种是RDB持久化(原理是将Reids在内存中的数据库记录定时dump到磁盘上的RDB持久化)一种是AOF(append only file)持久化(原理是将Reids的操作日志以追加的方式写入文件原创 2020-10-22 15:59:26 · 46 阅读 · 0 评论 -
Redis 学习笔记(九)redis.conf配置文件解读
网络bind 127.0.0.1 #绑定redis服务器地址protected-mode yes #保护模式port 6379 #redis端口号设置通用 Generaldaemonize no #以守护进程方式运行,默认为no,在部署时需要改为yespidfile /var/run/redis_6379.pid #若上面配置改为yes,需指定一个pid文件logleve原创 2020-10-22 14:54:18 · 86 阅读 · 0 评论 -
Redis 学习笔记(八)事务
更多的数据类型命令可在redis中文官网中查找和学习,下面学习redis的事务。一、redis事务概述原子性是指一个操作或者多个操作,要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行。事务是指一系列操作,这些操作要么同时成功,要么同时失败,它是一种原子操作。事务没有隔离级别的概念。redis的单条命令都具有原子性,但是不保证多条命令的原子性!想要让redis客户端的多条命令可以不被其他的客户端打断,可以使用事务:执行事务时,所有的命令都会被顺序地一次性执行,且不会被其他客户端打断。但原创 2020-10-22 10:14:43 · 107 阅读 · 0 评论 -
Redis 学习笔记(七)特殊数据类型
在redis的特殊数据类型中选出三种数据类型进行分析:geospatialhyperloglogbitmapsgeospatial 数据类型(地理位置)geo只有六个命令: geoadd <key> <经度> <纬度> <名称>... #将指定的地理空间位置(经度、纬度、名称)添加到指定的key中 #例:geoadd China:city 116.4 39.9 beijing 121.47 31.23 shanghai ge原创 2020-10-21 15:58:01 · 105 阅读 · 0 评论 -
Redis 学习笔记(六)五大基本数据类型zset
redis的基本数据类型为:stringlistsethashzsetzset数据类型(sorted sets 有序集合)zset的命令都以"z"开头: zadd <zset> [XX/NX] <score> <member>... #向有序集合zset中添加成员: #当添加XX选项时,表示只更新成员,不添加新成员;原创 2020-10-21 11:32:25 · 104 阅读 · 0 评论 -
Redis 学习笔记(五)五大基本数据类型hash
redis的基本数据类型为:stringlistsethashzsethash数据类型(相当于Map集合)hash的本质和string类型没有太大区别。hash命令以"h"开头: hset <hash> <key> <value> #在hash中创建字段key,设置字段值value hsetnx <hash> <key> <value> #当hash中没有key字段时正常创建;当hash中存在key字原创 2020-10-21 09:20:29 · 87 阅读 · 0 评论 -
Redis 学习笔记(四)五大基本数据类型set
redis的基本数据类型为:stringlistsethashzsetset数据类型(集合)值是无序的不可重复的在redis中,set命令都以"s"开头: sadd <set> <value>... #向set中添加元素 smembers <set> #获取set中的所有元素 sismember <set> <value> #判断set中是否存在value元素 scard <se原创 2020-10-20 15:43:51 · 122 阅读 · 0 评论 -
Redis 学习笔记(三)五大基本数据类型List
redis的基本数据类型为:stringlistsethashzsetList数据类型(列表)在redis中,可以将列表当成栈(先进后出)、队列(先进先出)和阻塞队列(一个线程往列表中放消息,另一个线程从列表中取消息。当队列为空:取消息线程被阻塞;当队列中满了:放消息线程被阻塞)。所有的list命令都以"L"为开头: lpush <list> <value> #将value插入到list列表头部(从左侧添加);当list不存在时先创建列表 rpush原创 2020-10-20 14:31:49 · 2154 阅读 · 0 评论 -
Redis 学习笔记(二)五大基本数据类型string
redis的基本数据类型为:stringlistsethashzsetstring数据类型命令: set <key> <value> #设置键值对 setnx <key> <value> #若key不存在则正常创建;若key存在则无法创建,不会替换原键值对 setex <key> <seconds> <value> #设置键值对,并设置key的过原创 2020-10-19 16:24:39 · 64 阅读 · 0 评论 -
Redis 学习笔记(一) 概述和部署
上周跟着B站的UP主 “狂神说JAVA” 学习了一下Redis,总结一下笔记。一、NoSQL概述NoSQL意为 Not Only SQL ,泛指非关系型数据库。非关系型数据库存储方式可分为:键值对存储列存储文档存储 (BSON)图形关系存储(社交关系)目前常用的非关系型数据库有:文档型数据库 : MongoDB分布式文件系统: FastDFS、Hadoop(HDFS)关键字搜索 : solr、elasticsearch内存数据库 : Redis、Memache、Tair.原创 2020-10-19 14:59:16 · 102 阅读 · 0 评论