我们为什么要使用 Kafka

我们为什么要使用 Kafka ?

暂时不说那么多原因,我只想到了其中一个:

当我们有多个数据处理程序,需要一个源头的数据来“喂”,才能发挥数据处理最终的功效时!

比如我们有一个类似淘宝一样的平台。

有平日的订单流,也有用户每日的浏览,点击,询问等活动日志。

订单流我们会直接记录到数据库,做持久化。

而点击流,评论等等活动内容,

我们是由舆论分析系统,点击分析系统,推荐分析系统等其他系统来处理的

这些分析系统,怎么抓取网站上的这些活动内容?

仅仅靠单一的点对点,那么无疑会增加网页设计的工作量,

因为不得不增加对多个系统的直连访问

而使用了 Kafka 等日志系统

网页只需要发一次消息到 Kafka cluster

那么相关有兴趣的订阅方,就会到 Kafka Cluster 上读取自己想要的 topic

拿到自己感兴趣的 topic, 就可以拉到自己系统做分析处理

比如 PV(Page View), UV(User View)分析,即页面浏览总量,用户总量分析

比如 Recommand 系统,即推荐系统,根据浏览的产品,推荐一些相关产品。

这就是一个需要 Kafka 这种集中式分发消息的场景

一处获取,多方订阅

不对业务系统有过多的访问压力,还能提供更有效,高吞吐量的多播环境

    原文作者:黄赟
    原文地址: https://zhuanlan.zhihu.com/p/33973025
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