redis管道 事务
Redis学习--Redis对过期键的处理
## Redis做RDB备份时对已过期键的处理 【待验证】执行SAVE和BGSAVE所产生的RDB文件不会包含"已过期键"。 ## Redis做RDB加载时对已过期键的处理 在Redis实例加载RDB时,会先加载"已过期键",如果当前实例为主节点则会通过decrRefCount操作来删除"已过期键" ......
Redis持久化
# Redis持久化 ## RDB持久化 Redis 可以通过创建快照(RDB)来获得存储在内存里面的数据在 **某个时间点** 上的副本,它是经过压缩的二进制文件,用于主从数据传递和数据备份。 Redis有两种方式创建RDB快照: save:主线程进行 **bgsave**:主线程 ......
使用snap安装Redis并配置外网访问和访问密码
# 使用snap安装Redis并配置外网访问和访问密码 Redis是一个流行的开源内存数据库,用于处理数据存储和缓存。在本文中,我们将介绍如何使用snap安装Redis,并通过Redis的CLI(命令行界面)来配置外网访问和访问密码。 snap是一种用于在Linux系统上安装软件的包管理器,它提供了 ......
seata的分布式事务处理机制
1、启动时,自动代理数据源,应用GlobalTransactionalInterceptor,初始化TM和RM 2、进入@GlobalTransactional业务方法时,TM向TC发请求申请开启全局事务,并获得全局事务ID 3、业务方法调用远程服务接口完成业务处理 4、RM执行本地逻辑,注册分支事 ......
python redis 链接集群 阿里云集群
**前言** 集群redis不支持选db cluster方法里没有支持选中db的选项,java py 都不行 ``` python # pip install redis==3.5.3 # pip install redis-py-cluster==2.1.3 # 亲测,我是使用的这两个版本进行处理 ......
canal+RabbitMQ实现Redis与Mysql解决双写一致性
# canal+RabbitMQ实现Redis与Mysql的数据最终一致性问题 ## 配置mysql(windows版本) ![image-20230603221946517](https://img2023.cnblogs.com/blog/2415626/202306/2415626-20230 ......
使用Redis作为维表输入的Flink示例代码
下面是一个使用Redis作为维表输入的Flink示例代码: ```java import org.apache.flink.api.common.functions.RichFlatMapFunction; import org.apache.flink.api.common.state.MapSt ......
分布式事务的解决方案及中间件
方案一:XA 两阶段提交方案是一种比较重的操作,其中有有以下三个角色:事务管理器(TM)、事务协调者(TC)、资源管理器(RM),资源锁定时间长,效率低。 方案二:TCC 采用冻结预留的方式锁定资源,开发量较大,常用于资金交易类的场景。 方案三:本地消息表 严重依赖消息表来管理事务,并不适用高并发。 ......
Mybatis——Spring事务实现 select for update
Mybatis——Spring事务实现 https://www.cnblogs.com/wqff-biubiu/p/12546674.html select for update不交由spring事务管理的正确姿势 https://blog.csdn.net/shuangyueliao/articl ......
原来kafka也有事务啊,再也不担心消息不一致了
## 前言 现在假定这么一个业务场景,从`kafka`中的`topic`获取消息数据,经过一定加工处理后,发送到另外一个`topic`中,要求整个过程消息不能丢失,也不能重复发送,即实现端到端的`Exactly-Once`精确一次消息投递。这该如何实现呢? ![](https://p3-juejin ......
Mysql数据库-事务操作
mysql 中默认级别 Repeatable read。 另外需要注意的是 mysql 执行一条查询语句默认是一个独立的事务,所以看上去效果跟 Read committed 一样。 通过Navicat中每建立一个查询,默认是一个独立的事务,会恢复默认级别:Repeatable read ```mys ......
redis 集群安装
redis-5版本的集群安装 1. 5版本往上就不再使用ruby去创建集群了。 2. 具体的创建步骤可以参见下面的博文。https://www.jianshu.com/p/e9eab2f4a564 3. redis集群开机自启: https://www.cnblogs.com/powerwu/art ......
Redis 的事务
## 1. Redis 的事务 一般来说,常见的关于 MySQL 的 ```事务``` 的定义,无非是把一组数据库命令放在一起执行,保证操作原子性,要么同时成功,要么同时失败。 但是 Redis 的事务跟 MySQL 的事务有一点点区别,Redis 的事务允许把一组 redis 命令放在一起,把命令 ......
2023-06-05:Redis官方为什么不提供 Windows版本?
2023-06-05:Redis官方为什么不提供 Windows版本? 答案2023-06-05: Redis官方没有提供Windows版本有几个原因。 1.Redis的开发团队规模较小,由三四名核心开发者组成。他们更加熟悉和习惯Unix-like系统,在这些系统上进行开发和测试可以更高效地进行。然 ......
Python生成器深度解析:构建强大的数据处理管道
# 前言 生成器是Python的一种核心特性,允许我们在请求新元素时再生成这些元素,而不是在开始时就生成所有元素。它在处理大规模数据集、实现节省内存的算法和构建复杂的迭代器模式等多种情况下都有着广泛的应用。在本篇文章中,我们将从理论和实践两方面来探索Python生成器的深度用法。 ## 生成器的定义 ......
Redis(四) -- 缓存
# 缓存 ## 缓存更新方式 这是决定在使用缓存时就该考虑的问题。 - 设置缓存数据的TTL,当缓存数据失效后,如果有系统要请求,则会查询数据库并插入缓存(被动更新) 不友好 - 在各类会往mysql写入数据的系统中,植入更新缓存的逻辑(判断哪些表的数据是热点数据,那么就可以在这些表数据的更新操作逻 ......
【Redis】Redis 常见数据类型和应用场景
1 前言 我们都知道 Redis 提供了丰富的数据类型,常见的有五种:String(字符串),Hash(哈希),List(列表),Set(集合)、Zset(有序集合)。 随着 Redis 版本的更新,后面又支持了四种数据类型: BitMap(2.2 版新增)、HyperLogLog(2.8 版新增) ......
Mysql:事务
# 事务特性 事务的特性:acid。 ## 原子性(重要) 事务内的一组操作为原子操作,要么全部成功,要么全部失败。在实际业务如转账,就必须保证一方数目多了一方少了,数目平衡。 ## 一致性(面试常问) 事务成功或失败的结果必须符合业务逻辑。还是以转账为例,A转给B100块,成功就A少100,B多1 ......
NineData,稳定、高效的Redis数据同步解决方案
NineData(https://www.ninedata.cloud/)在Redis的同步上,提供了稳定和高效的解决方案,并且性能上也领先其他同步工具,特别是在同步的动态限流、数据对比修复和限流、异常修复和断点续传等能力上也支持的最完善。 ......
Redis系列14:使用List实现消息队列
[Redis系列1:深刻理解高性能Redis的本质](https://www.cnblogs.com/wzh2010/p/15886787.html "Redis系列1:深刻理解高性能Redis的本质") [Redis系列2:数据持久化提高可用性](https://www.cnblogs.com/w ......
docker-compose快速安装redis、redis集群、activemq、elasticsearch(head、ik、kibana、logstash)、mongodb、zookeeper等环境
基本操作 部署docker容器并启动(进入docker-compose.yml文件所在目录执行) docker-compose up -d 关闭容器(同理) # 停止服务 docker-compose stop #停止并删除容器、网络、卷、镜像。 docker-compose down 查看当前do ......
redis的增删改查
增加(添加)操作: 设置单个键值对:SET key value 设置多个键值对:MSET key1 value1 key2 value2 ... 添加元素到列表的尾部:RPUSH key element 添加元素到集合:SADD key member 删除操作: 删除单个键:DEL key 删除多个 ......
Redis lua脚本简要学习
# Redis lua脚本简要学习 ## 背景 ``` 上周督促客户从Windows平台升级到了Linux平台. redis一周相安无事. 但是这周一突然又出现了卡断和慢的情况. 只能继续进行分析. ``` ## 分析思路 ``` 现场日志里面出现了大量的错误提示: BUSY Redis is bu ......
如何在 Memcache 与 Redis 中做选择?
#memcache vs redis ### Memcached和Redis都是流行的内存缓存系统,用于提高应用程序的性能和响应速度。它们有一些相似之处,但也有一些区别。以下是Memcached和Redis之间的一些比较: #### 数据存储:Memcached和Redis都可以存储键值对数据。Me ......
分布式事务
一。首先复习下mysql事务 事务四特性: 原子性(A):要么全运行,要么全不运行 一致性(C):事务之前A有100块,B有100块,A给B转账,事务结束后A和B的余额总和必须也得是200块。这里除了代码逻辑上没有问题之外,其实还需要其他三个特性的支持。 隔离性(I):事务之间互不影响。 持久性(D ......
Redis(三) -- 其他数据类型和数据持久化
# 其他数据类型 ## List ### LPUSH ```sql LPUSH key value [value ...] -- 将一个或多个值 value 插入到列表 key 的表头 -- 如果有多个 value 值,那么各个 value 值按从左到右的顺序依次插入到表头: 比如说,对空列表 my ......
Redis_主从复制
一、主从复制介绍 主机数据更新后根据配置和策略,自动同步到备机的master/slave 机制,Master以写为主,slave以读为主 好处:读写分离,性能扩展;容灾快速恢复(一主多从):一台slave从机挂掉,马上切换到另一台slave从机提供服务。 主机挂:集群 集群:一主多从 ——关联—— ......
缓存击穿【Redis 缓存】
缓存击穿 缓存击穿问题也叫热点 Key 问题,就是一个被高并发访问并且缓存重建业务较复杂的 key 突然失效了,无数的请求访问会在瞬间给数据库带来巨大的冲击。 解决方案: 互斥锁 逻辑过期 ......
缓存雪崩【Redis 缓存】
缓存雪崩 缓存雪崩是指在同一时段大量的缓存key同时失效或者Redis服务宕机,导致大量请求到达数据库,带来巨大压力。 解决方案: 给不同的 Key 的 TTL 添加随机值 利用 Redis 集群提高服务的可用性 给缓存业务添加降级限流策略 给业务添加多级缓存 ......
Redis持久化——AOF
AOF(Append Only File) 以日志的形式来记录每个写操作(增量保存),将Redis执行过的所有写指令记录下来(读指令不记录),只许追加文件但不可以改写文件,redis启动之初会读取该文件重新构建数据,换言之,redis重启的话就根据日志文件的内容将写指令从前到后执行一次以完成数据的恢 ......