kafka学习(一)
来源:互联网 发布:windows media pl 编辑:程序博客网 时间:2024/06/09 22:09
kafka是用于构建实时数据管道和流应用程序。具有横向扩展,容错,wicked fast(变态快)等优点。
什么是Kafka?
什么是Kafka?
Apache kafka是消息中间件的一种,然而消息中间件又是什么呢?
什么是消息中间件?
什么是消息中间件?
举个例子,生产者消费者,生产者生产鸡蛋,消费者消费鸡蛋,生产者生产一个鸡蛋,消费者就消费一个鸡蛋,假设消费者消费鸡蛋的时候噎住了(系统宕机了),生产者还在生产鸡蛋,那新生产的鸡蛋就丢失了。再比如生产者很强劲(大交易量的情况),生产者1秒钟生产100个鸡蛋,消费者1秒钟只能吃50个鸡蛋,那要不了一会,消费者就吃不消了(消息堵塞,最终导致系统超时),消费者拒绝再吃了,”鸡蛋“又丢失了,这个时候我们放个篮子在它们中间,生产出来的鸡蛋都放到篮子里,消费者去篮子里拿鸡蛋,这样鸡蛋就不会丢失了,都在篮子里,而这个篮子就是”kafka“。
鸡蛋其实就是“数据流”,系统之间的交互都是通过“数据流”来传输的(就是tcp、http什么的),也称为报文,也叫“消息”。
消息队列满了,其实就是篮子满了,”鸡蛋“ 放不下了,那赶紧多放几个篮子,其实就是kafka的扩容。
现在知道kafka是干什么的了吧,它就是那个"篮子"。
Kafka名词解释:
鸡蛋其实就是“数据流”,系统之间的交互都是通过“数据流”来传输的(就是tcp、http什么的),也称为报文,也叫“消息”。
消息队列满了,其实就是篮子满了,”鸡蛋“ 放不下了,那赶紧多放几个篮子,其实就是kafka的扩容。
现在知道kafka是干什么的了吧,它就是那个"篮子"。
Kafka名词解释:
后面会看到一些关于kafka的名词,比如Topic、Producer、Consumer、Broker,我这边来简单说明一下。
Producer
:生产者,就是它来生产“鸡蛋”的。
Consumer
:消费者,生出的“鸡蛋”它来消费。
Topic
:你把它理解为标签,生产者每生产出来一个鸡蛋就贴上一个标签(topic),消费者可不是谁生产的“鸡蛋”都吃的,这样不同的生产者生产出来的“鸡蛋”,消费者就可以选择性的“吃”了。
Broker
:就是篮子了。
上面只是属于业务的角度,如果从技术角度,topic标签实际就是队列,生产者把所有“鸡蛋(消息)”都放到对应的队列里了,消费者到指定的队列里取。
阅读全文
0 0
- Kafka学习一
- kafka学习(一)
- Kafka学习-系列一
- kafka学习一:入门
- kafka学习一:简介
- Kafka学习(一)
- kafka学习(一)
- Kafka入门学习《一》
- Kafka 学习笔记(一)
- Kafka学习笔记(一)
- Kafka 学习应用笔记(一)
- Kafka学习笔记一:基本概念
- Kafka学习(一):Kafka背景及架构介绍
- Kafka学习总结(一)——Kafka简介
- Kafka学习(一):Kafka背景及架构介绍
- kafka学习一:原理和概念
- Kafka学习整理一(基础概念)
- kafka学习 (一)集群安装配置
- SQL语句判断记录是否存在
- Android中的软件的自动更新(包括静默更新,需Root权限)
- js获取时间(本周、本季度、本月..)
- JVM类文件结构
- tar使用
- kafka学习(一)
- 畅 怎样通过PDF Transformer+复制PDF文档中的内容
- centos7 防火墙
- angularJS on-hold用法
- 不建议使用JPasswordField.getText()
- 如何生成短链接
- spark-streaming 编程(三)连接kafka消费数据
- Java 集合深入理解(4):List<E> 接口
- slf4j的使用 log4j实现方式