您的位置:首页 > 其它

zookeeper和kafka实践

2016-04-09 01:11 375 查看
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:发送的消息

发送消息



接收到消息



至此,结束。

个人愚见,有什么问题可以指出来,大神勿喷
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: