使用架构注册表对 avro 消息进行 Spring 云合约测试

问题描述 投票:0回答:1

我正在查看 spring 文档和 spring github,我可以看到一些非常基本的异步 kafka 消息传递(生产者和消费者)的示例,它们通过 json 消息和 Kafka 主题进行通信,但似乎没有更多示例类似于生产的设置,其中消息不是 json 而是 avro 消息,而架构注册表(例如 Confluence 的)也在图中。我对此感到非常惊讶,因为当基于事件的微服务通过生成/消费 avro 消息进行通信时,合约测试是必须的,以避免 avro 架构演变时出现运行时异常,并在构建时捕获它们。我想知道其他人是否已经解决了这个问题。任何方向非常感谢!

编辑: 就我而言,我最终添加了基于 Avro 的合约。请看这里:github.com/vspiliop/kafka-contract-test- Producergithub.com/vspiliop/kafka-contract-test-consumer

java avro spring-kafka confluent-schema-registry spring-cloud-contract
1个回答
2
投票

没有明确支持 Spring Cloud Contract 和 Avro。但我们确实支持针对现有中间件进行工作。这里有一个针对真实 kafka 代理进行测试的示例 - 生产者:https://github.com/spring-cloud-samples/spring-cloud-contract-samples/tree/main/ Producer_kafka_middleware 和消费者:https: //github.com/spring-cloud-samples/spring-cloud-contract-samples/tree/main/consumer_kafka_middleware

如有必要,您可以运行其他中间件,包括架构注册表。

© www.soinside.com 2019 - 2024. All rights reserved.