美文网首页
Kafka探索笔记

Kafka探索笔记

作者: AceCream佳 | 来源:发表于2019-02-12 11:00 被阅读0次

1.kafka是啥?

A distributed streaming platform
-- kafka官网

翻译翻译,说kafka是 分布式流媒体平台,流媒体平台有三个关键功能:

  • 发布和订阅记录流,类似于消息队列或企业消息传递系统。(消息队列)
  • 以容错的持久方式存储记录流。(持久化)
  • 处理发生的记录流。(流处理)

2.配置

主要有两个文件需要安排:server.properties 和 zookeeper.properties
要先修改一下日志的目录,因为默认是在tmp目录下,tmp目录里的内容会丢失,具体原因是重启后内容会被删除。
server.properties:

原本: log.dirs=/tmp/kafka-logs 
修改为:log.dirs=自定义目录

zookeeper.properties:

原本: dataDir=/tmp/zookeeper 
修改为:dataDir=/usr/local/zookeeper/data

上述是kafka自带的配置文件,我们也可以通过配置server.properties去指定使用其他服务器上的zookeeper
但是!!!
server.properties中有一个关于zookeeper的部分

############################ Zookeeper ############################## 
Zookeeper connection string (see zookeeper docs for details).
# This is a comma separated host:port pairs, each corresponding to a zk
# server. e.g. "127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002".
# You can also append an optional chroot string to the urls to specify the
# root directory for all kafka znodes.zookeeper.connect=zookeeper所在的ip地址:端口(默认2181)
# Timeout in ms for connecting to zookeeperzookeeper.connection.timeout.ms=6000

3.启动

设置好的话,就不需要去启动kafka自带的zk了。

这里说一下如果其他没有配置
需要先启动自带的zookeeper
位置是 : bin/zookeeper-server-start.sh config/zookeeper.properties

这里注意一点!kafka生命周期里必须要有zookeep的存在!!!
kafka开启前,要先开启zk
kafka关闭后,才允许关闭zk

kafka启动命令:

bin/kafka-server-start.sh config/server.properties 1>/dev/null  2>&1  &

解释一下:
1>/dev/null 2>&1 是将命令产生的输入和错误都输入到空设备,不输出到控制台 其中/dev/null 是空设备。

这样就打开了kafka,接下来可以 用flume去搭配使用kafka了,具体是修改flume的配置文件。
当然我们可以给kafka开启主题Topic,具体类似RabbitMQ里面设定路由规则。
比如说:

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

上面这句就开启了一个test主题。我们可以向主题发送消息!

4.发送消息

启动一个生产者!这里可以说一下,kafka自带一个命令行客户端,它将从文件或标准输入中获取输入,并将其作为消息发送到Kafka集群。默认情况下,每行将作为单独的消息发送。
首先启动生产者:

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test

然后发送一些信息:

> hello world
> hello???hello?!Oh!!!Fine~

5.接受消息

启动一个消费者:

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

这样就可以直接接到信息了!

相关文章

  • Kafka探索笔记

    1.kafka是啥? A distributed streaming platform-- kafka官网 翻译翻...

  • Kafka知识探索

    环境搭建(Linux) 1. Kafka下载 下载地址:http://kafka.apache.org/downl...

  • Kafka学习笔记

    kafka笔记 0. Kafka 安装 下载 wget http://mirrors.shu.edu.cn/apa...

  • kafka-2.7.0(一)概念

    概念 Kafka 并没有完全遵照 JMS范,它另辟蹊径,探索出了一条独有的道路 kafka是把消息写到页缓存中,然...

  • 【Kafka】Kafka入门手记

    1. 前言 本文为 Kafka 入门笔记,主要包括 Kafka 单节点部署、生产消费消息,以及新手踩坑记录。 Ka...

  • sptest

    # Spring Kafka 学习笔记 ## 1 接收消息 接收消息需要提供MessageListenerCont...

  • Kafka学习笔记

    Kafka 学习笔记 内容大部分引用自Info - Apache Kafka:下一代分布式消息系统 原文作者Abh...

  • Kafka笔记

    earliest 当各分区下有已提交的offset时,从提交的offset开始消费;无提交的offset时,从头开...

  • kafka笔记

    kafka的定义:是一个分布式消息系统,由LinkedIn使用Scala编写,用作LinkedIn的活动流(Act...

  • Kafka笔记

    Kafka是一个分布式消息队列。Kafka对消息保存时根据Topic进行归类,发送消息者称为Producer,消息...

网友评论

      本文标题:Kafka探索笔记

      本文链接:https://www.haomeiwen.com/subject/dqmheqtx.html