Redis
文章平均质量分 91
以初学者的视角,从第一次听说到深入理解Redis。平均文章质量在90分以上
小皮侠
今天也要努力学习
展开
-
【Redis入门到精通一】什么是Redis?
不仅如此,Redis 还可以将内存的数据利⽤快照和⽇志的形式保存到硬盘上,这样在发⽣类似断电或者机器故障的时候,内存中的数据不会“丢失”。从 Redis 的官⽅公司统计来看,有很多重量级的公司都在使⽤Redis,如国外的 Twitter,Instagram、Stack Overflow、Github 等,国内就更多了,如果单单从体量来统计,新浪微博可以说是全球最⼤的 Redis 使⽤者,除了新浪微博,还有像阿⾥巴巴、腾讯、搜狐、优酷⼟⾖、美团、⼩⽶、唯品会等公司都是 Redis 的使⽤者。原创 2024-09-09 11:54:14 · 898 阅读 · 3 评论 -
【Redis入门到精通二】Redis核心数据类型(String,Hash)详解
Redis操作字符串类型常见的有以下命令set,get,mget,mset,setnx,setxx,incr,incrby,decr,decrby,incrbyfloat,append,getrange,setrange,strlen。下面将按顺序依次介绍用法。hash类型的常见命令有hset,hget,hexists,hdel,hkeys,hvals,hgetall,hmget,hlen,hsetnx,hincrby,hincrbyfloat,hstrlen。数字,可以是整型或者浮点型;原创 2024-09-20 21:00:12 · 1389 阅读 · 0 评论 -
【Redis入门到精通三】Redis核心数据类型(List,Set)详解
操作Set类型的常用命令有:sadd,smembers,sismember,scard,spop,smove,srem,sinter,sinterstore,sunion,sunionstore,sdiff,sdiffstore。操作List类型的常用命令有:lpush,lpushx,rpush,rpushx,lrange,lpop,rpop,lindex,linsert,llen,blpop,brpop。(默认 512 个)时,Redis 会选⽤ intset 来作为集合的内部实现,从⽽减少内存的使⽤。原创 2024-09-20 22:19:39 · 935 阅读 · 3 评论 -
【Redis入门到精通四】Redis核心数据类型(Sorted set,Stream,Bitmap,Bitfield,Geospatial,Hyperloglog)
操作Sorted Set类型的常用命令有:zadd,zcard,zscore,zrank,zrevrank,zrem,zincrby,zrange,zrevrange,zrangebyscore,zrevrangebyscore,zcount,zremrangebyrank,zremrangebyscore,zinterstore,zunionstore。求出给定有序集合中元素的并集并保存进⽬标有序集合中,在合并过程中以元素为单位进⾏合并,元素对应的分数按照不同的聚合⽅式和权重得到新的分数。原创 2024-09-23 15:07:03 · 625 阅读 · 0 评论 -
【Redis入门到精通五】Java如何像使用MySQL一样使用Redis(jedis安装及使用)
之所以客户端和服务器之间能够使用网络通信,是因为开发客户端的人和开发服务器的人都知道协议的细节,能够很好的实现对通信内容的包装和解析。Redis自定义的应用层协议叫做RESP,可以在Redis官方文档查询到,正是因为Redis把自定义的应用层协议公开了出来,我们才能实现自定义的实现与服务器通信的Redis客户端。原创 2024-09-24 17:12:08 · 820 阅读 · 0 评论 -
【Redis入门到精通六】在Spring Boot中集成Redis(含配置和操作演示)
下⽅的 lettuce 系列配置,⽬的是为了⾃动刷新集群的拓扑结构。Spring社区也自定义了一套Redis的客户端,与jedis的操作方式有所差异,Spring中把每个类型的操作都单独封装了起来。1.第一步创建Spring Boot项目,在创建项目时勾选NoSQL中的Spring Data Redis,然后等待项目加载。3.第三步引入StringRedisTemplate实例,便可以通过redisTemplate进行Redis的相关操作了。原创 2024-09-24 18:19:03 · 1531 阅读 · 1 评论 -
【Redis入门到精通七】详解Redis持久化机制(AOF,RDB)
众所周知,Redis的快主要依赖于它的数据是存储在内存当中的,数据存储和提取避免了读写硬盘这一非常耗时的操作,但是如果在运行过程中发生了进程中断,内存中的数据就会丢失,为了解决数据丢失的问题,Redis提供了RDB和AOF两种持久化机制,当Redis重启时可以利用之前持久化的文件实现数据恢复。AOF文件内因为写入的是吗命令的文本文件,随着不断的写入AOF,文件会越来越大,为了解决这个问题,Redis引入了AOF重写机制压缩文件体积。校验:如果 Redis 启动时加载到损坏的 RDB ⽂件会拒绝启动。原创 2024-09-26 22:47:20 · 1057 阅读 · 0 评论 -
【Redis入门到精通八】Redis事务与MySQL事务对比
事务的概念其实就是把一系列操作绑定成一组,让这一组操作能够批量执行,不过在MySQL中有复杂的机制能够保证这一组操作执行并且一定能成功执行,否则就一条也执行不了,但是Redis中的事务就没有这么靠谱,它只负责把操作绑在一起,如果其中有执行失败的操作,事务无法自动回滚。Redis 事务本质上是在服务器上搞了⼀个 "事务队列". 每次客⼾端在事务中进⾏⼀个操作, 都会把命令先发给服务器, 放到 "事务队列" 中(但是并不会立即执行),而是会在真正收到 EXEC 命令之后, 才真正执行队列中的所有操作.原创 2024-09-27 17:28:44 · 736 阅读 · 3 评论 -
【Redis入门到精通九】Redis中的主从复制
主从复制解决的问题:单点问题即单个 redis 节点, 可⽤性不⾼.单个 redis 节点, 性能有限.主从复制的特点:Redis 通过复制功能实现主节点的多个副本。主节点⽤来写, 从节点⽤来读. 这样做可以降低主节点的访问压⼒。复制⽀持多种拓扑结构,可以在适当的场景选择合适的拓扑结构。复制分为全量复制, 部分复制和实时复制。主从节点之间通过心跳机制保证主从节点通信正常和数据⼀致性。主从复制配置的过程:主节点配置不需要改动。从节点在配置⽂件中加⼊slaveof主节点ip。原创 2024-10-03 11:20:44 · 997 阅读 · 6 评论 -
【Redis入门到精通十】Redis哨兵
Redis Sentinel 是 Redis 的高可用实现方案,在实际的⽣产环境中,对提高整个系统的⾼可⽤是⾮常有帮助的,本篇文章⾸先整体梳理主从复制模式下故障处理可能产生的问题,⽽后引出高可用的概念,最后重点分析 Redis Sentinel 的基本架构、优势,以及是如何实现⾼可⽤的。法定票数即哨兵之间通过通信,当足够票数的哨兵都一致认为主节点瘫痪时,哨兵才会开始工作,选举新的主节点,避免哨兵因为网络波动而出现误判的情况。二.从节点可以分担主节点的读压力,实现读写分离。原创 2024-10-09 19:54:34 · 1090 阅读 · 5 评论 -
【Redis入门到精通十一】Redis集群
每个节点, 每秒钟, 都会给⼀些随机的节点发起 ping 包, 而不是全发⼀遍. 这样设定是为了避免在节点很多的时候, ⼼跳包也⾮常多(⽐如有 9 个节点, 如果全发, 就是 9 * 8 有 72 组⼼跳了, 而且这是按照 N^2 这样的级别增⻓的).规则很简单, 就是从 H所在位置, 顺时针往下找, 找到的第⼀个分⽚, 即为该 key 所从属的分片.缺点: ⼀旦需要进行扩容, N 改变了, 原有的映射规则被破坏, 就需要让节点之间的数据相互传输, 重新排列, 以满足新的映射规则。原创 2024-10-10 21:40:01 · 809 阅读 · 1 评论 -
【Redis十二】Redis的典型应用(缓存和分布式锁)
缓存 (cache) 是计算机中的⼀个经典的概念. 在很多场景中都会涉及到。核⼼思路就是把⼀些常⽤的数据放到触⼿可及(访问速度更快)的地⽅, ⽅便随时读取。对于计算机硬件来说, 往往访问速度越快的设备, 成本越⾼, 存储空间越⼩.缓存是更快, 但是空间上往往是不⾜的. 因此⼤部分的时候, 缓存只放⼀些 热点数据 (访问频繁的数据),就⾮常有⽤了。原创 2024-10-11 21:15:17 · 2797 阅读 · 13 评论