应用场景:  例如秒杀。瞬时大量写入订单到数据库,导致数据库无法及时响应。此时可以采用Redis做消息队列,把所有需要写入的数据先写入Redis消息队列中,然后同时在服务器开启php-cli进程循环读取队列中的数据,异步写入数据库。使用redis做消息队列可能会出现消息丢失的情况,因为没有消息接收的确认机制。大型程序,应该使用类似RabitMQ来做专业消息队列。  1、使用publish/subs            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-31 16:31:44
                            
                                51阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Redis 的事务Redis的事务定义Redis事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。Redis事务的主要作用就是串联多个命令防止别的命令插队。组队过程:Multi、Exec、discard从输入Multi 命令开始,输入的命令都会依次进入命令队列中,但不会执行直到输入 Exec 后,Redis会将之前的命令            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-15 11:01:24
                            
                                92阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            在最近的业务中,接到了一个需要处理约十万条数据的需求。这些数据都以字符串的形式给到,并且处理它们的步骤是异步且耗时的(平均处理一条数据需要 25s 的时间)。如果以串行的方式实现,其耗时是相当长的:总耗时时间 = 数据量 × 单条数据处理时间 T = N * t (N = 100,000; t = 25s)总耗时时间 = 2,500,000 秒 ≈ 695 小时 ≈ 29 天显然,我们不能简单地把            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-01 13:45:00
                            
                                173阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            消息队列RocketMQ版提供的分布式事务消息适用于所有对数据最终一致性有强需求的场景。本文介绍消息队列RocketMQ版事务消息的概念、优势、典型场景、交互流程以及使用过程中的注意事项。概念介绍事务消息:消息队列RocketMQ版提供类似X或Open XA的分布式事务功能,通过消息队列RocketMQ版事务消息能达到分布式事务的最终一致。半事务消息:暂不能投递的消息,发送方已经成功地将消息发送到            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-26 20:08:34
                            
                                16阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            1、事务的概念 
  所谓事务是指一组相互依赖的操作单元的集合,用来保证对数据库的正确修改,保持数据的完整性,如果一个事物的某个单元操作失败,将取消本次事务的全部操作。 
 ACID: 
 原子性(Atomicity):每个事物是一个不可分割的整体,只有所有的操作单元执行成功,整个事务才成功,否则此次事务就失败,所有执行成功的操作单元必须撤销,数据库回到此次事务之前的状态。一致性(Consiste            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-27 10:06:44
                            
                                38阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            参考文章:Spring事务机制详解Spring事务配置的五种方式Spring中的事务管理实例详解1、初步理解理解事务之前,先讲一个日常生活中最常干的事:取钱。 比如你去ATM机取1000块钱,大体有两个步骤:首先输入密码金额,银行卡扣掉1000元钱;然后ATM出1000元钱。**这两个步骤必须是要么都执行要么都不执行。**如果银行卡扣除了1000块但是ATM出钱失败的话,你将会损失1000元;如果            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-09 09:43:06
                            
                                25阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            [一]什么是redis的事务 
   
   --->redis的事务是一组命令的集合。 
   
   --->redis的事务是保证一组命令,要么都执行,要么都不执行。但不支持一组命令中,其中一个或多个执行失败,不支持数据回滚。数据的一致性,由程序员控制。 
   
   --->redis的事务还能保证一个事务内的命令依次执行,而不被其他命令插入。试想,客户端 A发            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-18 22:31:39
                            
                                116阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            最近翻看技术文章,发现一个叫做disruptor的高性能内存队列占据了头版头条,好奇其高性能的秘密,于是对该框架进行了一些简单的研究。disruptor并非新出,而是从2013年到现在经历了3个大版本的迭代。本文有如下几个部分:disruptor如何使用?
disruptor高性能的秘密?
如何使用
核心概念:
EventFactory:用于生成一个事件提供消费者消费
EventHandler:消            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-27 20:53:12
                            
                                40阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            RabbitMQ RabbiMQ是AMQP(高级消息队列协议)的消息中间件的一种,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗,主要是为了实现系统之间的双向解耦而实现的。当生产者大量产生数据时,消费者无法快速消费,那么需要一个中间层。保存这个数据。Redis队列 redis队列是一个是一个Key-Value的NoSQL数据库,开发维护很活跃,虽然它是一个Key-Valu            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-13 15:50:33
                            
                                132阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            什么是事务redis事务就是一个命令执行的队列,将一系列预定义命令包装成一个整体(一个队列)。当执行时,一次性按照顺序依次执行,中间不会被打断。一个队列中,一次性、顺序性、排他性的执行一系列命令事务的基本操作:开启事务(事务的开启位置) multi
执行事务(事务的结束位置) exec
取消事务 discard
加入事务的命令暂时进入到任务队列中,并没有立即执行,只有执行exec命令才开始执行例子            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-05-25 16:41:09
                            
                                91阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一  redis  key的设计越短,而且要完整表达含义,可以缩写,但必须文档留存好说明user:001tm:order:001   order:1 一般以业务,功能模块或者表名开头,后跟主键(或能表示数据唯一性的值) 二  客户端连接redis普通实现import redis.clients.jedis.Jedis;
publ            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-29 11:16:31
                            
                                109阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
              redis提供了事务,事务就是一个操作集合,保证集合内的操作都是序列化,并且具有原子性的。在执行的过程中,不会受到其他命令的影响。事务中的命令,只有全部执行,或者全部都不执行。但是redis的实现方式还是有些许不同的。redis的事务是,如果命令集合里面,有某条命令出现了问题,只有出现问题的命令不会执行,无错误的命令则会继续执行。而且redis的事务并不支持回滚,redis对此的解释是:red            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-18 22:30:12
                            
                                63阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            如果你曾了解过关系型数据库事务的话,我相信这篇文章对你来说是很容易理解的。 具体什么是事务我就不说不多了,直接讲 Redis 事务相关的部分。首先,我们先来看下,Redis 是怎么执行事务的。1. 事务执行过程一个事务的开始到结束会经过以下 3 个过程1. 事务开始2. 命令入队3. 事务执行show code:   127.0.0.1:6379> multi OK 12            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-17 11:19:02
                            
                                36阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            背景:在某些业务场景中 会对redis 产生频繁的读写操作。这样会导致系统延时过高,吞吐量低下,无法满足目标; 其中,redis pipeline(管道机制) 的应用是一个解决手段。Redis普通请求-处理模型:Redis pipeline请求-处理模型:从两个图的对比中可看出,普通的请求模型是同步的,每次请求对应一次IO操作等待; 而Pipeline 化之后所有的请求合并为一次IO,除            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-18 22:16:36
                            
                                56阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、Redis事务Redis 提供的事务机制与传统的数据库事务有些不同,传统数据库事务必须维护以下特性:原子性(Atomicity), 一致性(Consistency),隔离性(Isolation),持久性(Durability),简称ACID。Redis支持简单的事务,将执行命令放入队列缓存,程序中有异常,执行discard回滚,其实只是取消队列命令的执行。但执行exec时,已经执行的命令,是无            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-15 16:50:06
                            
                                46阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            1、Redis 事务机制1.1 事务的定义  事务是指一系列操作数据库的步骤,这一系列的操作步骤,要么完全地执行,要么完全地不执行。 1.2 Redis 的事务  同样,Redis 中的事务也是一组命令的集合,至少是两个或两个以上的命令。Redis事务是一个单独的隔离操作,事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。  Redis            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-16 15:37:38
                            
                                118阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Redis事务是一个单独的隔离操作:事务中的所有命令都会序列化,按顺序地执行,事务在执行的过程中,不会被其他客户端发过来的请求所打断。 1,Multi、Exec、discard  从输入Multi开始,输入的命令都会依次进入命令队列中,但不会执行,直接输入Exec后,Redis会将之前队列中的命令依次执行。  组队的过程中可以通过discard来放弃组队。   事务的错误处理:            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-09 21:18:49
                            
                                59阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1.概述Redis 事务可以一次执行多个命令, 并且带有以下两个重要的保证:批量操作在发送 EXEC 命令前被放入队列缓存。收到 EXEC 命令后进入事务执行,事务中任意命令执行失败,其余的命令依然被执行。在事务执行过程,其他客户端提交的命令请求不会插入到事务执行命令序列中。一个事务从开始到执行会经历以下三个阶段:开始事务。命令入队。执行事务。2.Redis事务命令命令命令及描述MULTI标记一个            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-11 09:30:44
                            
                                38阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1、reidis事务Redis 事务可以一次执行多个命令, 并且带有以下三个重要的保证:批量操作在发送 EXEC 命令前被放入队列缓存。收到 EXEC 命令后进入事务执行,事务中任意命令执行失败,其余的命令依然被执行。在事务执行过程,其他客户端提交的命令请求不会插入到事务执行命令序列中。一个事务从开始到执行会经历以下三个阶段:开始事务。命令入队。执行事务。 MULTI 开始一个事务, 然            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-04 10:38:00
                            
                                67阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            消息队列用途:解耦,异步,消峰。 redis实现消息队列的方式:使用List作为key。(先进先出) 实现方法:①lpush,rpop 非阻塞式 ②lpush,brpop 阻塞式 注:柱塞式队列–当队列为空/满时,无法从队列中删除/增加元素。(所谓阻塞:在某种情况下,线程被挂起,直到触发满足条件自动唤醒线程)语法样式1:(实现优先级消息队列) redis 192.168.8.123>brpo            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-05-25 11:57:49
                            
                                109阅读