Kafka笔记2(安装)
1.安装java
2.安装zookeeper
3.安装kafka Broker
测试:发布消息
测试:读取消息
4,broker配置
常规配置:
broker.id: 默认0 每个broker都需要一个标识符,使用broker.id标识,在kafka集群里必须唯一
port 默认监听9092端口,使用1024以下的端口,需要root权限启动Kafka,不建议
zookeeper.connect 用于保存broker元数据的zookeeper地址,格式: hostname:port/path
hostname zookeeper服务器的IP地址或机器名
port zookeeper客户端连接端口
/path 可选的zookeeper路径,作为kafka集群chroot环境,默认根路径
log.dirs 存放Kafka所有消息的日志片段的路径 注意:broker会向拥有最少数目分区的路径新增分区,而不是往最小磁盘空间的路径新增分区
num.recovery.threads.per.data.dir
对于如下3种情况,Kafka使用可配置的线程池来处理日志片段
服务器正常启动,用于打开每个分区的日志片段
服务器崩溃后重启,用于检查和截短每个分区的日志片段
服务器正常关闭,用于关闭日志片段
默认每个日志目录(log.dirs)只使用一个线程
如果num.recovery.threads.per.data.dir=8,log.dir指定了3个路径,则一共需要24个线程
auto.create.topic.enable
默认情况下Kafka会在如下情形自动创建主题:
当一个生产者开始往主题写入消息时
当一个消费者开始从主题读取消息时
当任意一个客户端向主题发送元数据请求时
主题的默认配置参数:
num.partitions 参数指定新创建主题将包含多少分区,默认1 注意:可以增加主题分区的个数,但是不可以减少,若要少于该参数值,只能手动创建主题
分区的参考计算:每秒从主题读取/写入1G数据,每个消费者处理50M数据,那么分区的个数> 1G/50M=20个
根据经验,分区的大小限制在25GB以内较理想
log.retention.ms 指定Kafka数据可以保留多长时间 ,除此之外还有参数log.retention.minutes log.retention.hour; kafka优先使用具有最小值的参数
log.retention.bytes 决定Kafka每个分区数据过期的字节数阈值
log.segment.bytes 日志片段关闭的阈值 当分区上的日志片段到达log.segment.bytes指定的上限时,当前日志片段就会关闭,开启新的日志片段,同时关闭的日志片段也会开始等待过期
log.segment.ms 指定多长时间后日志片段开始关闭
message.max.bytes 限制单个消息大小 默认1M,该参数是指压缩后消息的大小
消费者客户端设置的fetch.message.max.bytes必须与服务端设置的消息大小协调;若fetch.message.max.bytes < message.max.bytes 那么消费者无法读取比较大的消息,导致出现消费者被阻塞情形,在为集群broker设置replica.fetch.max.bytes参数时,也遵循同样原则
硬件上的选择:
磁盘吞吐量:
生产者客户端性能受到服务器端磁盘吞吐量影响
磁盘容量
内存
服务器端可用的内存容量是影响客户端性能的主要因素,磁盘性能影响生产者,内存影响消费者
Kafka会使用页面缓存,如果和其他应用共享页面缓存会降低Kafka消费者的性能
网络
网络吞吐量决定Kafka能处理的最大数据流量
CPU
Kafka对数据的压缩和解压缩会用到计算能力
KafKa集群: 可以实现负载均衡/避免单点故障
需要多少broker: 集群需要保留10T数据,每个broker可以保存2T,则至少需要5个broker,若果开启复制,则还需要扩大一倍即10个
新加一个broker至集群种,修改2个参数: 1)配置相同的zookeeper.connect 2) 设置唯一的broker.id
Kafka笔记2(安装)的更多相关文章
- Kafka笔记整理(三):消费形式验证与性能测试
Kafka消费形式验证 前面的<Kafka笔记整理(一)>中有提到消费者的消费形式,说明如下: .每个consumer属于一个consumer group,可以指定组id.group.id ...
- kafka集群安装部署
kafka集群安装 使用的版本 系统:centos6.5 centos6.7 jdk:1.7.0_79 zookeeper:3.4.9 kafka:2.10-0.10.1.0 一.环境准备[只列,不具 ...
- CentOS学习笔记--Tomcat安装
Tomcat安装 通常情况下我们要配置Tomcat是很容易的一件事情,但是如果您要架设多用户多服务的Java虚拟主机就不那么容易了.其中最大的一个问题就是Tomcat执行权限.普通方式配置的Tomca ...
- (转)ZooKeeper 笔记(1) 安装部署及hello world
ZooKeeper 笔记(1) 安装部署及hello world 先给一堆学习文档,方便以后查看 官网文档地址大全: OverView(概述) http://zookeeper.apache.or ...
- LNMP笔记:安装 Xcache 缓存扩展,降低服务器负载
LNMP笔记:安装 Xcache 缓存扩展,降低服务器负载 2014/11/27 教程笔记 4,743 14 WordPress 精品主机推荐:恒创主机 | 阿里云(本站目前所用云主机) 倡萌 ...
- zookeeper+kafka集群安装之二
zookeeper+kafka集群安装之二 此为上一篇文章的续篇, kafka安装需要依赖zookeeper, 本文与上一篇文章都是真正分布式安装配置, 可以直接用于生产环境. zookeeper安装 ...
- zookeeper+kafka集群安装之一
zookeeper+kafka集群安装之一 准备3台虚拟机, 系统是RHEL64服务版. 1) 每台机器配置如下: $ cat /etc/hosts ... # zookeeper hostnames ...
- Kafka和的安装与配置
本文主要介绍Kafka的安装与配置: 集群规划 datanode1 datanode2 datanode3 zk zk zk kafka kafka kafka kafka jar包下载地址 http ...
- zookeeper+kafka集群安装之中的一个
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/cheungmine/article/details/26678877 zookeeper+kafka ...
- Kafka介绍及安装部署
本节内容: 消息中间件 消息中间件特点 消息中间件的传递模型 Kafka介绍 安装部署Kafka集群 安装Yahoo kafka manager kafka-manager添加kafka cluste ...
随机推荐
- go module下golang.org如何处理被墙
一.系统提示 go: golang.org/x/sys@v0.0.0-20180905080454-ebe1bf3edb33: unrecognized import path "golan ...
- HTML 01 请求过程
与 HTTP 关系密切的协议, IP, TCP, DNS IP协议的作用是把各种数据包传送给对方, 而要保证确实传送到对方那里, 需要满足各种条件. 其中两个最重要的条件是 IP地址 和 MAC 地址 ...
- 在 windows 上安装免安装版的mysql
在 windows 上安装免安装版的 1. 下载路径 https://downloads.mysql.com/archives/community/ 2. 解压 假设解压后的路径为:E:\Enviro ...
- Spring AOP @AspectJ 入门基础
需要的类包: 1.一个简单的例子 Waiter接口: package com.yyq.annotation; public interface Waiter { void greetTo(String ...
- vue分页问题参考 感谢
https://www.cnblogs.com/zhoulifeng/p/9395295.html
- zoj 3871
貌似这道题某人已经扔给我一个多星期了(雾) 首先要知道这样一点:凸包的面积可以直接用线段的有向面积和求得. 自己口胡的证明:单纯一条线段自身的叉积就是到原点与这条线段构成三角形的面积吧,那么加加减减之 ...
- Ubuntu 离线安装Mysql
一.安装包 先从网络上,下载Mysql安装包,复制到U盘 下载地址:https://dev.mysql.com/downloads/mysql/ 二.挂载U盘 2.1查看分区 先输入命令 cat ...
- 关于histry的pushstate 和 popstate事件的应用
这篇文章是基础:http://www.cnblogs.com/kaituorensheng/p/3776527.html: histry的单页面应用有两个写法:哈希值和?: 哈希值例子: 实现效果:点 ...
- GCD与LCM
求最大公约数(GCD)和求最小公倍数(LCM): 首先是求最大公约数,我们可以利用辗转相除法来求 1 int gcd(int a,int b) 2 { 3 if(b==0) 4 return a; 5 ...
- css hsla和rgba的区别
在CSS3里可以使用RGBA和HSLA两种色彩模式,都可以用来在设置颜色的同时也可以设置它的透明度.RGBA指的是“红色.绿色.蓝色和Alpha透明度”(Red-Green-Blue-Alpha),而 ...