1. 什么是kafka
这个B站学习,先搁置先不学了:https://www.bilibili.com/video/BV1Xy4y1G7zA?p=5&spm_id_from=pageDriver
kafka:是一个分布式,支持分区,多副本,基于 zookeeper 协调的分布式发布订阅消息系统。
1.1 kafka使用场景
-
日志收集:可以用kafka收集各种服务的日志,通过kafka以统一接口服务的方式开放给各种consumer。
-
作消息系统:实现解耦,异步等功能。
-
用户活动跟踪:kafka经常用来记录用户的各种活动,如:浏览网页,搜索,点击等活动,这些活动信息被各个服务器发布到kafka中,然后订阅者通过订阅来做实时的监控分析。
-
运营指标:kafka经常用来记录运营监控数据,包括收集各种分布式应用的数据,生产各种操作的集中反馈,比如报警和报告。
1.2 目前市面上的中间件流派
- RabbitMQ:https://www.cnblogs.com/itlihao/p/14630396.html
- RocketMQ:阿里内部大神,根据kafka的内部执行原理,手写的消息中间件。
- Kafka:Kafka与RabbitMQ相比,前者更适合IO高吞吐的处理。Kafka效率是毫秒级别,RabbitMQ是微秒级别的。
- ...