Masstransit 在没有消费者的情况下检查已发布的消息
Masstransit check published messages without consumer
如果没有创建消费者,有什么方法可以检查已发布的消息吗?现在我只有一个发布事件的项目,我可以通过检查在 RabbitMQ 中创建的交换看到它们是发布的。但是我不确定如果没有消费者,是否有办法从 Rabbit MQ 接口检查消息内容。也许最好用单元测试覆盖发布逻辑以检查是否发布了内容正确的消息?
您可以为发布的消息指定一个备用交换器,如果没有绑定其他交换器,这些消息将被传递到备用交换器。然后,如果没有订阅者,您可以将该交换绑定到队列以保留这些消息。
或者,您可以在发布的消息上指定 Mandatory 标志,如果没有交换绑定,则 Publish 调用会抛出异常。
消息内容的验证("checking")是一个客户端函数,不能在消息队列本身中执行。它要么必须在发布之前执行(信任发布者),要么必须在出列之后但在处理之前立即执行(不要信任发布者)。
如果没有创建消费者,有什么方法可以检查已发布的消息吗?现在我只有一个发布事件的项目,我可以通过检查在 RabbitMQ 中创建的交换看到它们是发布的。但是我不确定如果没有消费者,是否有办法从 Rabbit MQ 接口检查消息内容。也许最好用单元测试覆盖发布逻辑以检查是否发布了内容正确的消息?
您可以为发布的消息指定一个备用交换器,如果没有绑定其他交换器,这些消息将被传递到备用交换器。然后,如果没有订阅者,您可以将该交换绑定到队列以保留这些消息。
或者,您可以在发布的消息上指定 Mandatory 标志,如果没有交换绑定,则 Publish 调用会抛出异常。
消息内容的验证("checking")是一个客户端函数,不能在消息队列本身中执行。它要么必须在发布之前执行(信任发布者),要么必须在出列之后但在处理之前立即执行(不要信任发布者)。