kafka入门篇之什么是kafka
什么是kafka?
要学习任何的一种技术 我们都应先去了解它,知其之长出及其不足,方能事半功倍
先看看百度定义
Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。 对于像Hadoop的一样的日志数据和离线分析系统,但又要求实时处理的限制,这是一个可行的解决方案。Kafka的目的是通过Hadoop的并行加载机制来统一线上和离线的消息处理,也是为了通过集群来提供实时的消息。
上面说的可能不是那么容易令人理解 举个简单的栗子
家里有只鸡,每天下10个蛋,主人每天只能吃5个,多了 下不下,那么鸡蛋会丢失。
这时候如果你有个篮子,那么多余的鸡蛋便可放进去。 kafka 就是那个篮子
为什么要使用kafka
kafka具有如下几个优势
- 性能更快 (0拷贝)
- 更安全 (交叉备份)
- 吞吐量更大 (异步提交)
- 分布式日志 (日志压缩)
应用场景
- 消息
- 流处理
- 事件采集和分配
- 数据监测
- 日志