kafka集群配置与测试
刚接触一些Apache Kafka的内容,用了两天时间研究了一下,仅以此文做相关记录,以供学习交流。
概念:
kafka依赖的项:
1. 硬件上,kafka利用线性存储来进行硬盘直接读写。
2. kafka没有使用内存作为缓存。
3. 用zero-copy。
4. Gzip和Snappy压缩,
5. kafka对事务处理比较弱,但是message分发上还是做了一定的策略来保证数据递送的准确性的。
kafka关于存储的几个概念
1. Partition:同一个topic下可以设置多个partition,目的是为了提高并行处理的能力。可以将同一个topic下的message存储到不同的paritition下。
2. Offset:kafka的存储文件都是按照offset.kafka来命名,用offset做名字的好处是方便查找。
在分布式方面:
1. broker的部署是没有主从结构的,每个节点都是同等的,节点的增减和减少都不需要改变任何配置。
2. producer和consumer通过zookeeper去发现topic,并通过zookeeper来协调生产和消费的过程。
3. producer、consumer和broker均采用TCP连接,通信基于NIO实现。并且Producer和consumer能自动检测broker的增加和减少。
一.配置
broker.id=129
host.name=192.168.128.129
zookeeper.connection=192.168.128.129:2181
roker.id=132
host.name=192.168.128.132
zookeeper.connection=192.168.128.129:2181
133上的kafka配置
broker.id=133
host.name=192.168.128.133
zookeeper.connection=192.168.128.129:2181
二.测试
bin/zkServer.sh start conf/zoo.cfg
启动129,132,133上的kafka服务
[root@bogon kafka_2.8.0-0.8.1]# nohup bin/kafka-server-start.sh config/server.properties &
在任意机器上建一个topic,因为有三个kafka服务,所以这里replication-factor设为3
bin/kafka-topics.sh --create --zookeeper 192.168.128.129:2181 --replication-factor 3 -partitions 1 --topic 3test
Created topic "3test".
查看topic,此时的leader kafka为129,repicas:集群里有三个kafka,Isr:正常使用的kafka
bin/kafka-topics.sh --describe --zookeeper 192.168.128.129:2181
Topic:3test PartitionCount:1 ReplicationFactor:3 Configs:
Topic: 3test Partition: 0 Leader: 129 Replicas: 129,132,133 Isr: 129,132,133
在133这台机器上开启一个producer,往132这个kafka发消息
[root@slave-03 kafka_2.8.0-0.8.1]# bin/kafka-console-producer.sh --broker-list 192.168.128.132:9092 --topic 3test
this is a message to 132 broker
re?
停掉132的kafka,再次查看topics,此时可用的Isr为129和133,leader依然为129,因为129的kafka没有被停过,所以没有重新选举leader
[root@slave-02 kafka_2.8.0-0.8.1]# bin/kafka-topics.sh --describe --zookeeper 192.168.128.129:2181
Topic:3test PartitionCount:1 ReplicationFactor:3 Configs:
Topic: 3test Partition: 0 Leader: 129 Replicas: 129,132,133 Isr: 129,133
在129上开启一个consumer
[root@bogon kafka_2.8.0-0.8.1]# bin/kafka-console-consumer.sh --zookeeper 192.168.128.129:2181 --topic 3test --from-beginning
this is a message to 132 broker
re?
kafka集群配置与测试的更多相关文章
- 大数据测试之hadoop集群配置和测试
大数据测试之hadoop集群配置和测试 一.准备(所有节点都需要做):系统:Ubuntu12.04java版本:JDK1.7SSH(ubuntu自带)三台在同一ip段的机器,设置为静态IP机器分配 ...
- HyperLedger Fabric基于zookeeper和kafka集群配置解析
简述 在搭建HyperLedger Fabric环境的过程中,我们会用到一个configtx.yaml文件(可参考Hyperledger Fabric 1.0 从零开始(八)--Fabric多节点集群 ...
- Kafka集群配置---Windows版
Kafka是一种高吞吐量的分布式发布订阅的消息队列系统,Kafka对消息进行保存时是通过tipic进行分组的.今天我们仅实现Kafka集群的配置.理论的抽空在聊 前言 最近研究kafka,发现网上很多 ...
- Kafka 集群配置SASL+ACL
一.简介 在Kafka0.9版本之前,Kafka集群时没有安全机制的.Kafka Client应用可以通过连接Zookeeper地址,例如zk1:2181:zk2:2181,zk3:2181等.来获取 ...
- java架构之路(MQ专题)kafka集群配置和简单使用
前面我们说了RabbitMQ和RocketMQ的安装和简单的使用,这次我们说一下Kafka的安装配置,后面我会用几个真实案例来说一下MQ的真实使用场景.天冷了,不愿意伸手,最近没怎么写博客了,还请见谅 ...
- kafka能做什么?kafka集群配置 (卡夫卡 大数据)
什么是Kafka 官网介绍: 几个概念: 详细介绍 : 操作kafka: kafka集群 消息测试 问题检测 什么是Kafka 官网介绍: ApacheKafka是一个分布式流媒体平台.这到底是什么意 ...
- Kafka集群配置
kafka_2.11-0.9.0.1.tgz 1.进入项目前的目录 cd /home/dongshanxia mkdir kafka #创建项目目录 cd kafka #进入项目目录 mkdir ka ...
- 06.搭建kafka集群环境并测试
参考: https://www.cnblogs.com/zhangs1986/p/6565639.html https://www.cnblogs.com/frankdeng/p/9403883.ht ...
- kafka集群配置和java编写生产者消费者操作例子
kafka 安装 修改配置文件 java操作kafka kafka kafka的操作相对来说简单很多 安装 下载kafka http://kafka.apache.org/downloads tar ...
随机推荐
- mysql关联更新
update tb_sdd_info a,tb_bnm_evian_info b set a.username=b.username where a.username=b.memberno and ...
- org.openqa.selenium.SessionNotCreatedException: A new session could not be created.
解决方案 1. 重新插拔手机. 2. 检查appium端口是否被占用,如是,杀掉占用了改端口的进程,然后重启appium. 3.
- iOS内购的订单对应和补单
内购的关键类: 1.SKPayment(SKMutablePayment可将自己的参数一对一与苹果产生的payment对应起来) 2.TransactionObserver:交易状态更新时执行此方法, ...
- qt学习:信号,槽
[C.GUI.Qt.4编程(第二版)](加)布兰切特,(英)萨默菲尔德.扫描版[学习库www.xuexi111.com].pdf 信号和槽是Qt编程的基础,它可以让各种对象联系在一起. 1. 使用co ...
- smarty函数-转载
Smarty常用函数 2009-08-13 14:05:55| 分类: Php |举报 |字号 订阅 1 .include_once语句: 引用文件路径,路径必需正确. eg:include ...
- js中递归解析xml
xml结构: <RightMenuItems> <Item Code="New" Name="新建" GroupCode="Edi ...
- java下拉框,滚动条
package com.soft.test; /** * 下拉列表.下拉框.滚动条的使用 */ import javax.swing.*; import java.awt.*; public clas ...
- codeforces 630P. Area of a Star
题目链接 圆上n个点等距离分布, 求构成的星星的面积. 我们可以求三角形OAB的面积, ∠CAE = 1/2 ∠ COE = PI/n, 那么∠CAO = PI/2n, ∠AOB非常好求, 就是PI/ ...
- mybatis之动态SQL
<if>的使用 如果第一个if不成立的话可能会出现where and的语法错误,解决方法是在外层加<where>标签,此时如果以and和or衔接where的话会被删除. < ...
- Scale-up(纵向扩展) vs Scale-out(横向扩展)
转载:http://wuaner.iteye.com/blog/1843799 http://www.javaworld.com/article/2077780/java-web-developmen ...