一. 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. yolov2训练ICDAR2011数据集

    首先下载数据集train-textloc.zip 其groundtruth文件如下所示: 158,128,412,182,"Footpath" 442,128,501,170,&q ...

  2. 全新的 flow.ci Dashboard UI 上线

    全新的 flow.ci Dashboard 页面上线了,更快捷地创建项目,构建列表页面新增分支,Pull Request 界面:侧边栏新增构建任务监控和项目监控,整个 Dashboard 界面焕然一新 ...

  3. windows phone 8.1开发:文件选择器FileOpenPicker

    原文出自:http://www.bcmeng.com/fileopenpicker/ 今天小梦给大家分享一下 windows phone 8.1中的文件选择器,和之前的windows phone8的不 ...

  4. ZJOI2017 Day3 滚粗记

    私のZJOI Day3 2017-3-21 07:52:53 今天,考了人生当中的第一次省选(虽然只是普及组三等奖但仍然有幸能体会一下).据胡老师说,这就是来体验一下被大神虐--真的是这样,听课听不懂 ...

  5. 批量安装python库函数---pip

    废话少说,要的就是干货 pip install -r 文件名 注意如果输入文件名报错,建议使用文件的绝对路径. 作者:marsggbo

  6. [.NET] 一步步打造一个简单的 MVC 电商网站 - BooksStore(二)

    一步步打造一个简单的 MVC 电商网站 - BooksStore(二) 本系列的 GitHub地址:https://github.com/liqingwen2015/Wen.BooksStore 前: ...

  7. 【转】Android常用工具类

    主要介绍总结的Android开发中常用的工具类,大部分同样适用于Java. 目前包括HttpUtils.DownloadManagerPro.ShellUtils.PackageUtils.Prefe ...

  8. 持续集成:TestNG组织如何测试用例 1

    持续集成:TestNG组织如何测试用例   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:90 ...

  9. 在IIS上部署你的ASP.NET Core项目

    概述 与ASP.NET时代不同,ASP.NET Core不再是由IIS工作进程(w3wp.exe)托管,而是使用自托管Web服务器(Kestrel)运行,IIS则是作为反向代理的角色转发请求到Kest ...

  10. jmeter 登录并发 (此文章有待修改)

    1.先通过录制通过取样器找到所需要的请求.并新建添加至线程组,也可以根据以下样式找到所需请求.复制添加至线程组 寻找请求 添加后 2.添加CSV配置元件 3.填写CSV参数 4.修改参数.这是格式:& ...