zookeeper:ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
Kafka:是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。
kafka的使用需要依赖zookeeper,一般在学习的时候可以使用单机搭建zookeeper的集群,在生产环境需要使用多台机器来搭建集群。kafka也能搭建集群。由于zookeeper和kafak网上资料比较多,也比较详细,就不做重复的工作,写详细的博客了,下面是我关于学习zookeeper和kafka的时候整理的一些资料:
zookeeper的学习博客:
http://www.cnblogs.com/wuxl360/p/5817471.html
http://blog.csdn.net/morning99/article/details/40426133
http://blog.csdn.net/lihao21/article/details/51778255
在zoo.cfg中修改日志目录,window下需要使用“\\”来进行转义:
#日志位置
dataLogDir=D:\\logs\\zookeeper
bin目录下:
window下启动zookeeper的命令:
cd D:\programing\zookeeper-3.4.10\bin
zkServer.cmd
查看启动进程命令:
jps
zookeeper客户端连接命令:
zkCli.cmd -server 127.0.0.1:2181
kafka学习博客:
http://blog.csdn.net/evankaka/article/details/52421314
http://www.cnblogs.com/alvingofast/p/kafka_deployment_on_windows.html
http://orchome.com/kafka/index
启动kafaka命令:
cd D:\programing\kafka_2.12-0.11.0.0
.\bin\windows\kafka-server-start.bat .\config\server.properties
创建话题命令:
.\bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic linlin
创建一个生产者命令:
.\bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic linlin
创建一个消费者命令
.\bin\windows\kafka-console-consumer.bat --zookeeper localhost:2181 --topic linlin
使用java操作kafka的代码地址:https://github.com/wj903829182/springboot/tree/master/kafkaDemo
上面的代码中java使用两种方式来操作kafka,一种是基于老的api,一种是基于新的api