卡夫卡

卡夫卡

Scroll Down

kafka

简介

Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。
在这里插入图片描述

首先安装lnmp然后

先进行解压librdkafka-master并安装

unzip librdkafka-master.zip 
cd librdkafka-master
./configure 
make && make install

其次解压php-rdkafka-master并进行安装

unzip php-rdkafka-master.zip 
cd php-rdkafka-master

安装依赖包

yum -y install autoconf
phpzie   #不打这个命令不能用 ./configure 命令   
./configure --with-php-config=/usr/local/php/bin/php-config --with-rdkafka
make && make test && make install

修改配置文件

ls /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/      #查看的东西复制下来去php里面添加模块
vim /usr/local/php/php.ini 

重启php

service php-fpm restart

修改主页文件

vim /usr/local/nginx/html/index.php

访问并验证

firefox 192.168.1.1/index.php
群集安装:

linkedin:kafka用于日志处理的分布式列队,支持离线和在线日志处理。
kafka是文件型存储。
offset唯一标记
Leader/follower所有读写/

每个consumer属于一个consumer group;
每个group中可以有多个consumer
Consumer group负责接收轮询写入的数据

增大访问量用一个group
如果多个进程之间的访问用多个group

消息传送机制:
At most once:最多一次无论成败不在重新发送
At least once:消息最少发送一次,如果失败,则重发
Exactly once:消息只会发送

zookeeper:
1、broker node registry:注册自己的节点信息
2、broker topic registry:注册broker中的topic和partition
3、consumer and consumer group:为了consumer负载平衡
4、consumer id registry:consumer的唯一id用来标记消费者信息
5、consumer offset registry:跟踪consumer消费的最大offset
6、partition owner registry:标记partition被哪个consumer消费

安装配置:

解压软件包并进行安装

tar -zxvf zookeeper-3.4.5.tar.gz 
mv zookeeper-3.4.5 /usr/local/zookeeper
cd /usr/local/zookeeper/conf/

将模板复制为配置文件

cp -p zoo_sample.cfg zoo.cfg
cd ..

创建myid

mkdir data
echo 1 > data/myid

验证一下

cat data/myid 
cd  /usr/local/zookeeper/bin/

修改脚本

vim zkEnv.sh

添加:
图中化红线的进行修改
在这里插入图片描述

vim zkServer.sh
添加:
readlink -f 注意符号 是TAB键上面的那个点``包起来的
在这里插入图片描述

vim zkCli.sh
添加:
readlink -f 注意符号 是TAB键上面的那个点``包起来的
在这里插入图片描述
设置软链接优化路径

ln -s /usr/local/zookeeper/bin/zkServer.sh  /usr/local/bin/zk-server
ln -s /usr/local/zookeeper/bin/zkCli.sh /usr/local/bin/zk-cli

启动服务

zk-server start

解压软件并安装

tar -zxvf kafka_2.9.1-0.8.2.2.tgz 
cd kafka_2.9.1-0.8.2.2

将文件移动到配置文件夹

mv kafka_2.9.1-0.8.2.2 /usr/local/kafka
cd /usr/local/kafka/bin/
./kafka-server-start.sh ../config/server.properties &

然后打开一个新终端

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

完结撒花