Kafka学习笔记:初识Kafka
2017-08-26 14:21
295 查看
前言
Apache Kafka is a distributed streaming platform and is used for building real-time data pipelines and streaming apps.In Kafka the communication between the clients and the servers is done with a simple, high-performance, language agnostic TCP protocol.(更多详情见官网介绍)下载安装
下载解压,设置并更新环境变量。Kafka依赖于ZooKeeper所以必须先启动ZooKeeper服务,如果没启动ZooKeeper的话也可以使用如下命令获取一个单节点ZooKeeper实例:zookeeper-server-start.sh /usr/DevProgram/kafka_2.11-0.11.0.0/config/zookeeper.properties
启动成功守护进程会绑定到某一端口:
INFO binding to port 0.0.0.0/0.0.0.0:2181 (org.apache.zookeeper.server.NIOServerCnxnFactory)
新开一终端,启动Kafka服务:
kafka-server-start.sh /usr/DevProgram/kafka_2.11-0.11.0.0/config/server.properties
启动成功:
INFO [Kafka Server 0], started (kafka.server.KafkaServer)
使用JPS可以看到zookeeper与kafka的进程:
创建一个单分区单副本的”test”主题:
kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test; kafka-topics.sh --list --zookeeper localhost:2181;
使用生产者程序往主题发送消息,默认情况下消息是按行发送的:
kafka-console-producer.sh --broker-list localhost:9092 --topic test; >helloworld1 >helloworld2
新开终端,启动消费者程序接收指定主题下的消息:
kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
此时消费者终端会显示生产者之前往主题中输入的消息。如果此时在生产者终端中输入新消息,消费者终端会同步显示消息:
生产者与消费者并不直接交互,而是通过kafka这一中间件来间接通信。在生产者-消费者直接通信模式中,消息的传递是以”推”的形式发送的;而在kafka模型中,消费者获取消息是以”拉”的形式获取的,这降低了消费者端的负担。
相关文章推荐
- UML学习笔记(1)——初识UML
- spring-kafka学习笔记
- DOM学习笔记1:初识DOM
- 【R语言学习笔记】初识(六)
- Kafka 官方文档学习笔记 -- introduction篇
- 【jQuery 学习笔记】初识jQuery
- python学习笔记(一)——Python初识(IDE环境及基本语法,spyder快捷方式)
- cocos2d游戏引擎学习笔记(初识框架结构和内存规划)
- [flash and php bible 学习笔记]初识 socket 1
- kafka学习笔记
- JStorm学习笔记-基于Kafka、ElasticSearch、HBase简单实例
- jQuery学习笔记1——初识jQuery
- ASP Forum2.0学习笔记之一---初识default.aspx
- kafka学习笔记——基本概念与安装
- 【Python】初识Python的学习笔记
- Ambari学习笔记:初识Ambari,编译(存在问题)
- 【安全牛学习笔记】初识sql注入漏洞原理
- JSON学习笔记一:JSON入门,JSON初识
- Kafka源码学习笔记--KafkaProducer
- caffe学习笔记初识siamese