消息中间件--kafka(1)安装部署
一、概念
1、什么是kafka
Kafka是由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)安装部署的更多相关文章
- kafka 的安装部署
Kafka 的简介: Kafka 是一款分布式消息发布和订阅系统,具有高性能.高吞吐量的特点而被广泛应用与大数据传输场景.它是由 LinkedIn 公司开发,使用 Scala 语言编写,之后成为 Ap ...
- 消息中间件之zookper安装部署
消息中间件之zookper安装部署jdk可以在官网或者网上下载[root@q tools]# chmod 755 jdk-8u40-linux-x64.rpm [root@q tools]# rpm ...
- Kafka Manager安装部署及使用
为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个叫做Kafka管理器的基于Web工具,叫做 Kafka Manager.本文对其进行部署配置,并安装配置kafkatool对k ...
- 【kafka】安装部署kafka集群(kafka版本:kafka_2.12-2.3.0)
3.2.1 下载kafka并安装kafka_2.12-2.3.0.tgz tar -zxvf kafka_2.12-2.3.0.tgz 3.2.2 配置kafka集群 在config/server.p ...
- 4.kafka的安装部署
为了安装过程对一些参数的理解,我先在这里提一下kafka一些重点概念,topic,broker,producer,consumer,message,partition,依赖于zookeeper, ka ...
- Kafka介绍及安装部署
本节内容: 消息中间件 消息中间件特点 消息中间件的传递模型 Kafka介绍 安装部署Kafka集群 安装Yahoo kafka manager kafka-manager添加kafka cluste ...
- Kafka概述及安装部署
一.Kafka概述 1.Kafka是一个分布式流媒体平台,它有三个关键功能: (1)发布和订阅记录流,类似于消息队列或企业消息传递系统: (2)以容错的持久方式存储记录流: (3)记录发送时处理流. ...
- Linux下单机安装部署kafka及代码实现
技术交流群:233513714 这几天研究了kafka的安装及使用,在网上找了很多教程但是均以失败告终,直到最后想起网络方面的问题最终才安装部署成功,下面就介绍一下kafka的安装部署及代码实现 一. ...
- Kafka Eagle安装详情及问题解答
1.概述 最近有很多同学给笔者留言,说在安装Kafka Eagle的时候,会遇到一些问题,请教如何解决?今天笔者就在这里总结一下安装步骤,和一些安装的注意事项,以及解决方式. 2.内容 在安装Kafk ...
随机推荐
- Python 解决八皇后问题
问题介绍 八皇后问题是一个以国际象棋为背景的问题:如何能够在 \(8\times8\) 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一 ...
- 1 Configuring SAP ERP Sales and Distribution -introduction to SAP
SAP is one of the most popular enterprise resource planning (ERP) solutions inthe world. It offers a ...
- MySQL 常用工具sysbench/fio/tpcc等测试
为什么要压力测试采购新设备,评估新设备性能开发新项目,评估数据库容量新系统上线前,预估/模拟数据库负载更换数据库版本,评估性能变化 关注指标 CPU %wait,%user,%sys 内存 只内存读 ...
- UniEAP V4 WorkShop用户手册
版权声明<UniEAP V4 WorkShop用户手册>的版权归东软集团(大连)有限公司所有.未经东软集团(大连)有限公司的书面准许,不得将本手册的任何部分以任何形式.采用任何手段(电子的 ...
- 【Qt开发】QString与数字类型的转换(不同进制)
把QString转换为 double类型 方法1.QString str="123.45"; double val=str.toDouble(); //val=123.45 方法2 ...
- vue --》elementUI 中 el-table组件 如何实现点击列,让该列高亮显示 ?
在elmentui官网中,只给了让当前行高亮显示的方法,但是如何让当前列高亮显示呢? <template> <div> <el-table :data="tab ...
- selenium—隐式等待和显式等待
一.隐式等待和显式等待的区别 隐式等待:是整个页面的等待.设置一个最长的等待时间,在规定时间内整个页面加载完成,则执行下一步,否则继续等待直到最长等待时间结束. 显式等待:是针对某个元素的等待.在设置 ...
- Linux下路由配置梳理(转)
转自:https://www.cnblogs.com/kevingrace/p/6490627.html 在日常运维作业中,经常会碰到路由表的操作.下面就linux运维中的路由操作做一梳理:----- ...
- Go语言中byte类型和rune类型(五)
本篇内容本来准备在上一篇写的,想了想还是拆开写. go语言中字符串需要使用用双引号,而单引号用来表示单个的字符,字符也是组成字符串的元素.go语言的字符有两种: uint8类型,或者叫 byte 型, ...
- <<C++ Primer>> 第三章 字符串, 向量和数组 术语表
术语表 第 3 章 字符串, 向量和数组 begin: 是 string 和 vector 的成员,返回指向第一个元素的迭代器.也是一个标准库函数,输入一个数字,返回指向该数字首元素的指针. 缓 ...