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

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

Kafka中传递的内容称为message(消息),message 是通过topic(话题)进行分组的 topic 和message 的关系是一对多的关系
我们称发布message的进程为producer ,就是说producer生成<topic->message>对然后 丢进kafka集群
相对应的称订阅topic处理对应message的进程为consumer
Kafka集群中的节点被称为broker 附加个图说明下:http://kafka.apache.org/documentation.html#introduction

二. 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.数据完成就直接提交(可能在服务器崩溃了的时候丢失数据) 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: 启动服务器

首先启动zookeeper

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

接着启动kafka服务器

> 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: 启动一个客户端(消费者)

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

Kafka配置及简单命令使用的更多相关文章

  1. Kafka学习(一)配置及简单命令使用

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

  2. kafka 配置及常用命令

    1. 主要配置 config/server.properties (1)  broker.id=0  # 集群中,每个 kafka 实例的值都不一样 (2) log.dirs=/tmp/kafka-l ...

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

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

  4. Linux 的简单命令以及在idea中配置码云

    Linux 的简单命令: ls(list)功能:列出目录内容 cd(change directory)功能:切换目录 touch 1.txt 在当前目录创建一个文件1.txt clear:清除屏幕 p ...

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

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

  6. kafka学习之相关命令

    1 分别启动zoo和kafka ./zkServer.sh start 然后需要使用./zkServer.sh status查看状态,会发现一个奇怪得问题,即使start启动的时候表示启动成功,但是s ...

  7. 【Apache Kafka】二、Kafka安装及简单示例

    (一)Apache Kafka安装 1.安装环境与前提条件   安装环境:Ubuntu16.04   前提条件: ubuntu系统下安装好jdk 1.8以上版本,正确配置环境变量 ubuntu系统下安 ...

  8. zookeeper工作原理、安装配置、工具命令简介

    1.Zookeeper简介 Zookeeper 是分布式服务框架,主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务.状态同步服务.集群管理.分布式应用配置项的管理等等. 2.zo ...

  9. Apache 的搭建及vim的简单命令

    一. vim 简单命令 pwd     当前路径 ls    当前路径所有目录 cd  目录地址   跳转到指定目录 /xxx  查找xxx x 删除当前字符 n 执行上一次查找 二.为什么使用apa ...

随机推荐

  1. TCP/IP笔记(二)TCP/IP简介

    上回,主要介绍了下协议和OSI参考模型,并简单了解下网络构成要素,这回该说说TCP/IP了 互联网与TCP/IP的关系   互联网进行通信时,需要相应的网络协议,TCP/IP原本就是为使用互联网而开发 ...

  2. ubuntu查看安装的cuda toolkit自带的工具及其他安装文件

    原创作品,转载请注明来源:http://www.cnblogs.com/shrimp-can/p/5253672.html 1.查看工具 默认目录为:local,进入local:cd /usr/loc ...

  3. python的tkinter版本不匹配问题:RuntimeError: test:tk.h version (8.4) doesn't match libtk.a version (8.5)

    Traceback (most recent call last): File "/root/CodeWorkPace/test/TCPClient.py", line 20, i ...

  4. 关于OOCSS的一点思考

    关于面向对象,自己是很熟悉了,不能说代码实际开发效果有多好,但是这个概念确实经常见,那么到底什么是面向对象? 面向对象是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物---百度 ...

  5. SocketServer模块

    在利用select实现伪并发的socket博文中我们说了: 如果要实现一个server端可以和多个客户端进行通信可以使用 1.多线程 2.多进程 3.select I/O多路复用 在那篇博文中我们介绍 ...

  6. number问题

    Missing Number Given an array containing n distinct numbers taken from 0, 1, 2, ..., n, find the one ...

  7. Ubuntu 12.4 server 安装 redmine

    1,安装默认的redmine apt-get install apache2 libapache2-mod-passenger mysql-server redmine redmine-mysql 直 ...

  8. (iOS)开发中收集的小方法

    1.颜色转变成图片 - (UIImage *)createImageWithColor:(UIColor *)color {     CGRect rect = CGRectMake(0.0f, 0. ...

  9. Java ---自定义标签(二)

    上篇文章的最后,我们自定义了一个带属性的标签,并使用它完成了一个简单的案例.其实到这我们已经可以看出来,前端jsp页面只需要写一个类似html语法的标签,就可以完成将集合中的数据取出来并展示这么相对复 ...

  10. Android系统结构

    从上图中可以看出,Android系统架构为四层结构,从上层到下层分别是应用程序层.应用程序框架层.系统运行库层以及Linux内核层,分别介绍如下: (1)Appliacation Android平台不 ...