redisson 使用脚本实现判断元素不在队列中则插入的原子操作

embedded/2024/10/18 16:51:07/

脚本逻辑:

  1. 取出队列所有元素
  2. 遍历元素查找值是否存在
  3. 不存在则推入
final String scriptText = """local valuesInTarget = redis.call('lrange', KEYS[1], 0, -1);local index = 0;for i, v in ipairs(valuesInTarget) doif v == value thenindex = ibreakendendif index == 0 thenredis.call('rpush', KEYS[1], value);end""";
script.eval(RScript.Mode.READ_WRITE, scriptText, RScript.ReturnType.VALUE, List.of(REDIS_KEY_TARGET) // 对应脚本中KEYS数组的元素
);

http://www.ppmy.cn/embedded/38161.html

相关文章

密码学《图解密码技术》 记录学习 第十二章

目录 第十二章 12.1 骡子的锁匠铺 12.2 本章学习的内容 12.3 使用随机数的密码技术 12.4 随机数的性质 12.4.1 对随机数的性质进行分类 12.4.2 随机性 12.4.3 不可预测性 12.4.4 不可重现性 小测验 1 骰子 (答案见 1…

C++:AVL树

概念: 二叉搜索树虽可以缩短查找的效率,但如果数据有序或接近有序二叉搜索树将退化为单支树,查 找元素相当于在顺序表中搜索元素,效率低下。 如图所示,搜索二叉树不能面对右边的树,这种极端的情况&#xf…

pear + pecl 安装php扩展

pear https://pear.php.net/manual/en/installation.getting.php https://pear.php.net/go-pear.phar 让 CMD 支持 utf8 > chcp 65001 卸载 > php go-pear.phar uninstall 安装 > php go-pear.phar system 12 修改 12. Name of configuration file …

5月6(信息差)

🌍一次预测多个token,Meta新模型推理加速3倍,编程任务提高17% https://hub.baai.ac.cn/view/36857 🎄 LeetCode 周赛超越 80% 人类选手,推理性能超 Llama3-70B。 ✨ 我国量子计算机实现“四算合一” 实现通算、…

OSPF Stub区域

原理概述 OSPF 协议定义了多种区域( Area )类型,其中比较常见的有 Stub 区域和 Totally Stub 区域。区域的类型决定了在这个区域当中所存在的 LSA 的类型。 Stub 区域不允许 Type-4和 Type-5 LSA 进入,该区域会通过 Type-3 LSA…

第 8 章 电机测速(自学二刷笔记)

重要参考: 课程链接:https://www.bilibili.com/video/BV1Ci4y1L7ZZ 讲义链接:Introduction Autolabor-ROS机器人入门课程《ROS理论与实践》零基础教程 8.3.3 电机测速01_理论 测速实现是调速实现的前提,本节主要介绍AB相增量式编码器测速原理。 1.概…

密码学《图解密码技术》 记录学习 第十一章

目录 十一章 11.1 本章学习的内容 11.2 什么是密钥 11.2.1 密钥就是一个巨大的数字 DES 的密钥 三重 DES 的密钥 AES 的密钥 11.2.2 密钥与明文是等价的 11.2.3 密码算法与密钥 11.3各种不同的密钥 11.3.1 对称密码的密钥与公钥密码的密钥 11.3.2 消息认证码的密钥与…

【C++】每日一题 114 二叉树展开为链表

给你二叉树的根结点 root &#xff0c;请你将它展开为一个单链表&#xff1a; 展开后的单链表应该同样使用 TreeNode &#xff0c;其中 right 子指针指向链表中下一个结点&#xff0c;而左子指针始终为 null 。 展开后的单链表应该与二叉树 先序遍历 顺序相同。 #include <…