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配置

相关推荐
少许极端9 小时前
消息队列-RabbitMQ(1)
分布式·消息队列·rabbitmq
若水不如远方10 小时前
分布式一致性(七):架构角度 —— 分布式共识系统的选型指南
分布式·后端
&&月弥11 小时前
三大开源消息队列(Kafka、RabbitMQ、RocketMQ)使用教程
kafka·开源·rabbitmq
Darkdreams12 小时前
分布式监控Skywalking安装及使用教程(保姆级教程)
分布式·skywalking
深蓝电商API21 小时前
分布式事务在跨境交易中的解决方案
分布式·跨境电商·代购系统·反向海淘·代购平台·跨境代购
百锦再1 天前
Java 并发编程进阶,从线程池、锁、AQS 到并发容器与性能调优全解析
java·开发语言·jvm·spring·kafka·tomcat·maven
我真会写代码1 天前
从入门到精通:Kafka核心原理与实战避坑指南
分布式·缓存·kafka
黄俊懿1 天前
【架构师从入门到进阶】第二章:系统衡量指标——第一节:伸缩性、扩展性、安全性
分布式·后端·中间件·架构·系统架构·架构设计
一叶飘零_sweeeet1 天前
击穿 Kafka 高可用核心:分区副本、ISR 机制与底层原理全链路拆解
分布式·架构·kafka
007张三丰1 天前
常用缓存技术全方位解析:从本地缓存到分布式缓存
分布式·缓存