Redis 整合中 Redisson 的使用
大家好 , 我是苏麟 , 今天带来 Redisson 使用 .
官方文档 : GitHub - redisson/redisson: Redisson - Easy Redis Java client with features of In-Memory Data Grid. Sync/Async/RxJava/Reactive API. Over 50 Redis based Java objects and services: Set, Multimap, SortedSet, Map, List, Queue, Deque, Semaphore, Lock, AtomicLong, Map Reduce, Bloom filter, Spring Cache, Tomcat, Scheduler, JCache API, Hibernate, RPC, local cache ...

引入依赖
<!--https://github.com/redisson/redisson#quick-start--><dependency><groupId>org.redisson</groupId><artifactId>redisson</artifactId><version>3.23.2</version></dependency>
yml配置(例如)
#redis 配置redis:port: 6379database: 1host: localhost
Redisson配置
@Data
@Configuration
@ConfigurationProperties(prefix = "spring.redis")
public class RedissonConfig {private String host;private String port;@Beanpublic RedissonClient redissonClient(){// 1.创建配置Config config = new Config();String redissonAddress = String.format("redis:/%s:%s",host,port);//useClusterServers()集群//setDatabase() 设置那个redis库config.useSingleServer().setAddress(redissonAddress).setDatabase(2);//2.创建实例RedissonClient redissonClient = Redisson.create(config);return redissonClient;}
}
这里@ConfigurationProperties(prefix = "spring.redis")用法请看 : 读取/加载 properties/yml 配置文件_踏遍三十六岸的博客-CSDN博客
像操作本地集合一样操作Redisson
@SpringBootTest
class UserCenterApplicationTests {@Resourceprivate RedissonClient redissonClient;@Testvoid test() {//list操作 数据存在 JVM 内存中List<String> list = new ArrayList<>();list.add("sl");System.out.println(list.get(0));list.remove(0);//数据存在 Redis 内存中//getList()取列表名字 因为 redis 中是 key-value 存在RList<String> rList = redissonClient.getList("redisson-list");rList.add("sl-redisson");System.out.println(rList.get(0));rList.remove(0); }@Testvoid hashTest(){//哈希操作RMap<String, String> rMap = redissonClient.getMap("LiJiaWei");//设置 map 中的 key - valuerMap.put("sl","1");rMap.put("jw","2");System.out.println(redissonClient.getMap("LiJiaWei").get("sl"));System.out.println(redissonClient.getMap("LiJiaWei").get("jw"));redissonClient.getMap("LiJiaWei").remove("sl");redissonClient.getMap("LiJiaWei").remove("jw");}//......//其他操作都一样
}
Redssion 分布式锁
定时任务可以看(或者其他的) : Spring Schedular 定时任务_踏遍三十六岸的博客-CSDN博客
@Component
public class PreScheduled {@Resourceprivate RedissonClient redissonClient;/*** 每天执行*/@Scheduled(cron = "0 59 23 * * *")public void doCah() {//获取锁 , 可重入 指定锁的名称RLock lock = redissonClient.getLock("sl:redisson:cache:lock");try {/*** 只有一个线程获取到锁* 等待时间 , 执行时间 , 毫秒*/if (lock.tryLock(0, 30000L, TimeUnit.MILLISECONDS)) {//...}} catch (InterruptedException e) {e.printStackTrace();} finally {/*** 只能释放自己加的锁*/if (lock.isHeldByCurrentThread()) {lock.unlock();}}}
}
感兴趣的小伙伴可以自行了解下面知识!
Redisson的可重入锁原理
Redisson看门狗WatchDog机制
Redisson的multiLock原理
这期就到这里 , 拜拜 !
相关文章:
Redis 整合中 Redisson 的使用
大家好 , 我是苏麟 , 今天带来 Redisson 使用 . 官方文档 : GitHub - redisson/redisson: Redisson - Easy Redis Java client with features of In-Memory Data Grid. Sync/Async/RxJava/Reactive API. Over 50 Redis based Java objects and services: Set, Multimap, Sorte…...
数据结构(5)
堆 堆可以看作一颗完全二叉树的数组对象。 特性: 1.堆是完全二叉树,除了树最后一层不需要满,其余层次都需要满,如果最后一层不是满的,那么要求左满右不满 2.通常使用数组实现,将二叉树结点依次放入数组中…...
R语言实现网状Meta分析(1)
#R语言实现网状Meta library(gemtc) help(package"gemtc") data<-gemtc::smoking #注意按照实例格式编写数据 net<-mtc.network(data$data.ab) #网状图 plot(net,mode"circle",displaylabelsT,boxed.labelF) summary(net) #网状model model<-mtc…...
Reactor 第十篇 定制一个生产的WebClient
1 为什么要用 WebClient 刚开始尝试使用 Spring WebFlux 的时候,很多人都会使用 Mono.fromFuture() 将异步请求转成 Mono 对象,或者 Mono.fromSupplier() 将请求转成 MOno 对象,这两种方式在响应式编程中都是不建议的,都会阻塞当…...
桃子叶片病害识别(Python代码,pyTorch框架,深度卷积网络模型,很容易替换为其它模型,带有GUI识别界面)
1.分为三类 健康的桃子叶片 ,251张 桃疮痂病一般,857张 桃疮痂病严重,770 张 2. GUI界面识别效果和predict.py识别效果如视频所示桃子叶片病害识别(Python代码,pyTorch框架,深度卷积网络模型࿰…...
matlab使用教程(21)—求函数最值
1. 求函数最优值 1.1求一元函数的最小值 如果给定了一个一元数学函数,可以使用 fminbnd 函数求该函数在给定区间中的局部最小值。例如,请考虑 MATLAB 提供的 humps.m 函数。下图显示了 humps 的图。 x -1:.01:2; y humps(x); plot(x,y) xlabel(x)…...
Redis中 为什么Lua脚本可以保证原子性?
Redis中 为什么Lua脚本可以保证原子性?...
tda4 videnc-test-app: CONTINUOUS and STEPWISE FRAMEINTERVALS not supported
/* videnc-test-app */ https://git.ti.com/cgit/jacinto7_multimedia/ git clone https://git.ti.com/git/jacinto7_multimedia/videnc-test-app.git // 编译 ./autogen.sh ./configure --enable-maintainer-mode --buildi386-linux --hostaarch64-none-linux CC/home/share…...
[已解决] libGL error: MESA-LOADER: failed to open swrast
在新的服务器中配置好虚拟环境后,利用已有的预训练模型test后,可视化时遇到: libGL error: MESA-LOADER: failed to open swrast: /usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /u…...
JVM及垃圾回收机制
文章目录 1、JVM组成?各部分作用?1.1 类加载器(Class Loaders)1.2 运行时数据区(Runtime Data Area)1.3 执行引擎(Execution Engine)1.4 本地方法接口(Native Interface&…...
windows11不允许安装winpcap4.1.3
问题:下载安装包后在安装时显示与电脑系统不兼容,不能安装。 原因:winpcap是一个用于Windows操作系统的网络抓包库,有一些安全漏洞,存在被黑客攻击的风险。Windows11为了加强系统安全而禁用了这个库,因此不…...
matlab使用教程(23)—优化函数的参数
本博客向您介绍如何存储或访问向 MATLAB 复合函数(如 fzero 或 integral)传递的数学函数的额外参数。 MATLAB 复合函数基于某个值范围计算数学表达式。这些函数之所以称为复合函数是因为它们是接受函数句柄(函数的指针)作为输入…...
基于“互联网+ 服务供应链”的汽车道路救援系统对策分析
1。 建立“互联网服务供应链”背景下汽车道路救援系统 基于互联网的汽车道路救援,两级服务供应链结构是由服务提供商、服务 集成商和客户组成。“互联网服务供应链”背景下汽车道路救援系统组成, 它是一种 B2B2C 的形式,与前述传统汽车道路…...
浅谈泛在电力物联网在电力设备状态在线监测中的应用
安科瑞 华楠 摘要:随着信息化水平的不断发展,泛在电力物联网的建设提上日程,这对提升变电站电力设备在线监测水平,推动智能电网发展具有重要的指导意义。对基于物联网的电力设备状态监测系统进行了研究,概括了泛在电力…...
低通滤波器和高通滤波器
应用于图像低通滤波器和高通滤波器的实现 需要用到傅里叶变换 #include <opencv2/opencv.hpp> #include <Eigen> #include <iostream> #include <vector> #include <cmath> #include <complex>#define M_PI 3.14159265358979323846…...
VS中插入Qt插件后配置项目笔记
Project下要创建四个文件夹: bin(输出目录\工作目录) 、include(头文件目录) 、lib(动态库目录) 、src(源码目录) 一、主项目模块配置: 1.配置属性——>常规——>输出目录加入(..\..\bin\) 2.配置属性——>调试——>工作目录加入($(OutDir)) 备注&am…...
Hugo·Stack主题·使用及修改
代码折叠 cp themes/hugo折-themt-saick/exampleSlte/config.yamsclass"codefold"><summary class"codefold__title"><span class"codefold__title-text">" {{ with .Get 0}}{{.}}{{else}}click to expand{{ end }} "&…...
实战:大数据Spark简介与docker-compose搭建独立集群
文章目录 前言技术积累Spark简介Spark核心功能及优势Spark运行架构 Spark独立集群搭建安装docker和docker-composedocker-compose编排docker-compose编排并运行容器 Spark集群官方案例测试写在最后 前言 很多同学都使用过经典的大数据分布式计算框架hadoop,其分布式…...
嵌入性视角下的企业集成创新网络演化过程
从嵌入性角度来看,集成创新网络以社会关系嵌入或结构嵌入的联结方式,实 现创新资源共享。由于规模经济和能力的差异,较高的信息复杂程度往往更强调网 络化和外部组织之间的联合而不是一体化。企业集成创新网络依靠创新网络结点上 企业的合…...
回归预测 | MATLAB实现FA-ELM萤火虫算法优化极限学习机多输入单输出回归预测(多指标,多图)
回归预测 | MATLAB实现FA-ELM萤火虫算法优化极限学习机多输入单输出回归预测(多指标,多图) 目录 回归预测 | MATLAB实现FA-ELM萤火虫算法优化极限学习机多输入单输出回归预测(多指标,多图)效果一览基本介绍…...
Heritrix3源码深度解析:从CrawlURI到ProcessorChain的执行流程
Heritrix3源码深度解析:从CrawlURI到ProcessorChain的执行流程 【免费下载链接】heritrix3 Heritrix is the Internet Archives open-source, extensible, web-scale, archival-quality web crawler project. 项目地址: https://gitcode.com/gh_mirrors/he/herit…...
让你的调试日志五彩斑斓:J-Link RTT高级封装技巧(支持中文、浮点数、十六进制)
让你的调试日志五彩斑斓:J-Link RTT高级封装技巧(支持中文、浮点数、十六进制) 调试是嵌入式开发中不可或缺的一环,而高效的调试工具能显著提升开发效率。J-Link RTT(Real Time Transfer)作为一种无需额外硬…...
用VSCode+PlatformIO给ESP32做个简易手表:基于LVGL和1.3寸屏的UI实战
基于LVGL的ESP32智能手表开发实战:从硬件驱动到UI设计全流程 在创客圈里,ESP32凭借其出色的性价比和丰富的功能接口,一直是物联网项目的热门选择。而当我们把目光投向更直观的人机交互领域时,LVGL(Light and Versatile…...
3个突破性技术,让抖音无水印视频下载效率提升200%
3个突破性技术,让抖音无水印视频下载效率提升200% 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support. …...
软文SEO的常见指标有哪些_如何撰写有吸引力的软文标题
<h2>软文SEO的常见指标有哪些</h2> <p>在当今的数字营销领域,软文(Soft Article)已经成为推动网站流量和品牌知名度的重要工具。要让软文真正发挥作用,我们必须了解软文SEO的常见指标,这些指标可以帮…...
迪文串口屏C51开发避坑指南:从ModBus ASCII模式到音乐播放实战
迪文串口屏C51开发实战:从ModBus ASCII到音乐播放的深度解析 迪文串口屏在工业控制领域占据重要地位,其C51开发环境为开发者提供了高度灵活的定制能力。本文将聚焦三个典型开发场景:ModBus ASCII模式移植、C51变量定义导致的定时问题以及音乐…...
突破资源封装壁垒:RePKG开源工具全维度应用指南
突破资源封装壁垒:RePKG开源工具全维度应用指南 【免费下载链接】repkg Wallpaper engine PKG extractor/TEX to image converter 项目地址: https://gitcode.com/gh_mirrors/re/repkg 问题:专用资源格式的困境与破局思路 如何突破专用格式的封锁…...
Kubernetes 环境下 SkyWalking 的高效部署与性能调优
1. Kubernetes 环境下的 SkyWalking 部署实战 第一次在 Kubernetes 上部署 SkyWalking 时,我踩了不少坑。记得当时为了调试一个存储配置问题,整整熬了两个通宵。现在回想起来,如果当时有人能给我一份详细的实战指南,至少能节省 80…...
ROS 实战指南:从 rosbag 高效提取 RGB 与深度图数据
1. rosbag基础操作与核心概念 在机器人开发领域,rosbag就像是一个万能的数据记录仪。想象一下你正在调试一个机器人视觉系统,传感器数据像流水一样不断涌来,这时候rosbag就能帮你把关键数据"冻住",方便后续反复分析。我…...
小米智能家居与Home Assistant深度整合方案
小米智能家居与Home Assistant深度整合方案 【免费下载链接】ha_xiaomi_home Xiaomi Home Integration for Home Assistant 项目地址: https://gitcode.com/GitHub_Trending/ha/ha_xiaomi_home 小米智能家居与Home Assistant的深度整合为用户提供了全面的智能设备控制解…...
