百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

Redisson的11个应用场景(redis各种类型的应用场景)

liuian 2025-03-29 19:29 26 浏览

Redisson使得作为协调单机多线程并发程序的工具包,获得了协调分布式多机多线程并发系统的能力, 降低了设计和研发大规模分布式系统的难度(保障了原子性)。

主要下面11个应用场景:

1.分布式锁

完美解决了3个问题:

(1)加锁原子性问题(设置过期时间,中途宕机产生死锁)

(2)释放锁原子性问题(A线程误删B线程的锁)。

(3)锁过期时间控制问题(A线程没执行完,锁就过期了,B线程就会获取锁。这样就失去了锁的作用,相当于没加锁,A和B线程同时运行)。

注意这3个问题属于高并发问题,并未完全解决高可用问题,如调用失败,主从同步,redis重启等;

2.分布式延迟队列 RDelayedQueue; 用于一个消息队列多机多线程消费;

3.批量加锁 MultiLock;用于多角色操作同一个对象;

4.分布式地理空间 RGeo;用于查询附近范围的物体(经纬度);

5.布隆过滤器 BloomFilter;用于不存在的对象预判;

6.限流器 RateLimiter;用于控制一段时间内对共享数据的访问次数;

7.全局计数器;用于全局数据统计;

8.多值映射 MultiMap: 解决字典问题;

9.分布式远程服务 RemoteService: 用于通过Redis实现了Java的远程过程调用(RPC)

10.分布式实时对象(Live Object):用于分布式共享操作一个对象

11.分布式执行服务(Executor Service):用于并行计算,提交任务后,多机并发执行

注:

1.在集群模式下,Redisson为单个Redis集合类型提供了自动分片的功能,该功能仅限于Redisson PRO版本。

2.编码类名称 说明


org.redisson.codec.JsonJacksonCodec Jackson JSON 编码 默认编码


org.redisson.codec.AvroJacksonCodec Avro 一个二进制的JSON编码


org.redisson.codec.SmileJacksonCodec Smile 另一个二进制的JSON编码


org.redisson.codec.CborJacksonCodec CBOR又一个二进制的JSON编码


org.redisson.codec.MsgPackJacksonCodec MsgPack 再来一个二进制的JSON编码


org.redisson.codec.IonJacksonCodec Amazon Ion 亚马逊的Ion编码,格式与JSON类似


org.redisson.codec.KryoCodec Kryo 二进制对象序列化编码


org.redisson.codec.SerializationCodec JDK序列化编码


org.redisson.codec.FstCodec FST 10倍于JDK序列化性能而且100%兼容的编码


org.redisson.codec.LZ4Codec LZ4 压缩型序列化对象编码


org.redisson.codec.SnappyCodec Snappy 另一个压缩型序列化对象编码


org.redisson.client.codec.JsonJacksonMapCodec 基于Jackson的映射类使用的编码。可用于避免序列化类的信息,以及用于解决使用byte[]遇到的问题。


org.redisson.client.codec.StringCodec 纯字符串编码(无转换)


org.redisson.client.codec.LongCodec 纯整长型数字编码(无转换)


org.redisson.client.codec.ByteArrayCodec 字节数组编码


org.redisson.codec.CompositeCodec 用来组合多种不同编码在一起

3.Redis Brpoplpush 命令从列表中取出最后一个元素,并插入到另外一个列表的头部; 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。

相关推荐

大神级产品:手机装 Linux 运行 Docker 如此简单

本内容来源于@什么值得买APP,观点仅代表作者本人|作者:灵昱Termux作为一个强大的Android终端模拟器,能够运行多种Linux环境。然而,直接在Termux上运行Docker并不可行,需要...

用 DeepSeek 5分钟让你的文稿变身高级感网页,人人都会用

大家好,我是芦苇Z。关于文字稿转换成信息图网页、文档美化,网络上已经有很多文章介绍。本文分享经过实践的改进版提示词,以及可自动化的工作流方法。基于DeepSeek,所有人都可以用得上,并轻松实现。不需...

