文章目录前言Redis 基本特性Redis应用场景Redis核心编码结构StringRedisDb 数据结构ListziplistquicklistHashSetintsetSetZSetGeoHash算法GeoHash经纬度编码GeoHash经纬度编码GeoHash经纬度编码GeoHash经纬度编码GeoHash优缺点 前言记录redis入门Redis 基本特性关系型的键值对数据库,可以根据键            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-11 21:26:00
                            
                                33阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Redis Server跑在单进程单线程中,接收到的命令操作都是按照顺序线性执行的,即便如此,它的读写性能依然能达到10W+的QPS,不得不说:Redis的设计十分优秀。为什么Redis的读写性能这么高呢?原因有许多,我们列举主要的三个:1、Redis基于内存操作:绝大部分的请求为纯粹的内存操作,而且使用hash结构存储数据,查找和操作的时间复杂度均为O(1)。2、Redis数据结构简单:redi            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-16 21:12:54
                            
                                148阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Redis架构设计目前流行的四种模式一、一致性Hash二、Redis哨兵模式三、Codis四、Redis_cluster五、Codis集群和Redis_cluster的优劣对比 目前流行的四种模式读者们,你们好!目前流行的Redis架构主要有四种,分别为:一致性Hash、Redis哨兵模式、Codis、Redis_cluster。一、一致性Hash 普通的Hash算法:对应于不同的数据,会精确的            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-13 00:13:58
                            
                                99阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            开头设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。在项目中合理地运用设计模式可以完美地解决很多问题,每种模式在现实中都有相应的原理来与之对应,每种模式都描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案,这也是设计模式能被广泛应用的原因。什么是Redis的持久化我们知道Redis的数据            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-03 11:10:06
                            
                                45阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            目录1、数据结构和内部编码1-1、redisobject对象1-1-1、type字段1-1-2、encoding字段1-1-3、lru字段1-1-4、refcount字段1-1-5、*ptr字段2、Redis中的线程和IO模型2-1、socket2-2、I/O多路复用程序2-3、文件事件分派器2-4、文件事件处理器3、Redis6中的多线程3-1、Redis6.0之前的版本真的是单线程吗3-2、R            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-08-01 22:12:48
                            
                                5阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、设计模式1.单例模式2.原型模式3.工厂模式4.代理模式设计模式:为了提高代码的可重用性,可读性,可维护性,具有低耦合高聚合的性能二、关于redis1.什么是redis?   Redis 是一个基于内存的高性能key-value数据库。   2.Reids的特点     Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-11 11:07:16
                            
                                72阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            前面三篇博客基本上实现了通用缓存的设计。但是在实际开发中,一般将数据不经常改动的业务(比如查询业务)做成缓存,把增删改业务执行完后从缓存中删除掉,通过再次查询把结果纳入缓存,就实现了缓存的实时更新。解决方案:设计一个后置通知,在完成增删改操作业务后,把缓存中的数据删除掉,redis缓存中有很多的数据,怎么保证只删除某一模块的数据呢?例如只删除User模块的数据,其他的数据不动此时就要考虑到存入re            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-23 13:08:31
                            
                                29阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # Redis设计模式
Redis是一种高性能的键值存储数据库,它支持多种数据结构,如字符串、哈希表、列表、集合和有序集合。除了作为常规键值存储之外,Redis还可以用作缓存、消息队列、计数器和分布式锁等。在本文中,我们将探讨一些常用的Redis设计模式,并提供相应的代码示例。
## 1. 缓存模式
Redis最常见的用途之一是作为缓存层,用于减轻数据库的负载。当有请求需要查询数据库时,我们            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-07-21 10:45:15
                            
                                119阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            目录简单动态字符串(SDS:simple dynamic string)应用场景SDS定义SDS与C字符串的区别链表链表实现字典字典的实现普通状态下的字典哈希算法Rehash渐进式Rehash跳跃表使用场景跳跃表实现整数集合整数集合的实现压缩列表压缩列表构成连锁更新简单动态字符串(SDS:simple dynamic string)当Redis需要的不仅仅是一个字符串字面量,而是一个可以被修改的字            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-15 09:52:42
                            
                                16阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            # Redis中的设计模式及其应用
