谈谈Redis基准测试Redis 的性能测试工具,目前主流使用的是 redis-benchmark 。Redis怎样用Lua脚本自定义Redis命令?在Redis中执行Lua脚本有两种方法:eval和evalsha。Redis的过期键的删除策略?我们都知道,Redis是key-value数据库,我们可以设置Redis中缓存的key的过期时间。Redis的过期策略就是指当Redis中缓存的key过期            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-30 00:19:23
                            
                                51阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在Redis中,我们在使用相关命令时实际上是在默认的数据库中执行的,因为在Redis中是有很多个数据库的,不同数据库与数据库之间数据是不同步的,那么在这一篇中, 我们主要了解一下Redis中数据库相关知识。数据库管理在Redis中主要提供了dbsize、select、flushdb/flushall等命令,下面我们分别介绍这些命令的详细使用。1、切换数据库select index我们知道在其它的关            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-13 16:01:57
                            
                                206阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            持久化的两种方式RDB和AOFRDB是什么?在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是行话的Snapshot快照,它恢复时是将快照文件直接读到内存中。备份是如何执行的?Redis会单独创建(fork)一个子进程来进行持久化,会先将数据写入一个到一个·临时·文件中,待持久化过程都结束了·,在用这个临时文件替换上持久化好的文件。整个过程中,主进程是不进行任何IO操作的,这就确保了极高的性能            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-16 23:03:30
                            
                                8阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
              本文为我阅读了 redis参考手册 之后编写,注意 php_redis 和 redis-cli 的区别(主要是返回值类型和参数用法)Redis的 Set 是 string 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。目录:Set(集合)SADDSREMSMEMBERSSCARDSMOVESPOPSRANDMEMBERSINTERSINTERSTOR            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-31 17:06:53
                            
                                49阅读
                            
                                                                             
                 
                
                             
         
            
            
            
              1.aof持久化    1.1.redis提供了两种持久化机制,rdb持久化和aof持久化。      1.rdb持久化:把内存中的数据库状态以快照形式保存到磁盘,避免数据意外丢失。优点是文件小,重启时加载很快,缺点是重启加载时,备份时间点之后的数据会丢失。      2.aof持久化:通过保存redis服务器所执行的写命令来记录数据库状态,优点是:相比较rdb丢数据少,缺点是加载慢。                
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-04 15:29:53
                            
                                55阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Redis 数据备份与恢复Redis SAVE 命令用于创建当前数据库的备份。语法redis Save 命令基本语法如下:redis 127.0.0.1:6379> SAVE实例redis 127.0.0.1:6379> SAVE 
OK该命令将在 redis 安装目录中创建dump.rdb文件。恢复数据 如果需要恢复数据,只需将备份文件 (dump.rdb) 移动            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-27 20:16:13
                            
                                240阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
             redis一共分为5中基本数据类型:String,Hash,List,Set,ZSet 第一种StringString类型是包含很多种类型的特殊类型,并且是二进制安全的。比如序列化的对象进行储存,比如一张图片进行二进制储存,比如一个简单的字符串数值等等。 set和get方法:设置值set name realValue 取值 get name说明:set设置            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-19 15:22:55
                            
                                133阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            1.使用场景现在公司有个项目,类似于今日头条,需要实现对应分类阅读排行榜的功能。每一篇文章所属于一个分类,当用户阅读该文章时,阅读次数+1,排行榜实时变化。2.redis的ZSet数据结构zset为有序集合。就是在set的基础上,添加了一个score值。zset的每一个成员都有一个分数与之对应,并且分数可以重复。score就相当于权重,可以根据score值进行排序展示。项目中使用了SpringBo            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-07 10:14:56
                            
                                209阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            redis默认有16个数据库,默认使用的是第0个数据库,redis是一个单线程的数据库。官方表示redis是基于内存操作的,其性能瓶颈不在于CPU而在于网络带宽和内存大小,所以能用单线程实现就用单线程实现。1、切换数据库#切换到下标为3的数据库(第四个)
select 32、查看当前数据库的大小#通过dbsize命令查看当前数据库的大小
dbsize3、查看所有的key#只能查看当前db的所有的k            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-04 15:28:18
                            
                                165阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Scan cursor [match pattern] [count count]命令及其相关的sscan命令、HSCAN命令和ZSCAN命令都用于增量的迭代(incermentally iterate)一集元素(a collection of elements):SCAN命令用于迭代当前数据库中的数据库键。SSCAN命令用于迭代集合键中的元素。HSCAN命令用于迭代哈希键中的键值对。ZSCAN命            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-15 15:19:07
                            
                                112阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            redis的有序集合zset和普通集合set极其相似,是一个 没有重复元素的字符串集合
