本文致力于写一篇非技术人员也能看懂的kafka术语介绍。
kafka是一个消息引擎系统,它可以传递消息,也具有转换消息的能力,对于今天的主题来说,我们关注传递消息的能力就够了,因为我们一般接触到的术语都跟传递消息的功能有关。
文末有一个本文介绍的术语的列表,对kafka有一些了解的可以先看一下,有助于对文章的内容有一个全局的印象。
1. Kafka的基本结构
如果一个系统可以用来传递消息,那么它肯定有发送者和接收者,接收者消费发送者发来的消息,因此也可以叫做消费者。
kafka中发送者的角色对应着producer这个概念,消费者的角色对应着consumer的概念。
我们经常可以听到kafka服务器这样的概念,服务器可以叫做kafka server。如果有服务端,就说明它是客户端服务器模式的。
那么客户端是什么呢?就是刚刚我们介绍过的producer和consumer。客户端和服务器交互的方式如下图。
producer给broker发送数据,这些消息会存到kafka server里,然后consumer再向kafka server发起请求去消费这些数据。
kafka server在这个过程中像是一个帮你保管数据的中间商。所以kafka服务器也可以叫做broker(broker直接翻译可以是中间人或者经纪人的意思)。
2.Kafka存在的意义
为什么producer的数据不直接发给comsumer,需要在中间加一个“中间人“呢&#x