kafka-通俗易懂基础概念篇

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kafka-通俗易懂基础概念篇相关的知识,希望对你有一定的参考价值。

       一些大的网站如果想统计用户的访问情况,如果每个用户的访问,都在后端经过一系列的用户行为分析,然后再给客户返回结果这显然不现实,直接写入数据库,数据库也扛不住,

这时候就需要一个消息系统,在用户一个请求过来后,服务器只需要把这次操作扔到后端,不用管后端的处理结果,直接返回给用户结果,这样用户体验才比较好,比较符合实际情况


Kafka是一个分布式的消息系统,作为用户来说,只需要把数据扔给kafka,在需要的时候直接读就可以了,非常方便,实现异步非io阻塞

kafka分为productorconsumerbroker

productor:消息生产者,就是向kafka里面扔数据的一方(可以是多个productor向同一个写入)

consumer:消息消费者 ,就是从kafka里面消费(取)数据的一方(也可以是多个consumer向同一个kafka取数据)

broker:一个服务器实例,这个就是productor写入的服务器(实例),consumer从这里取数据,


topic:一条消息流

partition:分区,每个topic可以按特定的分区逻辑分区,类似mysql的分表,

partition的数据决定了一个topic可以同时多少个进程(用户)去写入,消费它(如果一个topicpartition3,那么productor只能同时起3个进程写入,consumer同时有3个进程进行消费,如果启动的数量超过3个则会一直等待)

consumer group:消费者组,相同groupidconsumer组成一个组

如果多个consumer都指定同一个groupid,则这些consumer会自动组成一个负载均衡的模式,消费一个topic

offset:一条消息在消息流中的偏移


举例来说:数据12可以往topicidtop1里面写入 ,数据34可以往topicidtop2里面写入,

在消费时,指定同一个groupid,消费topicidtop1topic,连续消费2次可以消费12,如果换一个groupid,则又从头开始消费,也就是同一条消费,可以被多个groupid重复消费



本文出自 “马鹏飞——著” 博客,请务必保留此出处http://mapengfei.blog.51cto.com/1552412/1926063

以上是关于kafka-通俗易懂基础概念篇的主要内容,如果未能解决你的问题,请参考以下文章

全网最通俗易懂的Kafka入门!

音视频开发基础知识——最通俗易懂的视频编解码理论知识

Kafka超详细知识点汇总(基础篇)

啥是指针?指针怎么用?来看C指针快速入门(结合代码和图例讲解,通俗易懂)

音视频开发基础知识——最通俗易懂的视频编解码理论知识

数据库 函数依赖及范式(最通俗易懂)