轻松学会kafka不可能吗?NO!kafka基础篇

Posted Friends of the wind

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了轻松学会kafka不可能吗?NO!kafka基础篇相关的知识,希望对你有一定的参考价值。

理论

Kafka 是一款开源的、轻量级的、分布式、可分区和具有复制备份的(Replicated)、基于ZooKeeper 协调管理的分布式流平台的功能强大的消息系统。与传统的消息系统相比,Kafka能够很好地处理活跃的流数据,使得数据在各个子系统中高性能、低延迟地不停流转。

Kafka定位就是一个分布式流处理平台。作为一个流式处理平台,必须具备以下3个关键特性。

• 能够允许发布和订阅流数据。从这个角度来讲,平台更像一个消息队列或者企业级的消息系统。

• 存储流数据时提供相应的容错机制。

• 当流数据到达时能够被及时处理。


案例

提示:可根据实际环境需求对选项、参数进行优化

需求:通过Kafka实现数据发布,客户端能及时收到订阅的数据。

安装zookeeper

1、 下载或上传软件包并解压

tar -xf zookeeper-3.4.9.tar.gz

移动并重命名
mv zookeeper-3.4.9 /usr/local/zookeeper

2、 编辑配置

1)进入样例目录
cd /usr/local/zookeeper/conf/

2)加-p拷贝(保留源文件权限)

cp -p zoo_sample.cfg zoo.cfg

3、 声明节点id号

echo 1 > /usr/local/zookeeper/data/myid

4、 修改默认脚本文件

1)修改日志文件存放路径和查询的方式为轮询
vim zkEnv.sh

2)vim zkServer.sh

3)vim zkCli.sh

5、优化,创建软连接到系统程序默认搜索路径

ln -s zkServer.sh /usr/local/bin/
ln -s zkCli.sh /usr/local/bin/

6、在当前路径启动服务

[root@localhost bin]# ./zkServer.sh start

7、验证:

安装kafka

1、下载或上传软件包并解压

tar xf kafka_2.11-2.2.1.tgz

移动并重命名
mv kafka_2.11-2.2.1 /usr/local/kafka

2、进入执行程序文件目录

cd /usr/local/kafka/bin/

3、以后台运行方式启动服务,并要指定其配置文件

4、查看端口,验证服务启动是否正常

5、测试

1)producer使用localhost主机和9092端口,名称为test
[root@localhost bin]# ./kafka-console-producer.sh --broker-list localhost:9092 --topic test
输入内容:看见我你就成功啦 ##消息内容自定义,如图:

2)输入完成后新打开一个终端,作为消息接受者
cd /usr/local/kafka/bin/
[root@localhost bin]# ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
看到我们刚才发送的消息

以上是关于轻松学会kafka不可能吗?NO!kafka基础篇的主要内容,如果未能解决你的问题,请参考以下文章

kafka-通俗易懂基础概念篇

kafka基础篇——kafka总结

kafka基础篇——kafka消费者客户端

kafka基础篇——kafka服务端原理及工作机制详解

kafka基础篇——kafka生产者客户端

kafka基础篇——kafka集群的原理及工作机制详解