当前位置: 首页 > news >正文

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界面也可以直接修改和查看:

在这里插入图片描述

在这里插入图片描述

相关文章:

  • 计算机组成原理-程序中断(基本概念 中断分类 流程 )
  • 详解Java之Spring框架中事务管理的艺术
  • 【进程调度】基于优先级的轮转调度C++实现算法
  • 力扣2182.构造限制重复的字符串
  • 代码随想录算法训练营第四天|24. 两两交换链表中的节点,19.删除链表的倒数第N个节点,面试题 02.07. 链表相交,142.环形链表II,总结
  • 1panel中的sftpgo webadmin 更新修改docker容器文件的配置教程
  • 基于FFmpeg的简单Android视频播放器
  • 生物信息学中的可重复性研究
  • 大模型实战营Day3 作业
  • 【读书笔记】网空态势感知理论与模型(十)
  • SOMEIP学习总结
  • 二叉树的中序遍历【二叉树】【递归】
  • AI手写数字识别(二)
  • ES 之索引和文档
  • Jenkins-执行脚本案例-初步认识JenKins的使用
  • [译] 理解数组在 PHP 内部的实现(给PHP开发者的PHP源码-第四部分)
  • ECMAScript入门(七)--Module语法
  • JAVA并发编程--1.基础概念
  • java小心机(3)| 浅析finalize()
  • MySQL的数据类型
  • RxJS: 简单入门
  • unity如何实现一个固定宽度的orthagraphic相机
  • 爱情 北京女病人
  • 半理解系列--Promise的进化史
  • 包装类对象
  • 基于阿里云移动推送的移动应用推送模式最佳实践
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 扑朔迷离的属性和特性【彻底弄清】
  • 网页视频流m3u8/ts视频下载
  • 协程
  • 一个项目push到多个远程Git仓库
  • 翻译 | The Principles of OOD 面向对象设计原则
  • ​LeetCode解法汇总2808. 使循环数组所有元素相等的最少秒数
  • ​如何防止网络攻击?
  • # 日期待t_最值得等的SUV奥迪Q9:空间比MPV还大,或搭4.0T,香
  • (173)FPGA约束:单周期时序分析或默认时序分析
  • (39)STM32——FLASH闪存
  • (k8s中)docker netty OOM问题记录
  • (TipsTricks)用客户端模板精简JavaScript代码
  • (含react-draggable库以及相关BUG如何解决)固定在左上方某盒子内(如按钮)添加可拖动功能,使用react hook语法实现
  • (十三)Flask之特殊装饰器详解
  • (实战)静默dbca安装创建数据库 --参数说明+举例
  • (一) storm的集群安装与配置
  • (转)JVM内存分配 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
  • (转)关于pipe()的详细解析
  • (轉貼)《OOD启思录》:61条面向对象设计的经验原则 (OO)
  • .NET Core WebAPI中使用swagger版本控制,添加注释
  • .NET MAUI学习笔记——2.构建第一个程序_初级篇
  • .net 发送邮件
  • .NET 应用架构指导 V2 学习笔记(一) 软件架构的关键原则
  • .NET/C# 解压 Zip 文件时出现异常:System.IO.InvalidDataException: 找不到中央目录结尾记录。
  • .NET简谈互操作(五:基础知识之Dynamic平台调用)
  • [20180312]进程管理其中的SQL Server进程占用内存远远大于SQL server内部统计出来的内存...
  • [2024最新教程]地表最强AGI:Claude 3注册账号/登录账号/访问方法,小白教程包教包会
  • [Android Studio 权威教程]断点调试和高级调试