一. Kafka中的相关概念的介绍


Kafka是一个scala实现的分布式消息中间件,当中涉及到的相关概念例如以下:


  • Kafka中传递的内容称为message(消息),message 是通过topic(话题)进行分组的 topic 和message 的关系是一对多的关系
  • 我们称公布message的进程为producer ,就是说producer生成<topic->message>对然后 丢进kafka集群
  • 相相应的称订阅topic处理相应message的进程为consumer
  • Kafka集群中的节点被称为broker

二. Kafka中的关键參数的配置


Broker(集群总的节点)配置



broker.id : 唯一确定的一个int 类型数字
log.dirs :存储kafka数据,默认路径 为/tmp/kafka-logs
port:comsumer连接的端口号
zookeeper.conect: zookeeper的链接字符串,定义的格式例如以下 hostname1:port1,hostname2:port2,hostname3

num.partitions : 一个topic能够被分成多个paritions 管道,每一个partiions中的message有序可是多个paritions中的顺序不能保证

2.Consumer 配置

group.id :string 类型 标志consumer隶属的consumer process 组
zookeeper.connect: hostname1:port1,hostname2:port2(/chroot/path 统一数据存储路径)
zookeeper 中存储了kafka的comsumers和brokers(包含topic和partition)的基本信息

3.Producer配置
metadata.book.list :host1:port1,host2:port2
request.required.acks: 0.数据完毕就直接提交(可能在server崩溃了的时候丢失数据)
                                        1.wait until the server acknowledges the request as successful
                                        -1.no messages lost
producer.type : 确定messages是否同步提交 sync
serializer.class :kafka.serializer.DefaultEncoder  message 的序列化类,默认编码器处理类型都是byte[]类型

三.Kafka的简单命令



Step 1: 启动server

首先启动zookeeper

> bin/zookeeper-server-start.sh config/zookeeper.properties
(远程启动的时候须要在后面加上一个 & 作为后台进程,然后断开和远程的链接)

接着启动kafkaserver

> bin/kafka-server-start.sh config/server.properties

Step 2: 创建 一个 topic

> bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

查看topic

> bin/kafka-topics.sh --list --zookeeper localhost:2181

Step 3: Send some messages


> bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
This is a message
This is another message

Step 4: 启动一个client(消费者)

> bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning

Kafka学习(一)配置及简单命令使用的更多相关文章

  1. Kafka配置及简单命令使用

    一. Kafka中的相关概念的介绍 Kafka是一个scala实现的分布式消息中间件,其中涉及到的相关概念如下: Kafka中传递的内容称为message(消息),message 是通过topic(话 ...

  2. java架构之路(MQ专题)kafka集群配置和简单使用

    前面我们说了RabbitMQ和RocketMQ的安装和简单的使用,这次我们说一下Kafka的安装配置,后面我会用几个真实案例来说一下MQ的真实使用场景.天冷了,不愿意伸手,最近没怎么写博客了,还请见谅 ...

  3. Monkey学习(2)简单命令合集

    Monkey命令的简单帮助 执行所有命令的前提是,必须先链接模拟器或者实体机,否则会报如下错误信息: 打开命令行窗口,WIN+R,输入CMD 在命令行窗口执行:adb shell monkey –he ...

  4. Maven相关:mvn的配置和简单命令

    1.配置mvn: 点击链接 http://maven.apache.org/download.cgi 下载 解压到文件夹: 配置系统环境变量: 测试:mvn -v 2.mvn命令: 1. 显示版本信息 ...

  5. kafka学习之-配置详解

    # Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreement ...

  6. kafka学习2:kafka集群安装与配置

    在前一篇:kafka学习1:kafka安装 中,我们安装了单机版的Kafka,而在实际应用中,不可能是单机版的应用,必定是以集群的方式出现.本篇介绍Kafka集群的安装过程: 一.准备工作 1.开通Z ...

  7. golang学习笔记8 beego参数配置 打包linux命令

    golang学习笔记8 beego参数配置 打包linux命令 参数配置 - beego: 简约 & 强大并存的 Go 应用框架https://beego.me/docs/mvc/contro ...

  8. (Linux环境Kafka集群安装配置及常用命令

    Linux环境Kafka集群安装配置及常用命令 Kafka 消息队列内部实现原理 Kafka架构 一.下载Kafka安装包 二.Kafka安装包的解压 三.设置环境变量 四.配置kafka文件 4.1 ...

  9. Linux学习之十七-配置Linux简单的脚本文件自启动

    配置Linux简单的脚本文件自启动 在Linux中使用shell脚本解决一些问题会比单独执行多条命令要有效率,脚本文件规定命名以.sh结尾,最基本的规则就是其内容是命令,想要脚本文件开机自启动,就需要 ...

随机推荐

  1. Boost Thread学习笔记五

    多线程编程中还有一个重要的概念:Thread Local Store(TLS,线程局部存储),在boost中,TLS也被称作TSS,Thread Specific Storage.boost::thr ...

  2. ie 64bit调用activex控件

    1,首先,这是可能的.不要被网上一堆ie64调不了activex控件的文章误导了.flash就是一个现成的例子,flash支持ie64. 2,ie64只能调用64bit的activex控件.网上那些说 ...

  3. oracle列合并

    在很多场合,我们会须要用到oracle列合并,oracle提供了一些方法用于把某列的多行数据合并成一行. 一.10G曾经使用WMSYS.WM_CONCAT   wmsys.wm_concat将字段的值 ...

  4. PIL Gif分割成多个图片

    项目中遇到GIF图片读取问题,使用PIL中Image im=Image.open("D:\\yzm\\0009.gif") mode = 'RGB' im.seek(0) im.c ...

  5. 配置QtCreator+CDB远程调试环境(要设置_NT_SYMBOL_PATH和QT_PLUGIN_PATH和Path)

    相关环境信息:开发机Win7 x64.远程机器WinXP.调试器是CDB.Qt版本5.2.1 一.部署远程机器环境 我这里用的是虚拟机(Windows XP),根据你要调试的程序选择安装不同架构的Wi ...

  6. c#(winform,webform通用)利用npoi将xls文件复制为xlsx文件(excel的修改,保存,包括excel2003-office2007+的处理)

    1.程序界面 每次需要处理excel文件的时候,都是去百度找方案,真是气一头火,今天好好总结一下,下次就不用度娘了. 我是用winform来试验的,因为winform比较方便测试,实际上只要是在.ne ...

  7. adb 之android的神器am

    am命令,am全称activity manager,你能使用am去模拟各种系统的行为,例如去启动一个activity,强制停止进程,发送广播进程,修改设备屏幕属性等等 命令窗口通过adb shell ...

  8. Swift - 搜索条(UISearchBar)的用法

    1,搜索条Options属性还可设置如下功能样式: Shows Search Results Button:勾选后,搜索框右边显示一个圆形向下的按钮,单击会发送特殊事件. Shows Bookmark ...

  9. AMR音频编码器概述及文件格式分析

    全称Adaptive Multi-Rate,自适应多速率编码,主要用于移动设备的音频,压缩比比较大,但相对其他的压缩格式质量比较差,由于多用于人声,通话,效果还是很不错的. 一.分类 1. AMR: ...

  10. (三)----使用HttpClient发送HTTP请求(分别通过GET和POST方法发送数据)

    文章来源:http://www.cnblogs.com/smyhvae/p/4006009.html 一.GET和POST的对比: 在漫长的时间当中,其他的方法逐渐的退出了历史舞台,最常用的只剩下GE ...