使用请求/回复而不更改响应的设计

时间:2014-03-28 14:31:05

标签: .net rabbitmq masstransit

服务

   Public Class GetContactConsumer        
        Implements Consumes(Of Schema.KlantService.IGetContactV1).Context

        Public Sub Consume(message As IConsumeContext(Of Schema.KlantService.IGetContactRequestV1)) Implements MassTransit.Consumes(Of IConsumeContext(Of Schema.KlantService.IGetContactRequestV1)).All.Consume
            HandleMessageAsync(message)
        End Sub
        Private Async Sub HandleMessageAsync(context As IConsumeContext(Of Schema.KlantService.IGetContactPersonenRequestV1))
            Dim Id = context.Message.Id
            Dim contacten = Await New ContactPersonenController().GetContactPersonen(Id)
            Dim response As New GetContactResponseV1
            response.Contacten = contacten
            context.Respond(response)
        End Sub
    End Class

MassTransit支持请求回复机制,但困扰我的是响应者的设计取决于它。 我已设置此服务以支持RR,但是如果我想从其他服务发送内容(使用基于正常事件的练习)。将此设置与消费者结合使用以进行响应,响应将最终出现在错误队列中。

我的猜测是,这是因为我的消费者发送的ACK不足。 有没有办法可以在MVC应用程序中使用请求回复,但是使用常规事件进行服务到服务通信?

0 个答案:

没有答案