zookeeper和kafka实践

来源:互联网 发布:社交网络结尾视频 编辑:程序博客网 时间:2024/06/06 05:19

1、使用kafka,依赖zookeeper和scala,对应版本从网上找

2、都安装完成后,进入kafka的安装路径下面的bin目录,打开


存在这些文件

常用命令说明:

kafka-console-producer.sh(命令模式下发送消息)【./kafka-console-producer.sh --broker-list localhost:9092 --topic test】

kafka-console-consumer.sh(命令模式下消费消息)【./kafka-console-consumer.sh --zookeeper localhost:9092 --topic test --from-beginning】

kafka-server-start.sh(启动kafka)【./kafka-server-start.sh ../config/server.properties】

kafka-server-stop.sh(关闭kafka)

zookeeper-server-start.sh(启动zookeeper)【./zookeeper-server-start.sh ../config/zookeeper.properties】

zookeeper-server-stop.sh(关闭zookeeper)

3、接下来进入../config目录


常用说明:

server.properties(kafka服务配置,其中server1和server2是多个broker的配置文件)

zookeeper.properties(zookeeper的配置文件)

进入server.properties




说明:

host.name--->producer和consumer是通过这个主机名(advertised.host.name)来连接broker的,而如果这个值没有设置,则会使用上面的host.name的值,如果上面的host.name也没有设置,则会使用java.net.InetAddress.getCanonicalHostName()获取的值。从Zookeeper中可以看出,默认的时候该broker是localhost,从其他机器访问当然不可能成功。【解决Failed to send messages after 3 tries错误的方案

zookeeper.connect--->zookeeper地址端口(最好都配成服务器的真实ip,不要localhost,不然程序里面不好调用)


以上配置完毕,接下来实例测试

1、命令:

①:启动zookeeper

②:启动kafka

③:producer发送消息

④:consumer消费消息

2、程序代码

定义生产者


topic:对应的主题

message:发送的消息

发送消息


接收到消息


至此,结束。



个人愚见,有什么问题可以指出来,大神勿喷

0 0
原创粉丝点击