NServiceBus简单重试机制,如何调试(基于AsyncPages示例)
你好NServiceBus简单重试机制,如何调试(基于AsyncPages示例),nservicebus,Nservicebus,你好 我有一个用户注册的网站,我们需要通过soap Web服务调用将他们添加到遗留系统中。这些webservice调用已排队等待异步重试。。。 我已经从NServiceBus下载中复制了AsyncPages示例 但是,消息似乎在未经处理的情况下进出队列(它们也不会放入错误队列)。(消息显示在日志中) 我的网站配置如下: <UnicastBusConfig> <MessageEndpointMappings> <add Messages="Fo
我有一个用户注册的网站,我们需要通过soap Web服务调用将他们添加到遗留系统中。这些webservice调用已排队等待异步重试。。。 我已经从NServiceBus下载中复制了AsyncPages示例 但是,消息似乎在未经处理的情况下进出队列(它们也不会放入错误队列)。(消息显示在日志中) 我的网站配置如下:
<UnicastBusConfig>
<MessageEndpointMappings>
<add Messages="FooComMessages" Endpoint="FooComSignupService"/>
</MessageEndpointMappings>
</UnicastBusConfig>
我的信息:
namespace FooComMessages
{
[Serializable]
public class CreateMemberContractRequest : IMessage
{
public DateTime birthdate { get; set; }
//.... snip....//
}
}
我的处理程序配置:
<MsmqTransportConfig InputQueue="FooComSignupService" ErrorQueue="FooComSignupServiceErrors" NumberOfWorkerThreads="1" MaxRetries="20" />
<UnicastBusConfig>
<MessageEndpointMappings>
<add Messages="FooComMessages" Endpoint="FooComSignupService" />
</MessageEndpointMappings>
</UnicastBusConfig>
我的处理程序代码:
namespace FooComSignupService
{
public class CreateMemberContractRequestHandler : IHandleMessages<CreateMemberContractRequest>
{
public IBus Bus { get; set; }
private static readonly ILog Logger = LogManager.GetLogger(typeof(CreateMemberContractRequestHandler));
public void Handle(CreateMemberContractRequest message)
{
Logger.Info("------------------------------------\nHandling CreateMemberContractRequest. id="+message.webdatabaseid);
throw new NotImplementedException();
}
}
}
namespace FooComSignupService
{
公共类CreateMemberContractRequestHandler:IHandleMessages
{
公共IBus总线{get;set;}
私有静态只读ILog Logger=LogManager.GetLogger(typeof(CreateMemberContractRequestHandler));
公共无效句柄(CreateMemberContractRequest消息)
{
Logger.Info(“-------------------------------------\n处理CreateMemberContractRequest.id=“+message.webdatabaseid”);
抛出新的NotImplementedException();
}
}
}
编辑:
我正在使用NServiceBus.Host.exe托管FooComSignupService
有人知道我做错了什么吗?
我也不能在Handle方法中命中任何断点
干杯。Murray。我在这里也问过:如果你这样做会发生什么:Global.Bus.Send(new CreateMemberContractRequest(){birthdate=DateTime.Parse(“1975年10月4日”)?我看到一个或多个项目出现在这个队列中:Private Queues>FooComSignupService>Journal messages(其他任何地方都没有)您是如何托管和配置FooComSignupService的?您可以在此处发布代码吗?使用NServiceBus.Host.exe(已包含配置和代码)
namespace FooComSignupService
{
public class CreateMemberContractRequestHandler : IHandleMessages<CreateMemberContractRequest>
{
public IBus Bus { get; set; }
private static readonly ILog Logger = LogManager.GetLogger(typeof(CreateMemberContractRequestHandler));
public void Handle(CreateMemberContractRequest message)
{
Logger.Info("------------------------------------\nHandling CreateMemberContractRequest. id="+message.webdatabaseid);
throw new NotImplementedException();
}
}
}