
redis
rennan…
这个作者很懒,什么都没留下…
展开
-
Redis五种数据类型是如何实现的
Redis对象类型简介 Redis共有五种对象的类型,分别是: 类型常量 对象的名称 REDIS_STRING 字符串对象 REDIS_LIST 列表对象 REDIS_HASH 哈希对象 REDIS_SET 集合对象 REDIS_ZSET 有序集合对象 Redis对象底层数据结构 底层数据结构共有八种,如下表所示: 编码常量 编码所对应的底层数据结构 REDIS_ENCODING_INT long 类型的整数 REDIS_ENCODING_EMBSTR转载 2020-06-27 20:07:21 · 554 阅读 · 0 评论 -
Redis的优缺点(为什么要使用Redis)
Redis简介 Redis是一个开源的使用ANSI 由C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API,典型的 NoSQL 数据库。 Redis的优点 丰富的数据类型 Redis 的出色之处不仅仅是性能,Redis 最大的魅力是支持保存多种数据结构,redis支持set,zset,list,hash,string这五种数据类型,此外单个 Value 的最大限制是1GB,不像 Memcached只能保存1MB的数据,因此Redis可以用来实现原创 2020-06-26 12:53:25 · 3100 阅读 · 1 评论 -
redis的数据淘汰机制及如何实现的
什么时候会触发数据淘汰机制 当 Redis 内存超出物理内存限制时,内存的数据会开始和磁盘产生频繁的交换 (swap)。交换会让 Redis 的性能急剧下降,对于访问量比较频繁的 Redis 来说,这样龟速的存取效率基本上等于不可用。 在生产环境中我们是不允许 Redis 出现交换行为的,为了限制最大使用内存,Redis 提供了配置参数 maxmemory 来限制内存超出期望大小。 当实际内存超出 maxmemory 时,Redis 提供了几种可选策略 (maxmemory-policy) 来让用户自己决原创 2020-06-15 22:11:13 · 874 阅读 · 0 评论 -
redis中持久化的实现(AOF,RDB),及他们的区别及优缺点
1、redis的持久化 由于Redis的数据都存放在内存中,如果没有配置持久化,redis重启后数据就全丢失了,于是需要开启redis的持久化功能,将数据保存到磁盘上,当redis重启后,可以从磁盘中恢复数据。redis提供两种方式进行持久化,一种是RDB持久化(原理是将Reids在内存中的数据库记录定时dump到磁盘上的RDB持久化),另外一种是AOF(append only file)持久化(原理是将Reids的操作日志以追加的方式写入文件)。 RDB和AOF的区别 RDB RDB持久化是指在指定的时间原创 2020-06-15 21:46:52 · 450 阅读 · 0 评论 -
redis之Sentinel的实现原理:三个定时监控任务、主观下线和客观下线、领导者节点选举、故障转移
1、三个定时监控任务 每隔10s sentinel每隔10s向所有主从节点发送info命令 作用 1、发现最新加入的slave节点,并且确认主从关系 2、还可以通过info命令来获取该节点的最新信息。 每隔2s master节点上有一个发布订阅的频道(sentinel:hello),Sentinel节点每隔2s发送该Sentinel节点对于主节点的判断以及当前Sentinel节点的信息 ,同时每个Sentinel节点也会订阅该频道 作用 1、因为Sentinel他到__sentinel__:hello上会保原创 2020-06-11 22:50:51 · 796 阅读 · 1 评论 -
大白话redis的雪崩,击穿和穿透及解决方案
redis的雪崩 原因 大量请求突然因为缓存层的失效而进入了MySQL,导致MySQL数据库的崩溃 案例 本来你的redis缓存层在请求高峰期的时候可以抗下几千个请求,但是突然有一天你的redis服务器宕机或者redis出现问题,这时候缓存层的突然失效,导致了大量的请求进入mysql,从而导致了MySQL服务器的崩溃,想要重启,但因为缓存层的失效,启动了也会被新的流量打死 解决方案 1,配置redis的主从+哨兵 2,可以对数据的请求进行限流 3,本地ehcache 缓存 4,redis的持久化,重启可以快原创 2020-05-29 09:20:14 · 218 阅读 · 0 评论 -
阿里云contos7云服务器下配置redis哨兵
1. 安装redis https://editor.youkuaiyun.com/md/?articleId=106026472 2. 配置redis主从 详情见:https://blog.youkuaiyun.com/qq_45632139/article/details/106051267 3. 配置redis哨兵 https://blog.youkuaiyun.com/qq_45632139/article/details/106026472 3.1 什么是哨兵 1.哨兵的作用 Redis-Sentinel是用于管理Redis集群,该原创 2020-05-13 14:14:24 · 250 阅读 · 0 评论 -
阿里云服务器contOs7配置redis主从完整教程
如果还未安装redis详情见此博客: https://blog.youkuaiyun.com/qq_45632139/article/details/106026472 主:127.0.0.1 从:127.0.0.2 配置redis主从其实非常简单只需要修改 主和从redis.conf配置文件: 主服务器: 首先查看redis服务状态 ps -ef | grep redis 显示如下 则代表启动中 root 5426 1 0 Apr24 ? 00:15:42 redis-原创 2020-05-11 13:59:11 · 304 阅读 · 1 评论 -
redis报错WRONGTYPE Operation against a key holding the wrong kind of value
redis报错:redis.clients.jedis.exceptions.JedisDataException: WRONGTYPE Operation against a key holding the wrong kind of value 错误原因:redis库中有相同key值但不同类型的数据。 解决办法: 删除数据库中的该key 转自:https://blog.youkuaiyun.com/stevejobson/article/details/78285436 ...原创 2020-05-10 14:17:50 · 325 阅读 · 0 评论 -
阿里云ContOs服务器安装redis并配置远程连接
1、准备工作(安装gcc依赖) yum install gcc-c++ 2、下载并解压源码包 cd /usr/local # wget http://download.redis.io/releases/redis-4.0.10.tar.gz # tar -zxvf redis-4.0.10.tar.gz 3、编译安装 # cd redis-4.0.10 # make MALLOC=libc ## 将/usr/local/redis-4.0.10/src目录下二进制文件安装到/usr/local.原创 2020-05-09 19:48:14 · 210 阅读 · 0 评论 -
redis五种数据类型的基本方法
String #增加一个key为ay_key的值 127.0.0.1:6379> set ay_key "ay" OK #查询ay_key的值 127.0.0.1:6379> get ay_key "ay" #修改ay_key的值 127.0.0.1:6379> set ay_key "new_ay" OK 127.0.0.1:6379> get ay_key "new_ay" #修改ay_key名称 127.0.0.1:6379> rename ay_key new_ay_k原创 2020-05-08 23:16:50 · 190 阅读 · 0 评论