Kafka灰度方案

一、kafka灰度方案架构设计方案:

1、外部生产-内部消费

场景:(外部生产-内部消费)

解决方案:先通过kdis分流服务---消费外部生产的消息,然后根据管理后台-灰度配置mcs-mimp-core应用默认的环境版本,如果是1.0,kdis就生产非灰度消息,如果是5.0,kdis就生产灰度消息。业务应用非灰度环境消费kdis生产的非灰度消息,业务应用灰度环境消费kdis生产的灰度消息。

业务方修改:

  1. 新申请两套生产者topic、两套消费者(一套对应灰度的、一套对应非灰度的)

  2. 在kdis服务配置给外部用的topic和新申请的两套生产者topic

  3. 修改业务应用挂载文件kafka-config.json配置

2、内部生产-内部消费

场景:(内部生产-内部消费)

解决方案:业务应用灰度环境生产灰度消息,灰度环境的其它应用消费灰度消息,业务应用非灰度环境生产非灰度消息,非灰度环境的其它应用消费非灰度消息。

业务方修改:

  1. 在原有基础上新申请一套生产者topic、一套消费者(新申请的对应灰度环境、原有的对应非灰度环境)

  2. 修改灰度环境的业务应用生产者配置文件kafka.properties和消费者配置文件kafka-config.json

3、内部生产-外部消费

场景:(内部生产-外部消费)

解决方案:由于外部的消费者不支持灰度消息,因此我们内部生产消息的应用不管是灰度环境还是非灰度环境,共用同一套topic,这样生产的消息就不区分灰度消息。

业务方改造:

不用处理

4、内部生产-内外部消费

场景:(内部生产-内外部消费)

解决方案:由于外部的消费者不支持灰度消息,因此我们内部生产消息的应用不管是灰度环境还是非灰度环境,共用同一套topic,这样生产的消息就不区分灰度消息。内部应用由于区分不同的环境消息,通过kdis分流服务---消费内部生产的消息,然后根据管理后台-灰度配置mcs-mimp-core应用默认的环境版本,如果是1.0,kdis就生产非灰度topic消息,如果是5.0,kdis就生产灰度消息。业务应用非灰度环境消费--kdis生产的非灰度topic消息,业务应用灰度环境消费--kdis生产的灰度topic消息

业务方改造:

  1. 新申请两套生产者topic(一套对应灰度的、一套对应非灰度的)

2)在kdis服务配置给外部用的topic和新申请的两套生产者topic

3)修改业务应用挂载文件kafka-config.json配置

相关推荐
灯澜忆梦16 小时前
【RabbitMQ #3】 | Go 客户端 + SpringAMQP
分布式·golang·rabbitmq
Q26433650231 天前
【有源码】基于Spark的电商客户细分与盈利洞察分析系统-面向精准营销的电商客户细分模型构建与盈利能力可视化研究
大数据·hadoop·分布式·数据挖掘·数据分析·spark·毕业设计
智码看视界1 天前
技术选型指南:Pulsar vs Kafka:消息队列选型终极对比与压测
kafka·消息队列·pulsar·消息中间件·流处理·高吞吐·架构选型
新思维软件1 天前
基于无线传输的地衡系统:三节点 LoRa 组网与 MQTT 上云的分布式称重方案
分布式·stm32·单片机·嵌入式硬件·物联网·物联网开发
俊哥大数据1 天前
Flink1.20.3 实时消费 Kafka 数据并解析入湖 Paimon1.4.2 全流程实战
分布式·flink·kafka·数据湖·paimon
宸津-代码粉碎机1 天前
OpenAI 连夜迎战 Grok Bot 和 Muse:AI 智能体从 “会聊天” 到 “能办事”,现在入场还来得及吗
java·大数据·人工智能·分布式·python
程序猿乐锅1 天前
【黑马点评 | 第八篇】Redisson分布式锁
java·数据库·spring boot·redis·分布式·spring·缓存
灯澜忆梦1 天前
【RabbitMQ #7】 | 消息转换器
分布式·rabbitmq·ruby
需要8261 天前
分布式事务:Seata AT/TCC/SAGA 的取舍与踩坑
java·spring boot·分布式·spring·spring cloud
CS创新实验室1 天前
为什么三台机器就能选出一个“带头大哥“?——Raft 一致性算法,一次讲透
分布式·操作系统