http://news.sohu.com/a/503303959_121124376
1.kafka定义
kafka是一个分布式的基于发布/订阅的消息队列,主要用于大数据处理,发布/订阅:将发布的信息分为不同的类别,只发送给感兴趣的对象
kafka最新定义:开源的分布式事件流平台,用于高性能数据管道,I/O流分析,数据集成,应用等
2.kafka应用场景
目前常见的消息队列:Kafka,ActiveMQ。RabbitMQ,RocketMQ
应用场景:
1.缓存,消峰(控制和优化数据流系统的速度,解决生产信息和消费信息不一致问题)
2.解耦(多种数据库类型,想要与大数据通过引擎对接,则直接通过MQ消息队列进行绑定)
3.异步处理(比如传统的注册信息,需要一步步短信返回则成功,而kafka作用可以直接将发送短信的事交给MQ消息队列,即使短信发送失败,用户注册信息也能成功)
kafka包下载
https://kafka.apache.org/downloads
kafka目录结构
bin #启动,关闭服务,之类的脚本
config #主要的配置文件
libs #依赖的库文件
LICENSE #许可证
licenses
NOTICE #注意事项
site-docs #网站文档
kafka主要配置
/kafka/config/server.properties
broker.id=0 #kafka集群唯一标识符,不能相同
log.dirs=/usr/local/kafka/datas #存储kafka数据目录
zookeeper.connect=域名/ip地址:端口(2181):域名/ip地址:端口(2181):域名/ip地址:端口/kafka(2181) #可以配置多个zookeeper连接,一般生产环境内可加个目录,不用时直接删除