不同之处是有序集合的每个成员都关联了一个 评分(score)集合中的成员是唯一的,但是评分是可以重复了
因为元素的上有序的,所以可以很快的根据评分(score)或者次序(position)来获取一个范围内的元素
访问有序集合的中间元素也是非常快的,因此能够使用有序集合做一个没有重复成员的智能列表。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-05-25 12:04:22
                            
                                70阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            作为关系型数据库中一项非常重要的基础功能——事务,在 Redis 中是如何处理并使用的?前言事务指的是提供一种将多个命令打包,一次性按顺序地执行的机制,并且保证服务器只有在执行完事务中的所有命令后,才会继续处理此客户端的其他命令。事务也是其他关系型数据库所必备的基础功能,以支付的场景为例,正常情况下只有正常消费完成之后,才会减去账户余额。但如果没有事务的保障,可能会发生消费失败了,但依旧会把账户的            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-18 22:09:31
                            
                                36阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
              Redis是典型的Key-Value类型数据库,Key为字符类型,Value的类型常用的为五种类型:String、Hash 、List 、 Set 、 Ordered Set下面我们详细介绍一下。一、Redis的内部内存管理原理      1、Redis 内部使用一个 redisObject 对象来表示所有的 key 和 value。                 
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-21 03:05:04
                            
                                140阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            源码版本:redis-4.0.1  源码位置:
adlist.h : listNode、list数据结构定义。
adlist.c:函数功能实现。一、adlist简介Redis中的链表叫adlist(A generic doubly linked list implementation 一个通用的双端链表实现),和普通单链表相比,它的方向可以向前或者向后,这是由于数据结构中定义了next和prev两            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-18 06:24:53
                            
                                38阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,提供多种语言的API,支持多种数据存储方式。开发中一般用于缓存,队列,数据库使用。 redis事务(Transaction)说明redis中的事务与传统关系型数据库(如mysql)的事务是不同的。redis中的事务是一组命令的集合,事务与命令都是最小执行单位,原理是先将属于一个事务的命            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-03 17:25:35
                            
                                64阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、Redis的事务定义Redis事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。 Redis事务的主要作用就是串联多个命令防止别的命令插队。二、multi、exec、discard命令在Redis中从输入multi命令开始,输入的命令都会依次进入命令队列中,但不会执行,直到输入exec后,Redis会将之前的命令队列            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-15 13:59:50
                            
                                64阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Zset 有两种编码格式 , 一种是ziplist(双向链表的形式), skiplist(跳跃表的形式),Zset会根据相应的规则来选择编码格式,一、ziplist (压缩列表)1.条件 :元素个数小于128个元素的长度小于64ziplist采用的是双向的链表的结构实现, 且是一个特殊的双向链表,为啥特殊呢,因为链表的设计采用了连续的内存空间。2.结构:<zlbytes> <zl            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-17 10:56:29
                            
                                57阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            List集合Redis的List集合是单键多值的,按照插入顺序排序,你可以添加一个元素到列表头部(左边)或者尾部(右边)List的底层实际上是如下图的一个双向链表,对两端的操作性很高,但是通过索引下标操作中间部分性能会很差。List的数据结构为快速链表quickList首先,在列表元素较少的情况下会使用一块连续的内存存储,这个结构是压缩列表(ziplist)它将所有的元素紧紧挨在一起存储,分配是一            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-15 16:13:54
                            
                                24阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            常见坑人无数的Redis面试题总结Redis有哪些数据结构?使用过Redis分布式锁么,它是什么回事?意外crash或者要重启维护了,那会怎么样?假如Redis里面有1亿个key,其中有10w个key是以某个固定的已知的前缀开头的,如果将它们全部找出来?如果这个redis正在给线上的业务提供服务,那使用keys指令会有什么问题?使用过Redis做异步队列么,你是怎么用的?可不可以不用sleep呢            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-31 09:18:02
                            
                                56阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一.Redis事务 
 
  Redis的事务和传统关系数据库的事务并不相同。在关系数据库中,用户首先向数据库服务器发送BEGIN,然后执行各个相互一致的写操作和读操作,最后,用户可以选择发送COMMIT来确认之前所做的修改,或者发送ROLLBACK来放弃那些修改。 
 
  在Redis里面也有简单的方法可以处理一连串相互一致的读操作和写操作。Redis的事务以特殊命令MULTI为开始,之            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-05-25 14:25:34
                            
                                58阅读