1.目标

在这个Apache Kafka教程中,我们将学习Kafka Broker。Kafka Broker管理主题中的消息存储。如果Apache Kafka有多个代理,那就是我们所说的Kafka集群。此外,在本Kafka Broker教程中,我们将学习如何启动Kafka Broker和Kafka命令行选项。
那么,让我们开始Apache Kafka Broker。

Kafka Broker | 命令行选项和过程

2.什么是Kafa经纪人?

Kafka代理也称为Kafka服务器和Kafka节点。这些所有名称都是它的同义词。简单来说,经纪人是两者之间的中介。但是,Kafka经纪人更准确地描述为消息代理,它负责调解不同计算机系统之间的对话,保证将消息传递给正确的各方。
阅读Apache Kafka Security | Kafka的需求和组件
因此,Kafka集群通常由多个代理组成。Kafka Cluster使用Zookeeper来维护集群状态。单个Broker每秒可以处理数千次读写操作。 然而,如果没有性能影响,每个代理都可以处理TB消息。另外,要非常肯定ZooKeeper会执行经纪人领袖选举。

经纪人在卡夫卡的工作

基本上,Kafka中的经纪人被建模为主持主题的KafkaServer。在这里,给定的主题总是在代理之间进行分区,在集群中,单个代理实际上托管一个或多个主题的主题分区,即使主题仅分区到单个分区也是如此。
了解Apache Kafka Consumer | Kafka Consumer的示例
此外,生产者在收到经纪人将其存储在由唯一偏移量键入的磁盘上后,向代理发送消息。此外,通过主题,分区和偏移,代理允许消费者获取消息。但是,代理可以通过使用Zookeeper直接或间接地相互共享信息来创建群集。此外,我们可以说Kafka集群只有一个代理作为控制器。通过使用kafka-server-start.sh脚本,我们可以启动一个Kafka经纪人。

3.如何启动Kafka Broker?

  • 启动Zookeeper。
  1. ./bin/zookeeper-server-start.sh config / zookeeper.properties

我们可以启动一个Kafka服务器,只有当Zookeeper启动并运行时(它将连接到Zookeeper)。

  1. ./bin/kafka-server-start.sh config / server.properties
  2. kafka-server-start.sh脚本

因此,kafka-server-start.sh 启动经纪人。

  1. $ ./bin/kafka-server-start.sh
  2. 用法:./ bin / kafka-server-start.sh [ -daemon ] server.properties [ --override property = value ] *

注意 -在运行kafka-server-start.sh 之前,请确保Zookeeper已启动并运行。而且,使用zookeeper-server-start shell脚本。
看看Apache Kafka + Spark Streaming Integration
kafka-server-start.sh 使用config / log4j.properties来记录我们可以使用KAFKA_LOG4J_OPTS 环境变量覆盖的配置。

  1. KAFKA_LOG4J_OPTS = “ - Dlog4j.configuration = file:config / log4j.properties”

kafka-server-start.sh 接受KAFKA_HEAP_OPTS和EXTRA_ARGS 环境变量。

4.卡夫卡命令行选项

-name 
在守护进程模式下默认为kafkaServer。
-loggc 
在守护进程模式下启用。
-daemon 
启用守护程序模式。
-override property = value 
应覆盖server.properties文件中为property设置的值的值。
让我们修改Apache Kafka Streams | 流处理拓扑

  1. $ ./bin/kafka-server-start.sh config / server.properties --override broker.id = 100
  2. ...
  3. 信息[ KafkaServer id = 100 ]已启动(kafka.server.KafkaServer )

5.结论

因此,我们已经学习了完整的Kafka Broker以及启动它的命令。但是,如果有任何疑问,请随时在评论部分询问。
另请参阅 -  
Kafka-序列化和反序列化以

