Kafka简述

Kafka和RabbitMQ一样,是个消息服务,差不多就是个消息代理,接收和转发消息(接收-存储-转发),差不多是一个具有存储功能的对列。就是生产者(发布者)往里面发送消息,相当于往里面放数据,然后消费者(订阅者)往里面拿对应消息出来处理。

生产消费者模式(数据接入):就比如每刷卡进入一个乘客,闸机就会上传交易数据上来,数据上报接口拿到数据后就会放到对列中就立即返回,然后数据处理接口则从对列中取出数据进行处理。

订阅发布模式(事件分发):比如我们的设备离线时,需要在这件事上做其他处理,比如发送短信或邮件通知等等。发送短信或邮箱通知是事件处理,离线是事件。该事件处理绑定该事件,当服务模块发布事件时,消息中心会分发到处理器的对应处理者上。

下面来讲讲Kafka的生产消费者模式:

Kafka主要由生产者,消费者和Broker组成,其中生产者和消费者由我们编写而已。

Topic:是消息类别,用来区分、隔离不同的消息数据,比如交易类的数据、行程类的数据等等。就是所谓的往哪个topic写数据发送数据。然后从哪个topic中取出数据。

Consumer Group:消费者组,同一个topic会发到不同的group里去,然后同一个group中只有一个worker拿到这个数据(就是说一个消费者组里有好多消费者,一个消费者组里只有一个消费者拿到这个topic里的数据)。

下面给出生产者发送消息和消费者消费消息的部分:

生产者:

     Client:

          应用:

生产者主要参数是要发送的topic和要发送的消息。

消费者:

   Client:

           应用:

消费者主要参数是消费者组和topics。其中上面的LoopInterface是自定义的,遍历topic,然后每个topic执行LoopInterface的run方法,进行消费者和消息的一些处理。如:

上面的实例是用于数据同步上的。将业务上的数据同步到后台管理上。

这就是kafka的简单概述,其实最简单的理解就是kafka帮你把要发送的数据先存起来,相当于存储功能吧,然后需要数据那一端直接从kafka那里获取数据。只是怎么获取,怎么存要了解而已。根据topic去区分数据类别,然后也是根据topic去取数据类别吧。具体的再仔细研究了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值