Redis
文章平均质量分 84
Redis
王义凯_Rick
如果对你有帮助,就请点个赞吧~
展开
-
Redis系列(二十)、缓存穿透、击穿、雪崩、预热、更新、降级
Redis是高性能的分布式内存数据库,对于内存数据库经常会出现下面几种情况,也经常会出现在Redis面试题中:缓存穿透、缓存击穿、缓存雪崩、缓存预热、缓存更新、缓存降级。本篇分别介绍这些概念以及处理方案。原创 2020-07-10 17:06:48 · 5945 阅读 · 6 评论 -
Redis系列(十九)、布隆过滤器(Bloom Filter)
有没有想过,如果在redis内判断某个值是否存在,使用什么方式最快?使用Set的话当体量大的时候不仅查询慢,而且还占用非常大的空间,本篇就介绍一个即快速又节约空间的方式,使用布隆过滤器来判断某个值是否在集合内。原创 2020-07-10 01:53:53 · 4341 阅读 · 1 评论 -
Redis系列(十八)、Redis中的管道pipeline操作(Python)
Redis默认每次执行请求都会创建和断开一次连接池的操作,如果想执行多条命令的时候会在这件事情上消耗过多的时间,因此我们可以使用Redis的管道来一次性发送多条命令并返回多个结果,节约发送命令和创建连接的时间提升效率。原创 2020-07-09 18:19:31 · 6550 阅读 · 0 评论 -
Redis系列(十七)、Redis中的内存淘汰策略和过期删除策略
我们知道Redis是分布式内存数据库,基于内存运行,可是有没有想过比较好的服务器内存也不过几百G,能存多少数据呢,当内存占用满了之后该怎么办呢?Redis的内存是否可以设置限制? 过期的key是怎么从内存中删除的?不要怕,本篇我们一起来看一下Redis的内存淘汰策略是如何释放内存的。原创 2020-07-07 21:25:37 · 15148 阅读 · 4 评论 -
Redis系列(十六)、Redis6新特性之IO多线程
终于,Redis的多线程版本横空出世,大大提高了QPS和TPS,本篇就带大家来看看什么是IO多线程,和我们理解的多线程有什么区别,与Memcached的多线程又有什么区别。原创 2020-07-03 18:16:01 · 6687 阅读 · 6 评论 -
可能是北半球最全面的Redis6.x系列文章
什么?你们公司还在用Redis4? 别凹特了,Redis6了解一下!就在前两天(2020-06-30),Redis之父Antirez宣布辞去作为Redis的维护者的职位,他表示自己是为了表达自己而编写代码,而现在却因维护Redis项目而筋疲力尽,缺少了自我表达的机会。Redis6.0是他带给我们的最新的版本,该版本新增了很多社区里一直在呼吁的功能,比如ACL、客户端缓存、IO多线程、集群代理等等。原创 2020-07-02 19:50:59 · 5323 阅读 · 0 评论 -
Redis系列(十五)、Redis6新特性之集群代理(Cluster Proxy)
在之前的文章中介绍了Redis6的集群搭建和原理,我们可以使用dummy和smart客户端连接集群,本篇介绍Redis6新增的一个功能:集群代理。客户端不需要知道集群中的具体节点个数和主从身份,可以直接通过代理访问集群,对于客户端来说通过集群代理访问的集群就和单机的Redis一样,因此也能解决很多集群的使用限制。原创 2020-06-30 15:41:40 · 9934 阅读 · 4 评论 -
Redis系列(十四)、Redis6新特性之RESP3与客户端缓存(Client side caching)
Redis6引入新的RESP3协议,并以此为基础加入了客户端缓存的新特性,在此特性下,大大提高了应用程序的响应速度,并降低了数据库的压力,本篇就带大家来看一下Redis6的新特性:客户端缓存。原创 2020-06-30 09:12:15 · 3144 阅读 · 0 评论 -
Redis系列(十三)、pub/sub发布与订阅(对比List和Kafka)
在前面的文章中或多或少有提到Redis的publish命令,它就是Redis中的发布订阅中的一个命令,本篇就介绍Redis中的发布订阅模式,以及对比使用List实现的消息队列和传统消息队列Kafka的区别。原创 2020-06-28 13:04:02 · 3132 阅读 · 0 评论 -
Redis系列(十二)、Redis6集群搭建及原理(主从、哨兵、集群)
由于单机Redis存储能力受单机限制,以及无法实现读写操作的负载均衡和读写分离,无法保证高可用。本篇就来介绍 Redis 集群搭建方案及实现原理,实现Redis对数据的冗余备份,从而保证数据和服务的高可用。主从复制是哨兵和集群的基石,因此我们循序渐进,由浅入深一层层的将Redis高可用方案抽丝剥茧展示在大家面前。原创 2020-06-28 08:58:44 · 6433 阅读 · 6 评论 -
Redis系列(十一)、Redis6新特性之ACL安全策略(用户权限管理)
好消息!好消息!Redis出权限管理功能了!你还不来看看吗?自从Redis6.0以来,大家呼吁了很久的权限管理功能(ACL[access control list 访问控制列表])终于发布了,通过此功能,我们可以设置不同的用户并对他们授权命令或数据权限。这样我们可以避免有些用户的误操作导致数据丢失或避免数据泄露的安全风险。原创 2020-06-17 18:06:16 · 15856 阅读 · 10 评论 -
Redis系列(十)、详解Redis持久化方式AOF、RDB以及混合持久化
之前介绍Redis特点的时候其中有一条是Redis支持数据持久化,可以将内存中的数据持久化到磁盘中,重启的时候再次加载使用。Redis4之前的数据持久化有AOF和RDB两种,从Redis4之后新增了AOF+RDB混合持久化的方式,本篇就Redis的三种数据持久化的方式进行详细介绍以及他们的场景和区别。原创 2020-06-16 18:31:36 · 5201 阅读 · 2 评论 -
Redis系列(九)、Redis的“事务”及Lua脚本操作
大家都知道在RDBMS中有事务操作,同样在Redis中也是支持"事务"的,只是redis支持的是弱事务性,跟我们平时理解上有些不太一样,下面来看看有哪些不一样。同时我们可以通过lua脚本实现高并发场景下的事务操作。原创 2020-06-16 10:51:08 · 5316 阅读 · 2 评论 -
Redis系列(八)、常用服务器命令
文末有彩蛋~ 前面介绍了Redis的五种数据类型以及键命令,本篇介绍一些常用的Redis服务器命令,Redis 服务器命令主要是用于管理 redis 服务。原创 2020-06-15 15:43:09 · 2066 阅读 · 0 评论 -
Redis系列(七)、常用key命令
前面介绍了在命令行模式下操作Redis的五种数据类型及应用,本篇介绍一些常用的Redis键命令,Redis 键命令用于管理 redis 的键。原创 2020-06-15 13:23:12 · 9951 阅读 · 0 评论 -
Redis系列(六)、数据类型之有序集合ZSet(sorted_set)
Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。常应用于排行榜,分数排名等场景。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。有序集合的成员是唯一的,但分数(score)却可以重复。集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。 集合中最大的成员数为 2^32 - 1 (4294967295, 每个集合可存储40多亿个成员)。原创 2020-06-12 15:50:09 · 2000 阅读 · 0 评论 -
Redis系列(五)、数据类型之无序集合Set
Redis 的 Set 是 string 类型的无序集合。常用于抽奖,打标签,共同好友等场景。集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。集合中最大的成员数为 232- 1 (4294967295, 每个集合可存储40多亿个成员)。原创 2020-06-11 15:07:26 · 1796 阅读 · 0 评论 -
Redis系列(四)、数据类型之列表List
Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)一个列表最多可以包含 2^32 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。因此也有项目直接使用redis做消息队列,我们之前介绍filebeat+logstash+redis的时候也使用redis存储filebeat采集的日志进redis的列表类型中,由logstash从其中消费,传送门。原创 2020-06-10 18:51:13 · 2195 阅读 · 0 评论 -
Redis系列(三)、数据类型之哈希Hash
哈希类型是指键值对里的value本身存储的也是一个个的KV键值对,类似于python中的dict和java中的map集合。hash_value={{field1,value1},...{fieldN,valueN}}原创 2020-06-10 11:54:20 · 5431 阅读 · 0 评论 -
Redis系列(二)、数据类型之字符串String
Redis的String类型可以是字符串(简单的字符串、复杂的字符串(例如JSON、XML))、数字(整数、浮点数),甚至是二进制(图片、音频、视频),但是值最大不能超过512MB;原创 2020-06-10 00:48:16 · 2900 阅读 · 0 评论 -
Redis系列(一)、CentOS7下安装Redis6.0.3稳定版
Redis,全称Remote Dictionary Server(远程字典服务器) ,全开源基于C语言开发,是高性能的(key/value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,是当前最热门的NoSQL数据库之一,也被人们称为数据结构服务器。原创 2020-05-24 17:12:19 · 8634 阅读 · 11 评论