TDH-kafka
一、kafka原理:
1.broker:一个kafka实例,多个broker组成kafka集群;
2.topic:逻辑概念,同一类数据的集合,可以看做一张表;
3.producer:将数据写入topic,作为broker写数据的客户端;
4.consumer:从topic中取数据,作为broker消费数据的客户端;
5.partition:物理概念,一个topic分多个分区,分区内数据有序的消息队列,分区是一个文件夹形式,里面保存数据和索引文件;
6.replication:副本数,保存在不同的broker;
7.Consumer Group(CG, 消费者组):
一条消息可以发送给多个不同的CG,但一个CG中只能有一个Consumer读取该消息;
8.Zookeeper:
Kafka将元数据保存在Zookeeper中负责Kafka集群管理,包括配置管理、 动态扩展、 Broker负载均衡、 Leader选举,以及
Consumer Group变化时的Rebalance等;
9.Offset:是用于定位分区中消息的顺序编号;
10.00000000000000000000.index:内容是offset+position;
00000000000000000000.timeindex:内容是timestamp+offset;
11.Kafka Controller Leader:由zk选举出来,负责管理Kafka集群的分区和副本状态,避免分区副本直接在Zookeeper
上注册Watcher和竞争创建临时Znode,导致Zookeeper集群负载过重
12. Kafka Partition Leader:Kafka Controller Leader负责Partition Leader的选举
Partition Leader负责跟踪和维护ISR;
Partition Follower定期从Leader同步数据;
13.常用指令:
查看topic列表
./kafka-topic.sh --zookeeper tdh-24:2181 --list
创建topic
./kafka-topic.sh --zookeeper tdh-24:2181 --create --topic demo -- partitions 3 --replication-factor 1
查看topic描述
./kafka-topic.sh --zookeeper tdh-24:2181 --describe --topic demo
删除topic
./kafka-topic.sh --zookeeper tdh-24:2181 --delete --topic demo 标记删除 后台进程删除
生产--针对某topic
./kafka-console-producer.sh --broker-list tdh-24:9092, tdh-25:9092 --topic demo
消费--针对某topic
./kafka-console-custmer.sh --bootstrap-server tdh-24:9092 --topic demo
消费--针对某topic.重新消费
./kafka-console-custmer.sh --bootstrap-server tdh-24:9092 --topic demo --from begining --consumer -property group.id=00001test
查看某一group的topic
./kafka-cusumer-group.sh --bootstrap-server tdh-24:9092 --list
./kafka-streams-applications-reset.sh --zookeeper tdh-24:2181 --bootstrap servers tdh-24:9092 --input topics demo
application -id 00001test 重新消费
TDH-kafka的更多相关文章
- flume集成kafka(kafka开启kerberos)配置
根据flume官网:当kafka涉及kerberos认证: 涉及两点配置,如下: 配置一:见下实例中红色部分 配置conf实例: [root@gz237-107 conf]# cat flume_sl ...
- Spark踩坑记——Spark Streaming+Kafka
[TOC] 前言 在WeTest舆情项目中,需要对每天千万级的游戏评论信息进行词频统计,在生产者一端,我们将数据按照每天的拉取时间存入了Kafka当中,而在消费者一端,我们利用了spark strea ...
- 消息队列 Kafka 的基本知识及 .NET Core 客户端
前言 最新项目中要用到消息队列来做消息的传输,之所以选着 Kafka 是因为要配合其他 java 项目中,所以就对 Kafka 了解了一下,也算是做个笔记吧. 本篇不谈论 Kafka 和其他的一些消息 ...
- kafka学习笔记:知识点整理
一.为什么需要消息系统 1.解耦: 允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束. 2.冗余: 消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险. ...
- .net windows Kafka 安装与使用入门(入门笔记)
完整解决方案请参考: Setting Up and Running Apache Kafka on Windows OS 在环境搭建过程中遇到两个问题,在这里先列出来,以方便查询: 1. \Jav ...
- kafka配置与使用实例
kafka作为消息队列,在与netty.多线程配合使用时,可以达到高效的消息队列
- kafka源码分析之一server启动分析
0. 关键概念 关键概念 Concepts Function Topic 用于划分Message的逻辑概念,一个Topic可以分布在多个Broker上. Partition 是Kafka中横向扩展和一 ...
- Kafka副本管理—— 为何去掉replica.lag.max.messages参数
今天查看Kafka 0.10.0的官方文档,发现了这样一句话:Configuration parameter replica.lag.max.messages was removed. Partiti ...
- Kafka:主要参数详解(转)
原文地址:http://kafka.apache.org/documentation.html ############################# System ############### ...
- kafka
2016-11-13 20:48:43 简单说明什么是kafka? Apache kafka是消息中间件的一种,我发现很多人不知道消息中间件是什么,在开始学习之前,我这边就先简单的解释一下什么是消息 ...
随机推荐
- FusionCharts Free 甘特图
用FusionCharts做甘特图 1.同步方式(用xml格式字符) 前台aspx代码 <!DOCTYPE html> <html xmlns="http://www.w3 ...
- System.exit(0);和finish();,push原理
今天师姐问我安卓后台的问题,想起几年前做进制转换的时候特意研究了一下怎么才能「不驻留内存地退出」.虽然Android不推荐用户手动关闭进程,但是在那个内存捉襟见肘的年代,不得不考虑内存. 首先直接按b ...
- 「SDFZ听课笔记」二分图&&网络流
二分图? 不存在奇环(长度为奇数的环)的图 节点能黑白染色,使得不存在同色图相连的图 这两个定义是等价哒. 直观而言,就是这样的图: 二分图有一些神奇的性质,让一些在一般图上复杂度飞天的问题可以在正常 ...
- struts2 ValueStack的set方法与setValue方法的区别
struts2中 ValueStack的set方法与setValue方法的区别呢? 示例代码: ActionContext.getContext().getValueStack().setValue( ...
- 你忘记的java运算符
当整数被0除时会得到一个无穷大,或者nan, 所以会抛出数据溢出的异常.
- 屏蔽iframe中超链接
<style type="text/css"> .mask { position: absolute; width: 290px; height: 96px; z-in ...
- mysql:mysql安装及一些配置和图形界面介绍
关于mysql,我使用的不多,这次记录是在学习一位大牛的demo的契机下完成的.包括前面记录到的sqlserver的一些知识点,也是在新的项目组中协助时候学习记录的.希望通过记录加深印象和帮助后来者. ...
- Mina学习之---mina整体流程介绍
现在公司使用的NIO框架一直时候Mina,当然这也的框架还有Netty.虽然一直在用,但只是简单的停留在业务层面,最近面试的时候有问Mina相关的东西.在之前的博客中已经对BIO,NIO,AIO这三种 ...
- http://www.cnblogs.com/dasenglin/p/5821987.html
一安装maven 先安装jdk,配置JAVA_HOME 把下载的maven bin包,解压到指定目录,比如:D:\apache-maven-3.3.9-bin 配置maven的系统变量M2_HOME和 ...
- linux磁盘存储管理基本命令和工具
1 磁盘在linux表示方法 (1) IDE硬盘:hd[a~z]x,主设备号+次设备号+磁盘分区编号/hd(0-n,y) (2)SCSI硬盘:sd[a~z]x/hd(0-n,y) 注:主设备号可以唯一 ...