一、kafka
1、为什么要使用消息队列?
使用异步的通信方式:
同步方式存在的问题:
造成系统开销-响应时间比较长在同步的过程中要保证每个服务都顺利执行完,整个链路才执行完,如果受到网络的影响,整个链接的执行同样被影响。-导致用户体验较差。
异步的优势:
明显提高系统的吞吐量即使有服务失败,可通过分布式事务方案解决
消息队列解决:通信问题
二、消息队列的分类
rabbitMQ:
rockerMQ: 阿里内部一个大神,根据kafka的内部执行原理,手写的一个消息队列中间件
kafka: 全球消息处理性能最快的一款MQ
zeroMQ:
消息队列中间件有什么区别:
1、有broker
整个broker, 依据topic来进行消息的中转
2、无broker
在正常者和消费者之间没有使用broker, 例如:zeroMQ,直接使用socker进行通信
三、kafka基本概念
kafka是一个分布式的,分区的消息服务。
消息相关术语: