我在NServiceBus中創建了一個SAGA。這個傳奇是處理一些字符串,必須進行轉換,然後驗證並導入。這三項行動是單獨的服務。我想在NServiceBus中將這些操作作爲獨立的處理程序。我正在使用NServiceBus中的請求/回覆功能。像這樣:在SAGA中使用請求/回覆NserviceBus
Bus.Send<TransformRequest>("Backend", m =>
{
m.string = string;
m.MessageId = messageId;
})
.Register(i =>
{
Console.WriteLine("transform finished")
});
transformationHandler如下。
public void Handle(TransformRequest message)
{
var transformationResult = _transformationService.Transform(message.string);
var response = new TransformResponse()
{
string= transformationResult,
messageId = message.messageId,
};
Bus.Reply(response);
}
我的問題如下。當請求發送到transformationHandler時。消息被髮送到消息隊列。然後假設,服務器崩潰。服務器重新啓動,服務器拿起TransformationRequest,它是否工作,並且想要回復佐賀,但是怎麼做?這個傳奇不再活着,不能處理.Register。我如何處理這個問題?
謝謝。
您可以刪除寄存器,然後執行bus.reply() – 2014-09-02 13:02:51