redis
文章平均质量分 73
全栈编程网
这个作者很懒,什么都没留下…
展开
-
Linux 环境安装 Redis
redis安装包内,src目录下redis-cli就是客户端命令。redis安装好,启动src目录下的redis-server。进入redis目录,安装redis。如下图进入redis交互界面。在Linux中直接下载。如下Redis启动成功。原创 2022-07-28 20:22:35 · 509 阅读 · 0 评论 -
Windows Docker 安装 Redis
Windows Docker 安装Redis原创 2022-05-24 11:18:34 · 989 阅读 · 0 评论 -
Redis学习之六 —— Codis
在大数据高并发场景下,单个 Redis 实例往往会显得捉襟见肘。首先体现在内存上单个 Redis的内存不宜过大,内存太大会导致 rdb (快照)文件过大,进一步导致主从同步时全量同步时间过长,在实例重启恢复时也会消耗很长的数据加载时间。其次体现在 CPU 的利用率上,单个 Redis 实例只能利用单个核心,这单个核心要完成海量数据的存取和管理工作压力会非常大。在这样大数据高并发的需求之下...原创 2019-04-16 19:15:09 · 519 阅读 · 2 评论 -
Redis学习之七 —— Redis Cluster
Redis 作者自己提供 Redis 集群化方案。相较于 Codis 的不同,它是去中心化的,如图所示,该集群有三个 Redis 节点组成,每个节点负责整个集群的一部分数据,每个节点负责的数据多少可能不一样。这三个节点相互连接成一个对等的集群,它们之间通过一种特殊的二进制协议相互交互集群信息。Redis Cluster 将所有数据划分为 16384 的 slots,它比 Codi...原创 2019-04-16 20:40:30 · 393 阅读 · 0 评论 -
Redis学习之八 —— Redis Cluster 实战
待完成原创 2019-04-16 20:41:08 · 106 阅读 · 0 评论 -
Redis学习之九 —— 阶段总结(解惑)
多种集群方案比较前面章节提到了 哨兵(Sentinel)模式,搭载了一主多从的Redis模式,确保单实例的高可用。单实例哨兵模式:https://blog.csdn.net/ruanhao1203/article/details/88593520单实例java客户端实战:https://blog.csdn.net/ruanhao1203/article/details/88640528...原创 2019-04-16 20:53:52 · 128 阅读 · 0 评论 -
Redis 分布式算法原理 —— 一致性Hash算法
Redis 分布式算法原理传统分布式算法 Consistent hashing一致性算法原理 Hash倾斜性 虚拟节点 Consistent hashing命中率举个栗子:假设有一个图片 test.jpg,我们有 3 个服务器, 服务器1 ,服务器2 ,服务器34 个 redis 节点- Redis0- Redis1- Redis2- Redis320个数据...转载 2019-04-17 10:48:04 · 643 阅读 · 0 评论 -
Redis学习之十 —— Info 指令
Info 指令显示的信息分为9大块:1. Server 服务器运行的环境参数;2. Clients 客户端相关信息;3. Memory 服务器运行内存统计数据;4. Persistence 持久化信息;5. Stats 通用统计数据;6. CPU 使用情况7. Replication 主从复制相关信息;8. Cluster集群信息;9. KeySpace 键值对...原创 2019-04-17 16:49:51 · 217 阅读 · 0 评论 -
Redis学习之十一 —— 实践 Info命令、估算Redis内存占用量
待续原创 2019-04-17 19:44:28 · 324 阅读 · 1 评论 -
Redis学习之十二 —— Redis 通信协议
Redis 的作者认为数据库系统的瓶颈一般不在于网络流量,而是数据库自身内部逻辑处理上。所以即使 Redis 使用了浪费流量的文本协议,依然可以取得极高的访问性能。Redis 将所有数据都放在内存,用一个单线程对外提供服务,单个节点在跑满一个 CPU核心的情况下可以达到 10w/s 的超高 QPS。RESP(Redis Serialization Protocol)Redis序列化协议。它...原创 2019-04-17 20:11:04 · 156 阅读 · 0 评论 -
Redis学习之十三 —— 过期策略
Redis 所有的数据结构都可以设置过期时间,时间一到,就会自动删除。过期的 key 集合redis 会将每个设置了过期时间的 key 放入到一个独立的字典中,以后会定时遍历这个字典来删除过期的key。还有一种惰性策略删除过期的key,所谓惰性策略就是客户端访问这个 key 的时候,对 key 的过期时间进行检查,如果过期了立即删除。定时删除是集中删除惰性删除是零散处理。定时扫描策略...原创 2019-04-17 23:54:50 · 199 阅读 · 0 评论 -
Redis学习之四 —— AOF、RDB
CAP 原理CAP原理是分布式存储的理论基石。C - Consistent ,一致性A - Availability ,可用性P - Partition tolerance ,分区容忍性分布式系统的节点往往都是分布在不同的机器上进行网络隔离开的,这意味着必然会有网络断开的风险,这种情况称为网络分区。当两个节点无法进行通信时,我们对一个节点进行的修改操作将无法同步到另外一个...原创 2019-04-16 16:34:09 · 166 阅读 · 0 评论 -
Redis学习之五 —— Sentinel 消息丢失
Redis 主从采用异步复制,意味着当主节点挂掉时,从节点可能没有收到全部的同步消息,这部分未同步的消息就丢失了。如果主从延迟特别大,那么丢失的数据就可能会特别多。Sentinel 无法保证消息完全不丢失,但是也尽可能保证消息少丢失。它有两个选项可以限制主从延迟过大。min-slaves-to-write 1min-slaves-max-lag 10第一个参数表示主节点必须至少有一个从...原创 2019-04-16 16:34:06 · 380 阅读 · 0 评论 -
Scan
问题:从成千上万的key中找出特定前缀的 key 列表?解决方案:Redis提供了简单粗暴的指令 keys 用来列出满足特定正则字符串规则的key。这个方式有很明显的缺点:为了解决上述缺点,在2.8版本后加入了 scan 指令。Scan的优点:字典结构...原创 2019-03-22 17:24:37 · 242 阅读 · 1 评论 -
Redis实现异步消息队列,延时队列
异步消息队列 Redis中的 list(列表)实现异步消息队列,使用rpush / lpush 操作插入队列消息,使用 lpop 和 rpop 来出队消息。 队列空了怎么办? 如果队列空了,客户端就会陷入pop的死循环,不停地pop,没有数据,接着pop,有没有数据。这样的空轮询拉高了客户端的CPU,redis的QPS也会被拉高...原创 2019-03-20 09:03:09 · 12791 阅读 · 2 评论 -
Redis学习之一 —— Redis Sentinel 哨兵模式(亲测可用)
参考:https://www.cnblogs.com/kevingrace/p/9004460.htmlRedis的集群方案大致有三种:1)redis cluster集群方案;2)master/slave主从方案;3)哨兵模式来进行主从替换以及故障恢复。一、Sentinel 哨兵模式介绍 Sentinel(哨兵)是用于监控redis集群中Master状态的工具,是Redi...原创 2019-03-16 19:19:16 · 2302 阅读 · 0 评论 -
Redis集群、主从复制、容灾(待实践)
Redis+Twemproxy+HAProxy集群:https://blog.csdn.net/shmilychan/article/details/73433804灾难恢复模拟:https://www.cnblogs.com/kevingrace/p/5569938.htmlRedis Cluster集群知识学习总结:https://www.cnblogs.com/kevingrace/...原创 2019-03-17 16:54:05 · 345 阅读 · 0 评论 -
Redis面试题收集
Redis有哪些数据结构? 字符串String、字典Hash、列表List、集合Set、有序集合SortedSet。如果你是Redis中高级用户,还需要加上下面几种数据结构HyperLogLog、Geo、Pub/Sub。 如果你说还玩过Redis Module,像BloomFilter,RedisSearch,Redis-ML,面试官得眼睛就开始发亮了。使用过Redis分布式锁么,...原创 2019-03-17 17:19:00 · 133 阅读 · 0 评论 -
Redis学习之二 —— SpringBoot整合Redis单实例主从复制模式(Sentinel实现)—— 亲测可用
参考:https://blog.csdn.net/Mars13889146832/article/details/79534981注意:这里是Redis单实例的,什么是单实例呢,就是只有一个主(master),后面会有多实例(多个master)的案例。目录结构redis.propertiesredis.nodes=10.24.54.245:26379,10.24.54.246...原创 2019-03-18 15:55:28 · 2380 阅读 · 0 评论 -
转:Jedis下的ShardedJedis(分布式)使用方法--redis分片
转自:https://www.cnblogs.com/vhua/p/redis_1.html原来项目中有用到Redis用作缓存服务,刚开始时只用一台Redis就能够满足服务,随着项目的慢慢进行,发现一台满足不了现有的项目需求,因为Redis操作都是原子性这样的特性,造成有时同时读写缓存造成查询效率的下降。但是由于我们现在用的还是2.X版本,还是没有集群功能的(Redis作者在3.0版本中已经加...转载 2019-03-18 15:57:31 · 652 阅读 · 0 评论 -
转:ShardedJedis源码分析
转自:https://www.cnblogs.com/vhua/p/redis_2.html上一篇中介绍了ShardedJedis的基本使用方法以及演示了一个简单的例子,在这一篇中我们来介绍了ShardedJedis的原理。1.ShardedJedis内部实现首先我们来看一下ShardedJedis的一个继承关系看完了图,那么我们一步一步跟着我们的代码调用来看,以我...转载 2019-03-18 15:58:55 · 131 阅读 · 0 评论 -
HyperLogLog
HyperLogLog提供不精确的去重计数方案,标准误差是0.81%,这样的精确度已经满足UV统计的需要了。使用方法 HyperLogLog 提供了两个命令 pfadd 和 pfcount,一个是增加计数,一个是获取计数。 pfmerge pfmerge将多个pf 计数值累加在一起形成的新值实战:...原创 2019-03-22 11:40:38 · 132 阅读 · 0 评论 -
布隆过滤器
使用场景原创 2019-03-22 14:30:04 · 132 阅读 · 1 评论 -
Redis 简单限流、漏斗限流
简单限流实现代码:漏斗限流原创 2019-03-22 14:57:34 · 2439 阅读 · 1 评论 -
Redis实现附近的人功能——GeoHash
原创 2019-03-22 15:19:47 · 2294 阅读 · 0 评论 -
Redis学习之三 —— 基于Redis Sentinel的Redis集群(主从&分片)高可用客户端方案
Redis集群(主从、分片)概念之前讲过一主多从的哨兵(Sentinel)模式,只有一个主,称为单实例的Redis,现在讲的是多主多从方案。现在公司用到的就是 多个一主一从组成的Redis集群,通过 Sentinel监控多个主从,多个主就称为Redis数据分片,数据被分不到多个实例上,每个实例都是主从结构,以下是Java客户端怎么用这种集群方案。Sentinel出现的问题Senti...原创 2019-03-19 15:30:11 · 578 阅读 · 0 评论