topic

监控Kafka消费进度

最后都变了- 提交于 2020-01-25 17:21:24
使用Kafka作为消息中间件消费数据时,监控Kafka消费的进度很重要。其中,在监控消费进度的过程中,主要关注消费Lag。 常用监控Kafka消费进度的方法有三种,分别是使用Kafka自带的命令行工具、使用Kafka Consumer API和Kafka自带的JMX监控指标,这里介绍前两种方法。 注: 内网IP:10.12.100.126 10.12.100.127 10.12.100.128 外网IP:47.90.133.76 47.90.133.77 47.90.133.78 用户名:server1 server2 server3 1 使用kafka自带的命令行工具 针对Kafka高级消费API,使用kafka自带的命令行工具kafka-consumer-groups.sh脚本直接查看Kafka消费进度 1.1 列出存在的所有消费者组 (base) root@node3:/opt/kafka/kafka_2.11-0.10.2.2/bin# kafka-consumer-groups.sh new-consumer --bootstrap-server 10.12.100.126:9092,10.12.100.127:9092,10.12.100.128:9092 --list Note: This will only show information about

资料搜集-JAVA系统的梳理知识14-Kafka

梦想的初衷 提交于 2020-01-25 07:34:19
> 本文由 JavaGuide 读者推荐,JavaGuide 对文章进行了整理排版!原文地址:https://www.wmyskxz.com/2019/07/17/kafka-ru-men-jiu-zhe-yi-pian/ , 作者:我没有三颗心脏。 # 一、Kafka 简介 ------ ## Kafka 创建背景 **Kafka** 是一个消息系统,原本开发自 LinkedIn,用作 LinkedIn 的活动流(Activity Stream)和运营数据处理管道(Pipeline)的基础。现在它已被[多家不同类型的公司](https://cwiki.apache.org/confluence/display/KAFKA/Powered+By) 作为多种类型的数据管道和消息系统使用。 **活动流数据**是几乎所有站点在对其网站使用情况做报表时都要用到的数据中最常规的部分。活动数据包括页面访问量(Page View)、被查看内容方面的信息以及搜索情况等内容。这种数据通常的处理方式是先把各种活动以日志的形式写入某种文件,然后周期性地对这些文件进行统计分析。**运营数据**指的是服务器的性能数据(CPU、IO 使用率、请求时间、服务日志等等数据)。运营数据的统计方法种类繁多。 近年来,活动和运营数据处理已经成为了网站软件产品特性中一个至关重要的组成部分

Kafka消费者APi

时光怂恿深爱的人放手 提交于 2020-01-25 02:04:52
Kafka客户端从集群中消费消息,并透明地处理kafka集群中出现故障服务器,透明地调节适应集群中变化的数据分区。也和服务器交互,平衡均衡消费者。 public class KafkaConsumer<K,V> extends Object implements Consumer<K,V> 消费者TCP长连接到broker来拉取消息。故障导致的消费者关闭失败,将会泄露这些连接,消费者不是线程安全的,可以查看更多关于 Multi-threaded(多线程) 处理的细节。 跨版本兼容性 该客户端可以与0.10.0或更新版本的broker集群进行通信。较早的版本可能不支持某些功能。例如, 0.10.0 broker不支持 offsetsForTimes ,因为此功能是在版本 0.10.1 中添加的。 如果你调用broker版本不可用的API时,将报 UnsupportedVersionException 异常。 偏移量和消费者的位置 kafka为分区中的每条消息保存一个 偏移量(offset) ,这个 偏移量 是该分区中一条消息的唯一标示符。也表示消费者在分区的位置。例如,一个位置是5的消费者(说明已经消费了0到4的消息),下一个接收消息的偏移量为5的消息。实际上有两个与消费者相关的“位置”概念: 消费者的位置给出了下一条记录的偏移量。它比消费者在该分区中看到的最大偏移量要大一个。

kafka 删除topic

ぃ、小莉子 提交于 2020-01-25 01:12:07
两种方法: 一、修改配置文件server.properties 添加如下配置: delete.topic.enable=true 说明:官方给的文档说明“Enables delete topic. Delete topic through the admin tool will have no effect if this config is turned off”,意思就是说如果想删除topic,此项配置必须为true,默认为false。配置完重启kafka、zookeeper。 二、如果不想修改配置,也可以彻底删除topic 1、删除kafka存储目录(server.propertiewenjian log.dirs配置,默认为“/tmp/kafka-logs”)下对应的topic。(不同broker下存储的topic不一定相同,所有broker都要看一下) 2、进入zookeeper客户端删掉对应topic zkCli.sh -server 127.0.0.1:42182 找到topic目录 ls /brokers/topics 删掉对应topic rmr /brokers/topic/topic-name 找到目录 ls /config/topics 删掉对应topic rmr /config/topics/topic-name 以上两步全部执行才算彻底删除topic --

kafka操作清单

半腔热情 提交于 2020-01-25 01:09:18
1. 查看topic个数 ./kafka-topics.sh --list --zookeeper dwtest-data2:2181,dwtest-data3:2181,dwtest-data4:2181 2. 查看topic的生产者与消费者消息 ./kafka-topics.sh --describe --zookeeper dwtest-data2:2181,dwtest-data3:2181,dwtest-data4:2181 --topic test leader:负责处理消息的读和写,leader是从所有节点中随机选择的. Replicas:列出了所有的副本节点,不管节点是否在服务中. Lsr:是正在服务中的节点. 3. 生产者 bin/kafka-console-producer.sh --broker-list kafka1:9092 --topic test bin/kafka-console-producer.sh --broker-list 192.168.100.125:9092 --topic DreamTopic1 4.消费者 # 旧版本方式bin/kafka-console-consumer.sh --zookeeper 192.168.100.125:2181 --topic test --from-beginning bin/kafka

