![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
redis
唯一本尊
真正的勇士敢于直面惨淡的人生
展开
-
redis位图
使用场景 用于统计YES/NO的场景,例如某用户某月的活跃日数,某用户某月的签到次数等。简单说明首先bitMap不是一种新的数据类型,它在redis存储数据采用的数据类型是String,对应的有多种操作命令。setbit、getbit、bitcount、bitpos四种常用指令存疑问题如果要渲染某月的签到日期表,那么如何把读取(get)的数据变成二进制的ASCII码呢?...原创 2019-10-21 23:59:58 · 113 阅读 · 0 评论 -
redis 分布式锁
出现场景 当多个服务器使用同一个redis缓存时会出现并发问题,分布式锁就是为解决这种问题而出现的。第一版设计解决方案 redis也是数据库,那采取和数据库一样的操作加锁(setnx)就能阻止并发,然后处理完成再释放锁(del)即可。出现问题 假设运行过程中出现异常,没到解锁那一步,那redis就会一直处于死锁状态。第二版设计解决方案 针对上述出现的死锁问题,给锁...原创 2019-10-21 23:30:35 · 103 阅读 · 0 评论 -
Redis基础数据
string扩容原理类似java的list,低于1M时内存翻倍,大于1M时,每次增长1M2.8版本以后的set命令能设置超时,格式:SET key value [EX seconds] [PX milliseconds] [NX|XX];其中key代表变量名,value代表变量值,EX 和PX后面的都是过期时间,EX的单位是秒,PX是毫秒。NX表示键不存在时才设值,XX则表示键存在时才设值。...原创 2019-10-21 23:07:34 · 142 阅读 · 0 评论 -
redis本地安装拉通一条龙
安装虚拟机VMWare,首先去官网下载一个安装包,这里的是最新的15.0版本的vmware_workstation_pro。基本按照默认安装都行,也可以随便百度教程。查询找个密钥激活即可。进行Linux系统安装,本人安装的是centos8。安装centos下载完成之后参考centos安装教程,这里网络类型个人选择的NAT,不是桥接网络不行,而是本人目前使用的是NAT这种网络类型。...原创 2019-10-20 17:20:10 · 415 阅读 · 0 评论 -
Redis管道技术(pipeline)及主从同步
Redis管道技术(pipeline) 作用:执行命令简单的,更加快速的发送给服务器; 一个client可以通过一个socket连接发起多个请求命令。每个请求命令发出后client通常会阻塞并等待redis服务处理,redis处理完后请求命令后会将结果通过响应报文返回给client。如果没有pipeline那么redis就会处理完一个请求之后返回响应报文,client再发送下一个请求。...原创 2019-03-01 18:57:05 · 1237 阅读 · 0 评论 -
Redis持久化
RDB(快照)持久化:保存某个时间点的全量数据快照save:阻塞redis的服务器进程,直到RDB文件被创建完毕;(save很少被使用,在主线程中保存快照,会阻塞所有client的请求)bgsave:fork出一个子进程来创建RDB文件,不阻塞服务器进程;自动化触发RDB持久化的方式根据redis.conf配置里的save m n 定时触发(用的是bgsave);主从复制时,主节点...原创 2019-03-01 18:02:48 · 249 阅读 · 1 评论 -
Redis常见问题
为什么redis能这么快10W+QPS(QPS即query per second ,每秒内查询次数)完全基于内存,绝大部分请求是纯粹的内存操作,执行效率高;(单线程,单进程的KV数据库,由C语言编写,将数据储存在内存里面,读写速度都不会受到硬盘IO速度的限制)数据结构简单,对数据操作也简单;(不使用表,不会进行数据关联)采用单线程,单线程也能处理高并发请求,想多核也可启动多实例(只是单线...原创 2019-03-01 17:19:57 · 758 阅读 · 0 评论 -
Redis常用命令——String
redis命令作用set key value设置指定的key的值get key获取指定的key的值getrange key start end获取key中字符串值的子字符串getset key value将key的值设为value,并返回旧valuemget key[key2 …]获取一个(或多个)key的值setex key secon...原创 2019-02-28 16:13:45 · 166 阅读 · 0 评论 -
Redis公用命令
redis常用操作命令作用keys pattern获取所有匹配的key;keys * 则获取所有del key删除指定的keyexists key判断该key是否存在,1存在,0不存在rename key newkeykey重命名expire key设置过期时间,单位:秒expireat key timestamp设置过期时间,但是参数...原创 2019-02-28 15:53:36 · 133 阅读 · 0 评论 -
Redis简单认识
缓存中间件——Memcache和Redis的区别Memcache支持简单数据类型;不支持数据持久化存储;不支持主从数据库;不支持分片(分片即大数据分点存储)。Redis数据类型丰富;支持数据磁盘持久化存储;支持主从;支持分片;Redis基础知识 redis支持五种数据类型:string,list,hash,set , zset(sorted set);Red...原创 2019-02-28 15:51:25 · 120 阅读 · 0 评论 -
Redis常用命令——队列List
redis命令作用rpush key value [value …]从队列的右边入队一个元素或多个元素,往list中插入数据,若不存在该key则先创建,若key对应的值不是list ,则返回一个错误lpush key value [value …]与rpush作用一样,只是这个是从左侧插入数据rpushx key value从队列的右边入队一个元素,仅队列存在...原创 2019-02-28 15:26:12 · 2781 阅读 · 0 评论