08、Kafka ------ 消息存储相关的配置-->消息过期时间设置、查看主题下的消息存活时间等配置

目录

  • 消息存储相关的配置
    • ★ 消息的存储介绍
    • ★ 消息过期时间及处理方式
      • 演示:log.cleanup.policy 属性配置
    • ★ 修改指定主题的消息保存时间
      • 演示:将 test2 主题下的消息的保存时间设为10个小时
        • 1、先查看test2主题下的配置
        • 2、然后设置消息的保存时间
        • 3、然后再查一遍test2的配置,看是否修改成功
    • ★ 查看指定主题的配置
      • 命令1:查看所有对象的信息
      • 命令2:查看特定主题的信息

消息存储相关的配置



★ 消息的存储介绍

Kafka的消息主题与JMS、AMQP的消息队列是不同:JMS、AMQP消息队列中的消息只能被消费一次,当消息被消费时,这条消息就会被移出队列;

但Kafka主题中的消息完全可以被多次重复消费,甚至可以从指定下标处开始读取消息。

从某种角度来看,Kafka主题中的消息,就像数据表中的记录,它会在一段时间内持久化保存,客户端(消费者)可根据需要反复地读取它们,

这正是一开始就介绍过的:Kafka并不是单纯的消息组件,而是“开源的分布式事件流平台(open-source distributed event streaming platform)”。



★ 消息过期时间及处理方式

Kafka主题中的消息默认保存期限为7天,这个默认保存时间可通过server.propeties文件中的 log.retention.hours 属性进行修改。

在这里插入图片描述



当数据过期之后,Kafka可以对数据进行两种处理:delete或compact,其中

 - delete 表示直接删除过期数据,- compact 则表示对数据进行压缩整理,更多是偏向整理。

演示:log.cleanup.policy 属性配置

对过期消息的处理设置:设置消息过期后就删除掉

通过server.propeties文件中的 log.cleanup.policy 属性进行配置。

在这里插入图片描述



★ 修改指定主题的消息保存时间

在 server.properties 文件中配置的参数,它们都是对整个Broker生效的。

有些时候,可能希望仅修改特定主题的某些配置,此时就需要对特定主题进行修改了。

修改指定主题的额外属性推荐使用 kafka-configs.bat(.sh)命令,该工具命令可指定如下常用选项:

 --alter:修改。--describe:显示。该选项与--alter选项只能选择其中之一。--delete-config:指定要删除的配置属性,该选项的值应该符合“k1,k2”的形式。--add-config:指定要添加的配置属性,该选项的值为应该符合“k1=v1,k2=[v1,v2,v2],k3=v3”的形式。--bootstrap-server:指定要连接的服务器。--entity-type:指定要配置的实体类型,该选项可支持topics(主题)、clients(客户端)、users(用户)、brokers(代理)和broker-loggers(代理日志)这些值。--entity-name:指定要配置的实体的名称,该选项与--entity-type结合使用,用于指定主题名,客户端ID、用户名、Broker ID。

修改指定主题的保存时间,用 “retention.ms” 属性。



演示:将 test2 主题下的消息的保存时间设为10个小时

–alter ^ 表示要修改
–entity-name test2 ^ 表示修改的是 test2
–entity-type topics ^ 表示修改的类型是 topics 主题类型

 kafka-configs --bootstrap-server localhost:9092 ^--alter ^--entity-name test2 ^--entity-type topics ^--add-config retention.ms=36000000
1、先查看test2主题下的配置

没设置保存时间之前,查看下配置:发现什么都没有
查询的命令在下面【查看指定主题的配置】那里有介绍:就是这个查寻命令

 kafka-configs --bootstrap-server localhost:9092 ^--describe ^--entity-name test2 ^--entity-type topics

在这里插入图片描述

cmak 界面也没有时间显示:配置里面默认消息存放是7天,这里没有显示

在这里插入图片描述

2、然后设置消息的保存时间

然后设置test2主题下的消息保存时间为10小时:

在这里插入图片描述

3、然后再查一遍test2的配置,看是否修改成功

在这里插入图片描述

CMAK 界面查看也有了消息的存活时间:

在这里插入图片描述



★ 查看指定主题的配置

查看指定主题的配置可用两条命令:

命令1:查看所有对象的信息

1、使用 kafka-configs.bat 命令的 --describe 子命令
——该命令可查看所有对象的信息

–bootstrap-server localhost:9092 ^ 这个就是指定连接哪个kafka服务器地址

 kafka-configs --bootstrap-server localhost:9092 ^--describe ^--entity-name test2 ^--entity-type topics

直接查9092节点的kafka下的test2主题的所有对象详细,所以描述的比较少。
可以看到test2主题的配置中,该主题消息的存活时间是10小时。
在这里插入图片描述



命令2:查看特定主题的信息

2、使用 kafka-topics.bat 命令的 --describe子 命令
——该命令只能查看特定主题的信息

kafka-topics --bootstrap-server localhost:9092 ^--topic test2 ^--describe

