宜城网站开发,网络营销外包,网站排名推广工具,工信部网站报备目录 消息存储相关的配置★ 消息的存储介绍★ 消息过期时间及处理方式演示#xff1a;log.cleanup.policy 属性配置 ★ 修改指定主题的消息保存时间演示#xff1a;将 test2 主题下的消息的保存时间设为10个小时1、先查看test2主题下的配置2、然后设置消息的保存时间3、然后再… 目录 消息存储相关的配置★ 消息的存储介绍★ 消息过期时间及处理方式演示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指定要添加的配置属性该选项的值为应该符合“k1v1,k2[v1,v2,v2],k3v3”的形式。--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.ms360000001、先查看test2主题下的配置
没设置保存时间之前查看下配置发现什么都没有 查询的命令在下面【查看指定主题的配置】那里有介绍就是这个查寻命令 kafka-configs --bootstrap-server localhost:9092 ^--describe ^--entity-name test2 ^--entity-type topicscmak 界面也没有时间显示配置里面默认消息存放是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界面也可以直接修改和查看