RedissonClient中Stream流的简单使用

1、pub端

//获取一个流
RStream rStream = redissonClient.getStream("testStream");
//创建一个map,添加数据
Map<String, Object> rr = new HashMap<>();
rr.put("xx", RandomUtil.randomString(5));
//添加到流
rStream.addAll(rr);

rStream支持的add函数如下:

2、sub端

sub端订阅的方法有三种:

1、调用read方法

2、调用range方法

3、调用readGroup方法

基于组的订阅如下:

RStream rStream = redissonClient.getStream("testStream");
//创建分组
rStream.createGroup("default",StreamMessageId.ALL);
new Thread(new Runnable() {@Overridepublic void run() {while (true) {try {
//读取default分组中,消费者名词为consumer_1,每次读取三个,30秒阻塞。Map<StreamMessageId, Map<String,Object>> ss = rStream.readGroup("default", "consumer_1", 3, 30, TimeUnit.SECONDS);Map<StreamMessageId, Map<String,Object>> ss = rStream.readGroup("default","1234",3,StreamMessageId.ALL);for (StreamMessageId streamMessageId : ss.keySet()) {
System.out.println(streamMessageId.toString()+"__"+ss.get(streamMessageId));rStream.remove(streamMessageId);}} catch (Exception e) {e.printStackTrace();}}}
}).start();

分组的好处是,假如有10个订阅者同时在一个分组,那么分组中的消息只会给其中某一个订阅者。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/99707.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

API攻防-接口安全SOAPOpenAPIRESTful分类特征导入项目联动检测

文章目录 概述什么是接口&#xff1f; 1、API分类特征SOAP - WSDLWeb services 三种基本元素&#xff1a; OpenApi - Swagger UISpringboot Actuator 2、API检测流程Method&#xff1a;请求方法URL&#xff1a;唯一资源定位符Params&#xff1a;请求参数Authorization&#xff…

JVM篇---第四篇

系列文章目录 文章目录 系列文章目录一、描述一下JVM加载class文件的原理机制?二、说说Java对象创建过程三、知道类的生命周期吗?一、描述一下JVM加载class文件的原理机制? JVM中类的装载是由类加载器(ClassLoader)和它的子类来实现的,Java中的类加载器是一个重要 的Jav…

日常学习记录随笔-大数据之日志(hadoop)收集实战

数据收集(nginx)--->数据分析---> 数据清洗--->数据聚合计算---数据展示 可能涉及到zabix 做任务调度我们的项目 电商日志分析 比如说我们现在有一个系统,我们的数仓建立也要有一个主题 我这个项目是什么我要干什么定义方向 对用户进行分析,用户信息 要懂整个数据的流…

三十、【进阶】B树的演变过程

1、索引结构 &#xff08;1&#xff09;二叉树 &#xff08;2&#xff09;B-Tree树 B-Tree树最大度数为5&#xff0c;代表每一个节点最多存储4个key(每个节点最多存储4个数据)&#xff0c;5个指针(可以指向5个子节点)。 2、演变过程&#xff08;最大度数为5&#xff09; &…

基于Spring Boot的网上租贸系统设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言具体实现截图论文参考详细视频演示代码参考源码获取 前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技…

请问耳机降噪是如何实现的编程零碎知识就业指导词汇积累

目录 请问耳机降噪是如何实现的 编程零碎知识 就业指导 词汇积累 自杀率前五国家 请问耳机降噪是如何实现的 耳机降噪&#xff08;Noise-Cancelling Headphones&#xff09;是一种通过使用先进的技术来减少或消除外部环境噪音&#xff0c;以提供更清晰、更安静的音频体验的…

保研经历分享(一)

这个系列的文章主要是想记录一下自己大学期间最重要的一件事&#xff08;保研!!&#xff09;的经历、过程&#xff0c;外加一些保研流程介绍、面试经验、院校投递、踩坑经历&#xff0c;主要给学弟学妹们避雷&#xff0c;也做一些借鉴吧~ 这一篇主要是对保研过程的一些介绍&…

注意分类讨论完整性:CF1371F

https://www.luogu.com.cn/problem/CF1371F 此题要分类讨论完全 容易漏掉 >>>>><<<<< 在左右或中间的情况 多对拍 #include<bits/stdc.h> using namespace std; //#define int long long inline int read(){int x0,f1;char chgetchar(…

redis集群某主节点宕机,其从节点未自动接管(故障转移未生效)问题解决

故障转移未生效可能有很多种原因&#xff0c;这里只记录本次排查原因&#xff1a; redis集群模式 三主三从 过程&#xff1a;初始集群可以正常启动&#xff0c;想模拟故障转移情况&#xff0c;手动kill某主节点的端口进程&#xff0c;集群状态就为fail了&#xff0c;其从节点…