跟 UMU 一起玩 OpenWRT(入门篇18):更换 opkg 源

问题默认源在国内访问速度普遍比较慢。PS:本篇理论上应该几年前就写的……以前经常用台湾省的网络,没发现,现在补一篇。解决更换清华大学源sed-i's/downloads\.openwrt...

有了这些,文件批量重命名还需要求助其它工具吗?

简单重命名Linux下文件重命名可以通过两个命令完成(收藏|15个你非了解不可的Linux特殊字符,妈妈再也不用担心我看不懂这些符号了!),mv和rename。mv:直接运行可以进行单个文件...

【OEC Turbo榨干计划】让 RK3566 起死回生!CasaOS 退退退!

本内容来源于@什么值得买APP,观点仅代表作者本人|作者:XFlowerCasaOS把我的小主机榨干了OECTurbo搭载的RK3566是颗四核Arm处理器,性能本就有限。不少值友刷...

DNF17周年庆暗帝加点攻略(dnf暗帝最新加点)

加点代码:eJy1jD0KwmAQRN/mI+APio2INukkEBK0F42SEDCac2gsbTyJh0hjYWdh6YVyAQc8g7u83dmBndb1PXflVoIR8KSjNnvrUlu...

从菜鸟到高手!Shell脚本入门必学的8大实战案例(附代码)

从菜鸟到高手!Shell脚本入门必学的8大实战案例(附代码)——手把手教你用代码解决实际问题,3天变身脚本达人!为什么Shell脚本是职场人的“效率神器”?每天重复操作文件、整理数据、监控系统状态……...

不用图形界面!7天挑战纯命令行玩转Linux

“没有鼠标、没有桌面,只用键盘和终端——7天后,你会爱上这种极客感爆棚的高效生活!”从基础操作到开发调试,这份挑战计划将带你彻底摆脱图形界面的依赖,成为真正的Linux命令行大师!Day1:终端生...

Linux 常用命令集合(linux常用60个命令)

系统信息arch显示机器的处理器架构(1)uname-m显示机器的处理器架构(2)uname-r显示正在使用的内核版本dmidecode-q显示硬件系统部件-(SMBIOS/DM...

[超全整理] Java 程序员必备的 100 条 Linux 命令大全

一、基础操作(10条)#1.ls-查看目录内容ls-l#长格式显示文件和目录ls-a#显示隐藏文件ls-lh#带单位显示文件大小#2.cd-切换目录...

Rocky Linux 9常用命令备忘录(不定时更新)

RockyLinux9常用命令备忘录(不定时更新)大家好,我是星哥,上次介绍了<RockyLinux9系统安装配置图解教程并做简单配置>:https://mp.weixin.qq...

2023年最新微信小程序抓包教程(微信小程序 抓包)

声明:本公众号大部分文章来自作者日常学习笔记,部分文章经作者授权及其他公众号白名单转载。未经授权严禁转载。如需转载,请联系开百。请不要利用文章中的相关技术从事非法测试。由此产生的任何不良后果与文...

测试人员必看的软件测试面试文档(软件测试面试怎么说)

前言又到了毕业季,我们将会迎来许多需要面试的小伙伴,在这里呢笔者给从事软件测试的小伙伴准备了一份顶级的面试文档。1、什么是bug?bug由哪些字段(要素)组成?1)将在电脑系统或程序中,隐藏着的...

复活,视频号一键下载,有手就会,长期更新(2023-12-21)

视频号下载的话题,也算是流量密码了。但也是比较麻烦的问题,频频失效不说,使用方法也难以入手。今天,奶酪就来讲讲视频号下载的新方案,更关键的是,它们有手就会有用,最后一个方法万能。实测2023-12-...

新款HTTP代理抓包工具Proxyman(界面美观、功能强大)

不论是普通的前后端开发人员,还是做爬虫、逆向的爬虫工程师和安全逆向工程,必不可少会使用的一种工具就是HTTP抓包工具。说到抓包工具,脱口而出的肯定是浏览器F12开发者调试界面、Charles(青花瓷)...