写在前面

Kafka 解决了什么问题:

系统解耦(异步)

在复杂的分布式系统中,需要将系统拆解为多个小系统,小系统之间通过RPC通讯调用。

在复杂的调用链中,总是会出现前面的系统等待后面的系统的结果,这是由于各系统间的处理信息的速度不一致导致。

如果使用Kafka,就可以做到发送消息给kafka后就返回消息给用户,然后后面的系统异步的去处理。

kafka遇到过什么问题 kafka解决了什么问题_java

削峰

在秒杀的系统中就需要减少后面系统处理消息的数量,不然就会崩溃。有人会问,难道Kafka就不会崩溃,理论它是什么也没做只是收发数据,所以肯定是比业务系统的能力强的。但是Kafka也不是神,它也是会有扛不住的情况。这个概念是相对的。

kafka遇到过什么问题 kafka解决了什么问题_学习_02