Kafka学习笔记-程序员宅基地

技术标签: java  运维  json  

本文转载来自: https://www.cnblogs.com/qingyunzong/p/9004703.html

Kafka是Apache下的一个子项目,是一个高性能跨语言分布式发布/订阅消息队列系统, 图展示了Kafka的相关术语以及之间的关系

上图一个topic配置了3个partition。Partition1有两个offset:0和1。Partition2有4个offset。Partition3有1个offset。副本的id和副本所在的机器的id恰好相同。

如果一个topic的副本数为3,那么Kafka将在集群中为每个partition创建3个相同的副本。集群中的每个broker存储一个或多个partition。多个producer和consumer可同时生产和消费数据

 

Kafka集群部署

主机名 ip zk kafka
c1.heboan.com 192.168.48.128 apache-zookeeper-3.5.5-bin.tar.gz  kafka_2.12-2.2.1.tgz
c2.heboan.com 192.168.48.129    
c3.heboan.com 192.168.48.130    

首先部署zookeeper,点击我查看zookeeper部署

解压安装包

tar xf kafka_2.12-2.2.1.tgz -C /opt/service/
cd /opt/service
ln -s kafka_2.12-2.2.1 kafka

修改配置kafka/conf/server.properties

//当前机器在集群中的唯一标识,和zookeeper的myid性质一样
broker.id=0
//当前kafka对外提供服务的端口默认是9092
port=9092
//这个参数默认是关闭的,在0.8.1有个bug,DNS解析问题,失败率的问题。
host.name=c1.heboan.com     
//这个是borker进行网络处理的线程数
num.network.threads=3
//这个是borker进行I/O处理的线程数
num.io.threads=8
//发送缓冲区buffer大小,数据不是一下子就发送的,先回存储到缓冲区了到达一定的大小后在发送,能提高性能
socket.send.buffer.bytes=102400
//kafka接收缓冲区大小,当数据到达一定大小后在序列化到磁盘
socket.receive.buffer.bytes=102400
//这个参数是向kafka请求消息或者向kafka发送消息的请请求的最大数,这个值不能超过java的堆栈大小
socket.request.max.bytes=104857600
//消息存放的目录,这个目录可以配置为“,”逗号分割的表达式,上面的num.io.threads要大于这个目录的个数这个目录,
//如果配置多个目录,新创建的topic他把消息持久化的地方是,当前以逗号分割的目录中,那个分区数最少就放那一个
log.dirs=/log/kafka-logs
//默认的分区数,一个topic默认1个分区数
num.partitions=1
//每个数据目录用来日志恢复的线程数目
num.recovery.threads.per.data.dir=1
//默认消息的最大持久化时间,168小时,7天
log.retention.hours=168
//这个参数是:因为kafka的消息是以追加的形式落地到文件,当超过这个值的时候,kafka会新起一个文件
log.segment.bytes=1073741824
//每隔300000毫秒去检查上面配置的log失效时间
log.retention.check.interval.ms=300000
//是否启用log压缩,一般不用启用,启用的话可以提高性能
log.cleaner.enable=false
//设置zookeeper的连接端口
zookeeper.connect=c1.heboan.com:2181,c1.heboan.com:2181,c1.heboan.com:2181
//设置zookeeper的连接超时时间
zookeeper.connection.timeout.ms=6000
server.properties

将kafka的安装包通过scp分发到其他节点,配置文件修改broker.id和host.name即可

配置环境变量

[root@c1 ~]# cat /etc/profile.d/kafka.sh 
export KAFKA_HOME=/opt/service/kafka
export PATH=$PATH:$KAFKA_HOME/bin
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_30650859/article/details/101587150

智能推荐

Mac电脑联网快捷键恢复系统_option+command+r-程序员宅基地

文章浏览阅读2.8k次,点赞4次,收藏4次。Mac电脑联网快捷键恢复系统_option+command+r

自定义控件_继承cwnd 自定义控件-程序员宅基地

文章浏览阅读723次。新建自定义控件: 添加类->MFC类->选基类(可以选各种基类,如果要全部实现功能全新控件,就选CWnd)。输入类名 CxxxxWnd 生成2个文件 xxxxWnd.cpp, xxxxWnd.h;在里面添加消息的响应处理功能,尤其添加wm_paint消息的处理用来绘制控件的外观。 使用自定义控件: 1.包含xxxxWnd.h头文件。 2.如果是从 CWnd继承的自定义控件,需要动态生成控件。如_继承cwnd 自定义控件

BSN合作伙伴大会 | 赵会义:粮食行业信息化发展现状与区块链技术应用展望_bsn发展现状-程序员宅基地

文章浏览阅读313次。本期为国家粮食和物资储备局信息化推进办处长赵会义的分享,题为《粮食行业信息化探索现状与区块链技术应用展望》。_bsn发展现状

Elastic:如何成为一名 Elastic 认证工程师,Elastic 认证分析师及 Elastic 认证可观测性工程师_elasticsearch认证-程序员宅基地

