kafka作为消息中间件的一款产品,她比较轻量级,在吞吐量方面很优秀,默认消息持久化到硬盘当中 168小时=7天,log.retention.hours=168,比较适合来做运营的统计。其他的不多讲,先看看pom依赖吧
这里我使用的版本为:
kafka.version=2.2.0.RELEASE
kafka-client.version=2.0.0
|| 消息提供方
消息提供者的application.properties配置(接口层):
消息提供者发送消息:
|| 消息消费方
消息消费者者的application.properties配置(服务层):
监听消息:
Kafka消息测试:
狂点几下请求接口后,查看redis缓存情况:
大家不难看到,我使用Kafka对搜索的商品次数做了统计(仅仅是测试代码)。先在接口层,每请求一个商品查询接口,就把查询的商品ID发送到Kafka消息队列,再在服务层监听统计查询次数。
到现在为止,项目的基本配置和一些服务集成接入已经实现,接下来我会更深入的讲述项目中经常遇到的坑和怎么防止不跳坑,以及分布式任务调度管理,分布式事务一致性处理等。
获取项目源代码,请扫码关注公众号,并发送Springboot获取。