消息中间件--kafka(1)安装部署-创新互联
一、概念
1、什么是kafkaKafka是由Apache软件基金会开发的一个开源的分布式流处理平台,由LinkedIn公司开发,使用 Scala和Java编写。Kafka是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),它可以处理消费者在网站中的所有动作流数据。
专业领域包括成都网站设计、成都做网站、商城网站定制开发、微信营销、系统平台开发, 与其他网站设计及系统开发公司不同,创新互联的整合解决方案结合了帮做网络品牌建设经验和互联网整合营销的理念,并将策略和执行紧密结合,为客户提供全网互联网整合方案。Kafka在一个或多个可以跨越多个数据中心的服务器上作为集群运行。
Kafka集群将记录流存储在称为topic的类别中。
每个记录由一个键,一个值和一个时间戳组成。
2、流平台具有三个关键功能:
发布和订阅记录流,类似于消息队列或企业消息传递系统。
以容错的持久方式存储记录流。
处理记录流。
3、解决什么问题
Kafka主要设计目标如下:
以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间的访问性能。
高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条消息的传输。
支持Kafka Server间的消息分区,及分布式消费,同时保证每个partition内的消息顺序传输。
同时支持离线数据处理和实时数据处理。
Scale out:支持在线水平扩展
Kafka通常用于两大类应用程序:
建立实时流数据管道,以可靠地在系统或应用程序之间获取数据
构建实时流应用程序以转换或响应数据流
4、在Kafka中,客户端和服务器之间的通信是通过简单,高性能,与语言无关的TCP协议完成的。该协议已版本化,并与旧版本保持向后兼容性。提供了Java客户端,但是客户端支持多种语言。
二、安装部署kafka
下载地址:http://mirrors.hust.edu.cn/apache/kafka/2.0.0/kafka_2.11-2.0.0.tgz
kafka最为重要三个配置依次为:broker.id、log.dir、zookeeper.connect,kafka server端config/server.properties参数
vim config/server.properties
·公布访问地址和端口
advertised.listeners=PLAINTEXT://192.168.3.100:9092
配置zookeeper
默认localhost:2181,如果是其他的zookeeper改为相应地址
zookeeper.connect=localhost:2181
启动kafka
[root@node1 bin]# ./kafka-server-start.sh ../config/server.properties
注:此方法为前台启动,若需要后台启动,则在上面命令的最后加上 &
检测是否启动 netstat -tunlp | egrep "(2181|9092)"
测试发送信息和消费消息
创建主题
[root@node1 bin]# ./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
启动生产者
[root@node1 bin]#./kafka-console-producer.sh --broker-list localhost:9092 --topic test
启动消费者
[root@node1 bin]#./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
生产者发布消息
[root@node1 bin]# ./kafka-console-producer.sh --broker-list localhost:9092 --topic test
>is successfully
>good night
>
消费者接收到消息
[root@node1 bin]# ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
hallo
;
你好
is successfully
good night
注:消费者中会出现一些历史消息
由于启动添加了--from-beginning参数,所以会把过往消息也显示,省略该参数,即可不显示历史消息就!
如果该文章对你有所帮助,请点个赞支持下,谢谢! 分享题目:消息中间件--kafka(1)安装部署-创新互联
文章URL:http://azwzsj.com/article/dpsegg.html