为什么配置Sagas()?

时间:2013-06-11 18:19:22

标签: nservicebus

为什么需要配置Sagas()?我问,因为在我注意到Sagas()不在configure.with之前,我在过去几个月里一直在运行一个带有乌鸦持久性的传奇,事实上我意识到我也缺少了一些RavenPersistence的东西。然而,据我所知,Sagas一直在98%的时间工作并坚持到Raven。所以我想知道Sagas()配置与不配置它的方式不同。

我之所以说98%的时间是因为我注意到随机消息从方法中掉出来而没有发送它被指定在Saga中发送的下一条消息。我很好奇,如果没有正确的配置是原因。

        _logger.InfoFormat("1.1 - Preparing Saga for; File: {0}", message.FileNumber);

        //Creates Saga information 
        SetupSaga(uploads,
                  message.Documents,
                  message.ProcedureID.GetValueOrDefault(0),
                  file.Client.Id,
                  message.FileNumber,
                  message.Stage,
                  user);

        _logger.InfoFormat("1.2 - Upload Saga Unique ID; File: {0}, UniqueID: {1}", message.FileNumber, Data.UniqueID);

        Bus.SendLocal(new GetLoanInformation {
            UniqueID = Data.UniqueID
        });

1 个答案:

答案 0 :(得分:1)

NServiceBus主机根据角色和配置文件自动执行大量配置。 Sagas配置和Raven持久性都会自动为您处理。如果您在自托管时运行Saga,您只需手动执行此操作,这种情况有点罕见。

为了更好地了解所有不同角色和个人资料的结果,请查看All About NServiceBus Host Profiles and Roles。 (免责声明:这是我的博文。)

您提到的问题是由于其他问题,但需要更多信息来诊断它。