Kafka 0.8 配置参数解析

拜拜、爱过 提交于 2020-01-25 00:52:02
http://kafka.apache.org/documentation.html#configuration Broker Configs 4个必填参数, broker.id Each broker is uniquely identified by a non-negative integer id broker唯一标识,broker可以在不同的host或port,但必须保证id唯一 log.dirs (/tmp/kafka-logs) 日志文件存放的目录 可以用逗号隔开多个目录,当创建partitions时,会自动挑一个已创建partition最少的目录创建 因为Kafka必须充分利用磁盘资源,所以要让partititons均匀分布在所有disks上,至少每个disk创建一个目录 port (6667) broker server所在端口 zookeeper.connect zk的地址,hostname1:port1,hostname2:port2 可选的重要参数, advertised.host.name (null) 设置暴露给其他Consumer,producer,broker的域名 不设置会暴露默认域名,域名解析比较麻烦,这里可以设为ip message.max.bytes (1000000) broker可以接收的message的最大size

Kafka参数配置详解

一世执手 提交于 2020-01-25 00:51:03
配置参数   参数说明 broker.id =1 每一个broker在集群中的唯一标示,要求是正数。当该服务器的 IP地址发生改变时,如果broker.id没有变化,则不会影响consumer s的消息情况 log.dirs=/log/kafka-logs kafka数据的存放地址,多个地址的话用逗号分割/log/kafkalogs-1,/log/kafka-logs-2 port =9092 broker server服务端口 message.max.bytes =6525000 表示消息体的最大大小,单位是字节 num.network.threads =4 broker处理消息的最大线程数,一般情况下不需要去修改 background.threads =4 一些后台任务处理的线程数,例如过期消息文件的删除等,一般 情况下不需要去做修改 queued.max.requests =500 等待IO线程处理的请求队列最大数,若是等待IO的请求超过这个 数值,那么会停止接受外部消息,是一种自我保护机制 host.name broker的主机地址,若是设置了,那么会绑定到这个地址上,若 是没有,会绑定到所有的接口上,并将其中之一发送到ZK,一般 不设置 socket.send.buffer.bytes=100*1024 socket的发送缓冲区,socket的调优参数SO_SNDBUFF

Kafka 常用命令总结

为君一笑 提交于 2020-01-24 16:43:11
技术博客: https://github.com/yongxinz/tech-blog 同时,也欢迎关注我的微信公众号 AlwaysBeta ,更多精彩内容等你来。 在 0.9.0.0 之后的 Kafka,出现了几个新变动,一个是在 Server 端增加了 GroupCoordinator 这个角色,另一个较大的变动是将 topic 的 offset 信息由之前存储在 zookeeper 上改为存储到一个特殊的 topic(__consumer_offsets)中。 本文测试版本:kafka_2.11-2.2.0 启动 Kafka 后台常驻方式,带上参数 -daemon ,如: /usr/local/kafka/bin/kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties 指定 JMX port 端口启动,指定 jmx,可以方便监控 Kafka 集群 JMX_PORT=9991 /usr/local/kafka/bin/kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties 停止 Kafka /usr/local/kafka/bin/kafka-server-stop.sh Topic 创建 Topic

4.Springboot2.x集成 RabbitMQ的几种常见用法

北战南征 提交于 2020-01-24 11:17:05
Spring Boot 集成 RabbitMQ的几种常见用法 前言 Spring Boot 集成 RabbitMQ 非常简单,如果只是简单的使用配置非常少,Spring Boot 提供了 spring-boot-starter-amqp 项目对消息各种支持。 引入依赖 compile group: 'org.springframework.boot', name: 'spring-boot-starter-amqp' 添加配置文件yml server : port : 8001 spring : application : name : zoo - plus - rabbitmq rabbitmq : virtual-host : / host : localhost port : 5672 username : guest password : guest 直接通过队列(单生-单消) 我们需要先配置队列 /** * @author: 谢飞 */ @Configuration public class RabbitConfig { @Bean public Queue helloQueue ( ) { return new Queue ( "hello-queue" ) ; // return QueueBuilder.durable("hello-queue").build();

了解Kafka

荒凉一梦 提交于 2020-01-24 06:55:10
Kafka简介 Kafka是一种分布式的,基于发布/订阅的消息系统。主要设计目标如下: 以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间复杂度的访问性能 高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条以上消息的传输 支持Kafka Server间的消息分区,及分布式消费,同时保证每个Partition内的消息顺序传输 同时支持离线数据处理和实时数据处理 Scale out:支持在线水平扩展 Kafka架构 Kafka术语解释 Borker:Kafka集群包含一个或多个服务器,这种服务器被称为broker Topic:每条发布到Kafka集群的消息都有一个类别,这个类别被称为Topic。(物理上不同Topic的消息分开存储,逻辑上一个Topic的消息虽然保存于一个或多个broker上但用户只需指定消息的Topic即可生产或消费数据而不必关心数据存于何处) Partition:Parition是物理上的概念,每个Topic包含一个或多个Partition. Producer:负责发布消息到Kafka broker Consumer:消息消费者,向Kafka broker读取消息的客户端。 Consumer Group :每个Consumer属于一个特定的Consumer Group(可为每个Consumer指定group name