SpringBoot实战(十四)之整合KafKa
本人今天上午参考了不少博文,发现不少博文不是特别好,不是因为依赖冲突问题就是因为版本问题。 于是我结合相关的博文和案例,自己改写了下并参考了下,于是就有了这篇文章。希望能够给大家帮助,少走一些弯路。 一、KafKa的介绍 1.主要功能 根据官网的介绍,ApacheKafka®是 一个分布式流媒体平台 ,它主要有3种功能: a.发布和订阅消息流,这个功能类似于消息队列,这也是kafka归类为消息队列框架的原因。 b.以容错的方式记录消息流,kafka以文件的方式来存储消息流。 c.可以再消息发布的时候进行处理。 2.使用场景 a.在系统或应用程序之间构建可靠的用于传输实时数据的管道,消息队列功能。 b.构建实时的流数据处理程序来变换或处理数据流,数据处理功能。 3.详细介绍 Kafka目前主要作为一个分布式的发布订阅式的消息系统使用,下面简单介绍一下kafka的基本机制 消息传输过程: Producer 即生产者,向Kafka集群发送消息,在发送消息之前,会对消息进行分类,即Topic,上图展示了两个producer发送了分类为topic1的消息,另外一个发送了topic2的消息。 Topic 即主题,通过对消息指定主题可以将消息分类,消费者可以只关注自己需要的Topic中的消息 Consumer 即消费者,消费者通过与kafka集群建立长连接的方式