一. 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. 基于visual Studio2013解决面试题之0208二叉搜索树后序遍历序列

     题目

  2. PreferenceActivity使用示例

    MainActivity如下: package cn.testpreferenceactivity; import android.content.SharedPreferences; import ...

  3. String[255]在高版本Delphi里还是被解释成Byte,总体长度256,使用StrPCopy可以给Array String拷贝字符串(内含许多实验测试)

    学了好多不了解的知识: procedure TForm1.Button1Click(Sender: TObject); var s1 : String; s2 : String[]; begin s1 ...

  4. 出现异常 child-&gt;m_pParent == 0

    在cocos2d-x中,能够用CCNode类 自己new一个节点(或是用CCnode::node().create()),当将它作为其它若干item(如button项.sprite项.image项)的 ...

  5. POJ1291-并查集/dfs

    并查集 题意:找出给定的这些话中是否有冲突.若没有则最多有多少句是对的. /* 思路:如果第x句说y是对的,则x,y必定是一起的,x+n,y+n是一起的:反之x,y+n//y,x+n是一起的. 利用并 ...

  6. WSDL中文版——详解

    为什么使用WSDL? 像Internet协议之类的标准有没有为权威所利用,或者人们这样看待它是因为顺之所获的好处远远超出了代价?曾经有许多试图建立的标准都流产了.有时候,那些还没有普遍使用的标准甚至由 ...

  7. 玩转Windows服务系列——Windows服务小技巧

    原文:玩转Windows服务系列——Windows服务小技巧 伴随着研究Windows服务,逐渐掌握了一些小技巧,现在与大家分享一下. 将Windows服务转变为控制台程序 由于默认的Windows服 ...

  8. hdu 1007 最近点对问题(Splay解法)

    为什么要写这个题..经典啊,当然,别以为我用分治做的,不过主要思想还是那神奇的六个点共存(一个h*2h的矩形中最多能放下多少个点使得两两距离不超过h) 其实我是在这里看到的 http://commun ...

  9. Python批量删除指定目录下的指定类型的文件

    Python作为一种脚本语言.其很适合文件级的各种操作.以下的代码能够批量删除指定目录下的所有特定类型(CSV类型)的文件. import sys, csv , operator import os ...

  10. php 用递归实现的无限级别分类

    <?php header("Content-type:text/html; charset=utf-8"); /**  *   * @category contry_cate ...