Kafka简略介绍

Apache Kafka是一个分布式的 公布 - 订阅 消息传递零碎和一个弱小的队列,Kafka最后由Linkedin公司开发,是一个分布式、分区的、多正本的、多订阅者,基于zookeeper协调的分布式日志零碎(也能够当做MQ零碎), Linkedin于2010年奉献给了Apache基金会并成为顶级开源我的项目。 Kafka能够解决大量的数据,并使您可能将音讯从一个端点传递到另一个端点。 Kafka适宜离线和在线音讯生产。 Kafka音讯被保留在磁盘上并在集群内复制以避免数据失落。 Kafka建设在ZooKeeper同步服务之上。 它与Apache Storm和Spark完满集成,用于实时流数据分析。

长处:

  • 可靠性 ---卡夫卡是分布式,分区,复制和容错。
  • 可扩展性 --- Kafka音讯零碎无需停机即可轻松扩大。
  • 耐用性 --- Kafka应用分布式提交日志,这意味着音讯尽可能快地保留在磁盘上,因而它是长久的。
  • 性能 ---Kafka对于公布和订阅音讯都有很高的吞吐量。 它保持稳定的性能,即便存储了许多TB数据量(级)的音讯。

Kafka速度十分快,可确保零停机工夫和零数据失落。

官网下载地址: http://kafka.apache.org/downl...
官网下载包: kafka_2.11-1.1.0.tgz

Kafka依赖Zookeeper

Kafka依赖Zookeeper,能够独自装置Zookeeper,也能够间接启动Kafka包里自带的Zookeeper

MacBook Linux装置zookeeper

MacBook Linux装置Kafka

#解压tar -zxvf kafka_2.11-1.1.0.tgz#进入解压目录cd kafka_2.11-1.1.0#创立日志目录mkdir kafka-logs#批改配置vim config/server.properties#指定日志目录log.dirs=/Users/liang/software/kafka_2.11-1.1.0/kafka-logs#启动自带的zookeeper,也能够应用内部的zookeeperbin/zookeeper-server-start.sh config/zookeeper.properties#后盾形式启动#bin/zookeeper-server-start.sh config/zookeeper.properties &#bin/zookeeper-server-start.sh -daemon config/zookeeper.properties &#启动kafka服务 bin/kafka-server-start.sh config/server.properties#后盾形式启动#bin/kafka-server-start.sh config/server.properties &#bin/kafka-server-start.sh -daemon config/server.properties &#nohup bin/kafka-server-start.sh config/server.properties > /dev/null 2>&1 &#进行kafkabin/kafka-server-stop.sh#进行zookeeperbin/zookeeper-server-stop.sh

常用命令

#查问topicbin/kafka-topics.sh --list --zookeeper localhost:2181#创立topic bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test#生产者 bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test#消费者 bin/kafka-console-consumer.sh --zookeeper localhost:2181 --from-beginning --topic test

参考链接:
https://www.cnblogs.com/dragk...
https://blog.csdn.net/zxy9878...
https://colobu.com/2014/08/06...
https://www.cnblogs.com/zhaoj...