因为是专门查看主题的,所以不仅有主题的配置信息,还有该主题的分区信息。
在这里插入图片描述

可以在CMAK界面查看这个主题的配置:
不仅可以用命令修改主题配置,在这个CMAK界面也可以直接修改和查看:

在这里插入图片描述

在这里插入图片描述

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

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

相关文章

优化 ParamValidator,让编辑器Pycharm智能提示校验方法

目录 一、前置说明1、总体目录2、相关回顾3、本节目标 二、操作步骤1、项目目录2、代码实现3、测试代码4、日志输出 三、后置说明1、要点小结2、下节准备 一、前置说明 1、总体目录 《 pyparamvalidate 参数校验器,从编码到发布全过程》 2、相关回顾 基于 Valid…

美信科技盘古信息智能车间项目成功验收,打造电子元器件数字化工厂标杆

作为一家深耕于磁性元器件领域近二十年的制造企业,广东美信科技股份有限公司(以下简称“美信科技”)始终秉承着“为电磁赋能,创工业至美”的企业使命,为中国制造卓越发展贡献力量。在当今数字化时代,制造企…

PanTools v1.0.11 多网盘批量管理工具 批量分享、转存、检测等等

软件介绍 一款针对热门网盘的文件管理、批量分享、批量转存、批量修改重命名、批量检测链接、跨账号移动文件、多账号文件搜索等,支持不同网盘的不同账号的资源操作,各种资源导出,并支持资源探索功能,优质资源一键转存保存&#…

Hive基础知识(八):Hive对数据库的增删改查操作

1. 创建数据库 CREATE DATABASE [IF NOT EXISTS] database_name [COMMENT database_comment]#注释 [LOCATION hdfs_path]#指定当前库的hdfs目录 [WITH DBPROPERTIES (property_nameproperty_value,...)]; #备注创建作者和创建时间 1)创建一个数据库,数据…

[笔记]学习做微信小程序

学习视频:前端微信小程序开发教程 本篇文章 只对关键内容笔记,用于自用。 这里写目录标题 注册、下载、安装我的小程序ID:wxe1fbd6939d8797d8我的小游戏ID:wx8b2c3e47ac9127b7开发者工具外观代理设置 创建第一个小程序主界面5个组…

PyTorch: torch.nn 子模块及其在循环神经网络中的应用

目录 torch.nn子模块详解 nn.utils.rnn.PackedSequence 参数说明 注意事项 示例代码 nn.utils.rnn.pack_padded_sequence 参数说明 返回值 注意事项 示例代码 nn.utils.rnn.pad_packed_sequence 参数说明 返回值 注意事项 示例代码 nn.utils.rnn.pad_sequence …

华清远见作业第二十五天——IO(第八天)

思维导图&#xff1a; 使用信号灯集完成三个进程的同步&#xff0c;A进程输出字符A&#xff0c;B进程输出字符B&#xff0c;C进程输出字符C&#xff0c;要求输出结果为ABCABCABCABCABC 代码&#xff1a; #include<stdio.h> #include<string.h> #include<stdli…

面试题-DAG 有向无环图

有向无环图用于解决前后依赖问题&#xff0c;在Apollo中用于各个组件的依赖管理。 在算法面试中&#xff0c;有很多相关题目 比如排课问题&#xff0c;有先修课比如启动问题&#xff0c;需要先启动1&#xff0c;才能启动2 概念 顶点&#xff1a; 图中的一个点&#xff0c;比…

企业用WhatsApp营销的好处有哪些?

1.建立良好的客户关系 WhatsApp是全球用户喜爱的即时通信软件&#xff0c;使用WhatsApp与客户沟通&#xff0c;可拉进企业和客户双方的距离。使用WhatsApp会话和消息推送功能&#xff0c;企业和用户可实时开展消息对话&#xff0c;及时解决客户咨询与疑虑&#xff0c;构建便捷…

pythroch abaconda 安装 cuda 版本确定

一、简述 公司有一个深度学习的项目&#xff0c;由于目前没有项目。时间也有恰好可以一起学习一下 1、下载abaconda https://repo.anaconda.com/archive/ 2、安装 环境变量要✔ 其他一直下一步 3、测试 (base) C:\Users\alber>conda -V conda 23.1.0(base) C:\User…

Redis之集群方案比较

哨兵模式 在redis3.0以前的版本要实现集群一般是借助哨兵sentinel工具来监控master节点的状态&#xff0c;如果master节点异常&#xff0c;则会做主从切换&#xff0c;将某一台slave作为master&#xff0c;哨兵的配置略微复杂&#xff0c;并且性能和高可用性等各方面表现一般&a…

Map与JSONObject区别

相同点&#xff1a; 都可以存key-value&#xff1b;key是唯一的,如果key重复了会覆盖前面的 不同点&#xff1a; &#xff08;1&#xff09;JSONObject 不可以存空&#xff0c;Map可以存空。 &#xff08;2&#xff09;Map由jdk提供&#xff0c;JsonObject需要第三方jar包提供。…