java - 如何在 avro java 项目中处理具有不同数据库名称的多个部署环境?
问题描述
我有一个使用 debezium 连接器收听 mysql binlog 的 kafka 应用程序。所以我放了一些 .avsc 模式文件和 avro maven 插件创建 java 类文件。我的问题是我的应用程序部署在暂存 kubernetes 环境中,在通过测试后,它会自动部署到预部署环境,然后是生产环境。
我正在听生产环境的数据库表的名称是 mysql.company.orders 但在暂存环境中的名称是 mysql.staging_company.orders 数据库名称的这种变化会导致 avro 模式文件、生成的类文件和自然的用法发生巨大变化我的应用程序代码中的此类文件。是否有任何标准方法来处理这个问题,或者我应该为所有类型重载我的方法(每个方法有三个重载),然后根据环境动态使用它们?
解决方案
推荐阅读
- c# - ProtoEnum 属性用于重命名冲突的默认值
- asp.net-core - Net Core 2.1 控制器在 json 没有引用循环时截断 Json
- android - 一加 6t 连接到 Mac
- heroku - 我可以有两个或多个使用 Heroku 的 Web 进程吗
- python-3.x - Cloud Run 请求触发错误 400 未到达已部署的服务
- abap - PSA 表 (SAP BW) 中未收到数据
- python - 使用 Python 将数据框拆分为不同的列
- ios - 如何调整uitableview的标题?
- ios - SwiftUI TabView 多次调用孩子(onAppear)
- java - 获取文本中的字母总数