当前位置: 首页 > 知识库问答 >
问题:

在使用者端存储协定定义以进行消息传递通信

姬魁
2023-03-14

是否可以在消费者端存储合约定义?

在文档和示例存储库(spring云合同示例)中,只有存储在公共存储库或生产者端的合同的示例和描述。据我所知,这支持一个生产者发布消息,一个或多个消费者消费消息的架构。在这种情况下,将合同存储在生产者方实际上是有意义的。

但是我有一个系统,其中许多生产者将消息发布到单个队列,并且该队列只有一个使用者。我认为在这种情况下,最好将合约定义存储在消费者端。例如,当添加新生产者时,它可以使用存储在消费者中的现有合约等。

共有1个答案

张高澹
2023-03-14

不,这是不可能的,这是有原因的…那是因为我们需要生成存根。该存根需要针对消息的生产者进行验证(通过自动生成的测试)。目前,我们无法知道对于给定的生产者,合同是由给定的消费者定义的,例如A、B和C。我们需要这些知识,因为我们需要从这些合同中生成测试。

 类似资料:
  • 我是新的RabbitMQ,我有点迷失在留档。 目前,例如,我正在尝试构建一个侦听队列的小型邮件服务,但我有点卡在我应该在哪里放置我的服务具有的参数(目的地、主题...... 我应该将它们放在某种编码格式(json)中,放在我的消息中,还是应该使用头结构,如下例所示: 使用标头是否提供额外的好处?例如,是否可以过滤发送到特定目的地的消息?

  • 这样的消息在开发环境中很好,但是在生产环境中,我们不能在浏览器中向用户显示这一点。所以我想知道谷歌云存储中是否有定制这些消息和页面的规定。 提前感谢, 约杰什

  • 我最近一直在尝试gRPC错误处理,希望将我自己的proto消息传递给客户端(定义我自己的错误详细信息和内部错误代码)。在四处搜索之后,找到了几个使用gRPC状态包中的WithDetails()附加自定义元数据的示例。我开始实现如下相同的功能 gRPC协议消息 服务器端实现 客户端实现 当我运行代码时,它击中了服务器代码中添加的Panic(),这意味着Wit详细信息()出错了。 为了进一步进行,删除

  • 项目配置为使用多个MongoTemplate Mongo Ref传递为 问题:我需要访问MongoTemplate,它是类似的标准存储库。 例如,如果正在将接口扩展为 MyRepoCustomImpl 问题:相反,难道没有任何方法可以让要使用的MongoTemplate根据它扩展到的Repo自动注入或解析吗?

  • 简介 此消息 用来接收 用户自定义TOPIC消息 发送过来的事件。 消息体 ChannelMessageBean 例子 Kotlin @Subscribe(threadMode = ThreadMode.MAIN) fun onReceiveCustomMessage(customEvent: ChannelMessageBean) { // TODO } ChannelMessageB

  • 由于内容脚本在网页而不是扩展程序的上下文中运行,因此它们通常需要某种与扩展程序其余部分进行通信的方式。例如,RSS 阅读器扩展程序可以使用内容脚本来检测页面上 RSS 摘要的存在,然后通知后台页面以显示该页面的操作图标。 扩展及其内容脚本之间的通信使用消息传递来实现。任何一方都可以监听从另一端发送的消息,并在同一通道上进行响应。消息可以包含任何有效的 JSON 对象(空,布尔值,数字,字符串,数组