Kafka Broker | 命令行选项和过程的更多相关文章

  1. pytest 常用命令行选项(二)

    本文接上篇继续简介pytest常用的命令行选项. 8.-v(--verbose) 选项 使用-v/--verbose选项,输出的信息会更详细.最明显的区别就是每个文件中的每个测试用例都占一行,测试的名 ...

  2. 命令行选项解析函数(C语言):getopt()和getopt_long()

    命令行选项解析函数(C语言):getopt()和getopt_long() 上午在看源码项目webbench时,刚开始就被一个似乎挺陌生函数getopt_long()给卡住了,说实话这函数没怎么见过, ...

  3. NUnit-Console 命令行选项详解

    本文为 Dennis Gao 原创或翻译技术文章,发表于博客园博客,未经作者本人允许禁止任何形式的转载. NUnit-Console 命令行选项 NUnit-Console 命令行选项列表 指定运行哪 ...

  4. python argparse模块解析命令行选项简单使用

    argparse模块的解析命令行选项简单使用 util.py #!/usr/bin/env python # coding=utf-8 import argparse parser = argpars ...

  5. argparse - 命令行选项与参数解析(转)

    argparse - 命令行选项与参数解析(译)Mar 30, 2013 原文:argparse – Command line option and argument parsing 译者:young ...

  6. 命令行选项 - Mozilla 产品与私有技术 | MDN - Google Chrome

    命令行选项 在本文章中 语法规则 使用命令行选项 示例 用户配置档 -CreateProfile profile_name -CreateProfile "profile_name prof ...

  7. LoadRunner 11安装Micosoft Visual C++ 2005 SP1时提示命令行选项语法错误

    如果安装LoadRunner 11时弹窗提示"Micosoft Visual C++ 2005 SP1 可再发行组件包(X86):'命令行选项语法错误.键入命令 / ? 可获得帮助信息'&q ...

  8. pytest 常用命令行选项(一)

    pytest有丰富的命令行选项,以满足不同的需要,下面对常用的命令行选项作下简单介绍.  上文已经使用过-v选项,还有很多选项,你可以使用pytest --help查看全部选项.如下图: 1.--co ...

  9. 安装loadrunner时出现”命令行选项语法错误键入命令 \?获得帮助“的解决方法

    安装LR11 时,安装Microsoft Visual c++2005 sp1运行时组件,就会提示命令行选项语法错误,键入“命令/?”可获取帮肋信息1.进入loadrunner-11\Addition ...

随机推荐

  1. 调用图灵API V2 遇到的坑

    1:遇到的第一个问题:跨域 解决办法: 第一种:使用query中的jsonp 可惜图灵要求post方法,而jsonp,只能使用get方法,才能跨域,失败 第二种:服务器添加header,可是我怎么去改 ...

  2. Tensorflow细节-P319-使用GPU基本的操作

    如果什么都不加,直接运行装了GPU的Tensorflow,结果是这样子的 import tensorflow as tf a = tf.constant([1.0, 2.0, 3.0], shape= ...

  3. HTML5 Geolocation(地理定位)

    一.背景 在HTML规范中,增加了获取用户地理信息的API,这样使得可以基于用户位置开发互联网应用,即基于位置服务 鉴于该特性可能侵犯用户的隐私,除非用户同意,否则用户位置信息是不可用的. Inter ...

  4. 2017.10.1 国庆清北 D1T1 zhx的字符串题

    题目背景 2017国庆清北D1T1 题目描述 你是能看到第一题的 friends 呢. ——hja 何大爷对字符串十分有研究,于是天天出字符串题虐杀 zhx.何大爷今天为 字符串定义了新的权值计算方法 ...

  5. 2016级移动应用开发在线测试13-Location、Sensor & Network

    有趣有内涵的文章第一时间送达! 喝酒I创作I分享 生活中总有些东西值得分享 @醉翁猫咪  1. 充分利用智能手机的GPS定位信息,创造了O2O的商业模式,打通了线上与线下的信息流和商流,极大地推动了移 ...

  6. 第12组 Beta冲刺(2/5)

    Header 队名:To Be Done 组长博客 作业博客 团队项目进行情况 燃尽图(组内共享) 由于这两天在修严重Bug,故项目没有新的进展,燃尽图没有变化 展示Git当日代码/文档签入记录(组内 ...

  7. 将对象转化为数组,并且适用select下拉

    当你做element-ui的select下拉的时候数据是从后台请求,但是怎么才能将obj转成数组呢.并且后台返回的key和value中的key是要传的参数 var obj = { name: 'gab ...

  8. git之fatal: Could not read from remote repository

    问题背景:在git bash中使用hexo g -d命令进行文章发布 详细错误信息: fatal: Could not read from remote repository. Please make ...

  9. SSM项目实战 之 EasyUI

    目录 EasyUI 简介 概述 使用EasyUI panel组件 简介 示例 JS形式及属性介绍 panel事件与方法 Window组件 概述 使用 行为 dialog 概述 使用 tabs组件 概述 ...

  10. CentOS7安装JDK1.8图文教程

    https://blog.csdn.net/weixin_42266606/article/details/80863781 1.下载 jdk 的 tar 包 网址:http://www.oracle ...