文章浏览阅读2.2w次,点赞33次,收藏109次。Elasticsearch 无疑是是目前世界上最为流行的大数据搜索引擎。根据 DB - Engines 的统计,Elasticsearch 雄踞排行榜第一名,并且市场还在不断地扩大:能够成为一名 Elastic 认证工程师也是很多开发者的梦想。这个代表了 Elastic 的最高认证,在业界也得到了很高的认知度。得到认证的工程师,必须除了具有丰富的 Elastic Stack 知识,而且必须有丰富的操作及有效的解决问题的能力。拥有这个认证证书,也代表了个人及公司的荣誉。针对个人的好处是,你可以.._elasticsearch认证

驱动开发:探索DRIVER_OBJECT驱动对象_pdriver_object-程序员宅基地

文章浏览阅读7k次,点赞3次,收藏6次。本章将探索驱动程序开发的基础部分,了解驱动对象`DRIVER_OBJECT`结构体的定义,一般来说驱动程序`DriverEntry`入口处都会存在这样一个驱动对象,该对象内所包含的就是当前所加载驱动自身的一些详细参数,例如驱动大小,驱动标志,驱动名,驱动节等等,每一个驱动程序都会存在这样的一个结构。_pdriver_object

Dockerfile镜像打包_dockerfile打包镜像-程序员宅基地

文章浏览阅读1w次,点赞3次,收藏16次。docker镜像打包培训用,主要包含dockerfile介绍以及docker构建、测试和导出镜像。_dockerfile打包镜像

随便推点

AT命令_at命令默认采用的是text模式吗?-程序员宅基地

文章浏览阅读2.3k次,点赞2次,收藏10次。AT命令最常见的应用场景:1、智能手机:一般智能手机都是一个主芯片控制一个通信模块,这个通信模块就是一个完整的、简单的手机,包括手机应该有的射频、基带等部分,还有GSM协议栈,完全可以独立打电话、发短信、用GPRS上网等。主芯片实现复杂的应用软件。主芯片和通信模块之间通过AT命令,也就是做主芯片通过AT命令控制通信模块打电话,发短信等。2、其他通信模块。例如出租车上的车载台,通信模块可以接收控..._at命令默认采用的是text模式吗?

虚拟机上安装ubuntu18.04.4_ubuntu-18.04.4-desktop-amd64.iso-程序员宅基地

文章浏览阅读1.7k次,点赞2次,收藏21次。准备:主机系统为win10,虚拟机版本为:VMware Workstation 15 Pro系统镜像:ubuntu-18.04.4-desktop-amd64.iso1.配置VMware1.1 创建新的虚拟机 在文件下拉菜单选择新建虚拟机,出现的新建虚拟机想到选择自定义;点击下一步; 硬件兼容性选择默认的就好,我的虚拟机是workstation15,..._ubuntu-18.04.4-desktop-amd64.iso

windbg(蓝屏调试分析教程)_蓝屏调试工具-程序员宅基地

文章浏览阅读2.9k次。一、WinDbg是什么?它能做什么?WinDbg是在windows平台下,强大的用户态和内核态调试工具。它能够通过dmp文件轻松的定位到问题根源,可用于分析蓝屏、程序崩溃(IE崩溃)原因,是我们日常工作中必不可少的一个有力工具,学会使用它,将有效提升我们的问题解决效率和准确率。二、WinDbg6.7下载1.WinDbg(蓝屏分析修复工具) 6.7 免费版(32位)_蓝屏调试工具

OVN Southbound DB简介及其相关命令示例_southbound databus-程序员宅基地

文章浏览阅读3k次。Southbound DB 里面有如下几张表:Chassis:chassis这个概念, Chassis 是 OVN 新增的概念,OVS 里面没有这个概念。 chassis表的每一行表示一个 HV 或者 VTEP 网关,由 ovn-controller/ovn-controller-vtep 填写,包含 chassis 的名字和 chassis 支持的封装的配置(指向表 Encap),如_southbound databus

PCAN-Explorer5安装教程_pcanexplorer5安装教程-程序员宅基地

文章浏览阅读5.7k次,点赞2次,收藏11次。PCAN-Explorer5是PCAN的主要配套软件,可以监测CAN网络数据通讯的通用工具,可以接收、发送、过滤、记录CAN报文,也可以导入dbc文件,将CAN报文解析为我们容易理解的具体的物理量。PCAN:PCAN-Explorer5软件是以上其中一款CAN盒配套一起使用的,比如小编常用的一款是PCAN-USB Pro:其他相关的详细信息大家可以登录PEAK广州虹科的官网:https://peak-system.com.cn/进行了解。下面开始安装步骤:.._pcanexplorer5安装教程

Feature Engineering for Machine Learning in Python-程序员宅基地

文章浏览阅读1.3k次。是人工智能领域的一个分支,其目的是通过训练算法模型对输入数据进行预测或分类,从而实现智能化的行为。目前,机器学习已经成为当今最火热的话题之一。无论是在医疗健康、金融、图像识别、文本处理、推荐系统、安全运维等方面,都可以利用机器学习进行高效自动化。机器学习的应用非常广泛,包括但不限于图像识别、文本处理、生物信息分析、互联网搜索推荐、垃圾邮件过滤、产品销售预测、语音识别、智能助手等。在这些应用中,特征工程(Feature engineering)是一个十分重要的环节。