Redis是一种开源的内存数据存储,用于缓存、消息代理、数据库等场景。它提供了多种数据结构,包括字符串、哈希、列表、集合和有序集合,这使得Redis成为很多项目的首选。除此之外,Redis在设计上也使用了多种设计模式,增强了系统的可扩展性、可维护性和性能。
## 1. 单例模式
单例模式确保一个类只有一个实例,并为全球提供访问点。在Redis中,通常使用单            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-09-30 05:01:54
                            
                                38阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、Redis对象结构Redis中的每个对象都由一个redisObject结构表示:  typedef struct redisObject {
unsigned type;//类型
unsigned encoding;//编码
void *ptr;//指向底层实现数据结构的指针
int refcount;//引用计数
unsigned lru;//对象最后一次被程序访问的时间
}  1. typ            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-11 11:11:54
                            
                                58阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            最近看了Redis的设计与实现,这本书写的还不错,看完后对Redis的理解有很大的帮助。另外,作者整理了一份Redis源码注释,大家可以clone下来阅读。 Redis是开源的缓存数据库,由于其高性能而受到大家的欢迎。同时,它的代码量只有6w多行,相比起mysql动则上百万行的代码量,实现比较简单。 Redis中有很多方面都很有意思,在这篇文章中我想探讨的是Redis中的Reactor模式。 从            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-19 17:27:24
                            
                                46阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            文章目录优化的数据结构SDS 设计redisObject 结构体嵌入式字符串ziplist 设计intset 设计共享对象 Redis 作为内存数据库,如何高效地使用内存非常重要。为了提升内存的使用率,主要采取数据结构优化设计及使用以及内存数据按照规则淘汰。内存数据按照淘汰规则主要通过 Redis 的内存替换策略实现的,也就是将很少使用的内存数据淘汰,这样就可以更好地把内存空间给频繁使用的数据使            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-19 17:18:59
                            
                                55阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            # Redis 集群模式:查看所有节点
Redis 是一个开源的高性能键值存储系统,常用于缓存、消息队列等场景。在大规模的应用中,为了提高系统的可用性和性能,通常会使用 Redis 集群模式。Redis 集群模式可以将数据分布到多个节点上,提供高可用性和负载均衡。
## Redis 集群模式介绍
Redis 集群模式使用哈希槽(hash slot)来分片数据,每个哈希槽对应一个节点。每个节点            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-01-13 08:41:29
                            
                                206阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            前言高并发十分考验架构师功底,它也是分布式架构设计中必须考虑的因素之一。要知道,光靠服务器堆是没有出路的。想看看大牛是怎么面对高并发的?想知道BATJ大厂是怎么设计高可用架构的?这里有可参考的实践案例,干货满满,或许能对你有所启发。Redis常用的数据类型Redis的五种常用的数据类型分别是:String、Hash、List、Set和Sorted set       Redis的使用场景1.Cou            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-24 17:01:06
                            
                                37阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            # 如何用 Redis 获取某个模式下的所有类型
在开发中,有时候我们需要获取 Redis 中某个模式下的所有数据类型,比如获取所有以 `user:*` 为键名的数据。通过 Redis 提供的 Keys 命令和类型命令,我们可以实现这个功能。
## 解决方案
### 1. 使用 Keys 命令获取所有符合模式的键名
首先,我们可以使用 Redis 的 Keys 命令来获取所有符合指定模式的            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-05-30 05:42:54
                            
                                16阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1. 背景最近在看redis源码,主体流程看完了。
在网上看到了reactor模式,看了一下,其实我们经常使用这种模式。2. 什么是reactor模式反应器设计模式(Reactor pattern)是一种为处理并发服务请求,并将请求提交到一个或者多个服务处理程序的事件设计模式。
当客户端请求抵达后,服务处理程序使用多路分配策略,由一个非阻塞的线程来接收所有的请求,然后派发这些请求至相关的工作线程进            
                
         
            
            
            
            # Redis 在设计模式中的应用
Redis是一种高性能的键值数据库,常用于缓存、消息队列和数据存储等场景。在使用Redis时,合理的设计模式可以帮助我们更好地管理数据,提升效率。本文将逐步帮助你理解如何在项目中使用Redis的设计模式,并提供相关代码示例。
## 主要步骤
下面是实现Redis设计模式的基本步骤:
| 步骤 | 说明                       |
|-            
                
         
            
            
            
            # Redis查看集群模式中所有节点的数量
## 引言
Redis是一个开源的内存数据存储系统,广泛应用于缓存、消息队列、实时分析等场景中。在Redis中,集群模式是一种常见的部署方式,它允许将数据分布在多个节点上,提高系统的性能和可用性。本文将介绍如何使用Redis来查看集群模式中所有节点的数量,并提供相应的代码示例。
## Redis集群模式简介
在Redis集群模式中,数据被分散存储在多            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-01-01 08:11:18
                            
                                82阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Redis基本特点非关系型的键值对数据库,可以根据键以O(1) 的时间复杂度取出或插入关联值Redis 的数据是存在内存中的键值对中键的类型可以是字符串,整型,浮点型等,且键是唯一的键值对中的值类型可以是string,hash,list,set,sorted set 等Redis 内置了复制,磁盘持久化,LUA脚本,事务,SSL, ACLs,客户端缓存,客户端代理等功能通过Redis哨兵和Redi            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-27 15:46:24
                            
                                68阅读
                            
                                                                             
                 
                
                                
                    