全志R128芯片应用开发案例——驱动 WS2812 流水灯

驱动 WS2812 流水灯 本文案例代码下载地址驱动 WS2812 流水灯案例代码https://www.aw-ol.com/downloads?cat24 R128-DevKit 拥有4颗 WS2812 LED&#xff0c;本文将详细叙述如何点亮他们。 LEDC 模块简介 LEDC 硬件方框图如上图所示&#xff0c;CPU 通过 APB 总线操作 LEDC 寄…

【智能家居项目】裸机版本——认识esp8266 | 网络子系统

&#x1f431;作者&#xff1a;一只大喵咪1201 &#x1f431;专栏&#xff1a;《智能家居项目》 &#x1f525;格言&#xff1a;你只管努力&#xff0c;剩下的交给时间&#xff01; 如上图整个智能家居程序总体框架图&#xff0c;还剩下网络子系统没有实现&#xff0c;以及最终…

Idea JavaWeb项目,继承自HttpFilter的过滤器,启动Tomcat时部署工件出错

JDK版本&#xff1a;1.8 Tomcat版本&#xff1a;8.5 10-Oct-2023 13:55:17.586 严重 [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.core.StandardContext.startInternal One or more Filters failed to start. Full details will be found in the appropriate conta…

2023年中国涂料助剂市场发展历程及趋势分析:中高端助剂市场规模将会迎来新的增长[图]

涂料助剂又称油漆辅料&#xff0c;系配制涂料的辅助材料&#xff0c;能改进涂料性能&#xff0c;促进涂膜形成。种类很多&#xff0c;包括催干剂、增韧剂、乳化剂、增稠剂、颜料分散剂、消泡剂、流平剂、抗结皮剂、消光剂、光稳定剂、防霉剂、抗静电剂等&#xff0c;其中用量最…

虹科分享 | 谷歌Vertex AI平台使用Redis搭建大语言模型

最近&#xff0c;谷歌宣布旗下Vertex人工智能平台最新支持了生成式人工智能&#xff0c;是什么支持语言模型实现与人类的语言交互呢&#xff1f;语言模型的大量知识储备从何而来呢&#xff1f; 一、语言模型构件 应用程序生成、理解和使用人类语言的能力正变得越来越重要&…

mysql数据库提示只读错误解决方案

问题来源&#xff1a;使用网站程序发现登录不了&#xff0c;也注册不了 重新安装程序时提示&#xff1a; The MySQL server is running with the –read-only option so it cannot execute this statement 这个错误信息意味着MySQL服务器正在读取模式&#xff08;read-only …

npm/yarn查看当前网源与设置其它网源

npm 查看当前源 npm get registry npm 设置其他源 npm config set registry https://registry.npmjs.org yarn 查看当前源 yarn config get registry yarn 恢复&#xff08;设置&#xff09;默认源 yarn config set registry https://registry.yarnpkg.com 镜像源地址…

flask-sqlalchemy实现读写分离完整版

1. 依赖版本: alembic==1.6.5 click==8.0.1 colorama==0.4.4 Flask==1.1.2 Flask-Migrate==2.7.0 Flask-Script==2.0.6 Flask-SQLAlchemy==2.4.4 greenlet==1.1.0 itsdangerous==2.0.1 Jinja2==3.0.1 Mako==1.1.4 MarkupSafe==2.0.1 protobuf==3.17.3 PyMySQL==1.0.2 python-…

java日志框架详解-Log4j2

一、概述 Apache Log4j 2 &#xff08;Log4j – Apache Log4j 2&#xff09;是对Log4j的升级&#xff0c;它比其前身Log4j 1.x提供了重大改进&#xff0c;并参考了Logback中优秀的设计&#xff0c;同时修复了Logback架构中的一些问题。被誉为是目前最优秀的Java日志框架&#x…

Mac电脑版鼠标连点工具 RapidClick for Mac

RapidClick是一款简单实用的自动点击软件。它可以模拟鼠标点击操作&#xff0c;以便快速、连续地点击屏幕上的特定位置。该软件通常用于自动执行重复性的点击任务或加快某些操作的速度。 以下是RapidClick可能提供的一些主要功能和特点&#xff1a; 自动点击功能&#xff1a;R…

prototype-based learning algorithm(原型学习)

Prototype-based learning&#xff08;原型学习&#xff09;是一种机器学习方法&#xff0c;它的核心思想是通过存储一组代表性的样本&#xff08;原型&#xff09;&#xff0c;然后使用这些原型来进行分类、回归或聚类等任务。这种方法模拟了人类学习的方式&#xff0c;人们往…