NServiceBus.Azure-AzurePubSub示例启动时的主机循环

NServiceBus.Azure-AzurePubSub示例启动时的主机循环,azure,nservicebus,Azure,Nservicebus,大约一年前,我能够让NSB站起来,在一个WorkerRole中出色地在Azure上工作。我们实现了一些服务。这需要一些工作,围绕依赖项和版本存在一些问题,但是经过大量调整后,我们启动并运行了一些东西 现在,我们要开发一个新产品,它试图为我们正在构建的系统提供一个简单的示例,在NSB v4.0的探索阶段进行概念验证。 我想在这里举一个AzurePubSub的例子 只是为了让样品运行,花了很长时间。我已经记录了我所采取的步骤 使用VS 2k12,NSB 4.0(最新稳定版本) 开放式AzurePub

大约一年前,我能够让NSB站起来,在一个WorkerRole中出色地在Azure上工作。我们实现了一些服务。这需要一些工作,围绕依赖项和版本存在一些问题,但是经过大量调整后,我们启动并运行了一些东西

现在,我们要开发一个新产品,它试图为我们正在构建的系统提供一个简单的示例,在NSB v4.0的探索阶段进行概念验证。 我想在这里举一个AzurePubSub的例子

只是为了让样品运行,花了很长时间。我已经记录了我所采取的步骤

使用VS 2k12,NSB 4.0(最新稳定版本)

  • 开放式AzurePubSub项目
  • 提示将项目转换为目标Windows Azure工具-v2.1(已转换)
  • 从MyMessages中删除NSB ref,替换为Nuget NServiceBus.Interfaces pkg
  • 基于MyMessages的干净构建
  • OrderService,已删除的NServiceBus,NServiceBus.Core,NServiceBus.Azure,NServiceBus.Hosting.Azure,Common.Logging
  • OrderService,上面替换为NuGet包(NServiceBus.Hosting.Azure)

  • OrderWebsite删除了NServiceBus、NServiceBus.Azure、NServiceBus.Core、Common.Logging

  • OrderWebsite,上面替换为NuGet包(NServiceBus.Azure)

  • 实现了一个干净的解决方案建设

  • 调试

  • 无法加载文件或程序集“Microsoft.WindowsAzure.Diagnostics,版本=2.1.0.0,区域性=中性,PublicKeyToken=31bf3856ad364e35”或其依赖项之一。定位的程序集清单定义与程序集引用不匹配。(来自HRESULT的异常:0x8013100)

  • 手动将绑定重定向添加到OrderWebsite(可以选择引用NuGet进行诊断)

  • 调试
  • 无法加载文件或程序集“Microsoft.WindowsAzure.Diagnostics,版本=2.1.0.0,区域性=中性,PublicKeyToken=31bf3856ad364e35”或其依赖项之一。定位的程序集清单定义与程序集引用不匹配。(来自HRESULT的异常:0x8013100)

  • 添加了手动重定向到OrderService的绑定(可选地可以引用NuGet进行诊断)

  • 调试

  • 无法加载文件或程序集“Microsoft.WindowsAzure.Diagnostics,版本=2.1.0.0,区域性=中性,PublicKeyToken=31bf3856ad364e35”或其依赖项之一。定位的程序集清单定义与程序集引用不匹配。(来自HRESULT的异常:0x8013100)

  • 已删除Microsoft.WindowsAzure.Diagnostics参考2.0.0.0
  • 将Microsoft.WindowsAzure.Diagnostics引用添加到OrderService和OrderWebsite的2.1.0.0(文件版本2.1.6493.0)(中的左绑定重定向)

  • 调试 OrderWeb加载得很好。 OrderService陷入了一个循环,启动和停止都可以通过Azure计算仿真程序看到。 EndpointConfiguration永远不会被调用,DefineRouting类IProvidConfiguration实现也不会被调用

  • Azure计算仿真程序输出:

    [fabric]角色实例:deployment21(119).AzureService.OrderService.0 [fabric]角色状态不正常 [诊断]:更新状态(Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorStartupInfo、Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorConfiguration) [诊断]:获取互斥 [诊断]信息:C:\Users\Ryan\AppData\Local\dftmp\Resources\a903dc1b-98a5-4a78-b04d-c533e881564d\directory\DiagnosticStore\Monitor [诊断]信息:D:\GitHub\NServiceBus.Azure\IntegrationTests\AzurePubSub\csx\Debug\roles\OrderService\Diagnostics\x64\monitor\MonAgentHost.exe-LocalPath“C:\Users\Ryan\AppData\Local\dftmp\Resources\a903dc1b-98a5-4a78-b04d-c533e881564d\directory\DiagnosticStore\monitor”-静态配置文件“C:\Users\Ryan\AppData\Local\dftmp\Resources\a903dc1b-98a5-4a78-b04d-c533e881564d\directory\DiagnosticStore\Monitor\Configuration\mastaticconfig.xml”-配置文件“C:\Users\Ryan\AppData\Local\dftmp\Resources\a903dc1b-98a5-4a78-b04d-c533e881564d\directory\DiagnosticStore\Monitor\Configuration\maconfig.xml”“-关机事件WADDM-ShutDown-81011d9e243b47bc8941b805e7146ce3-初始化事件WADM-StartUp-81011d9e243b47bc8941b805e7146ce3-父级5704-事件 [fabric]角色状态停止 [诊断]:创建配置通道服务器 [MonAgentHost]输出:当WADDM-ShutDown-81011d9e243b47bc8941b805e7146ce3发出信号时,代理将退出。 [MonAgentHost]输出:代理初始化后,将向WADM-StartUp-81011d9e243b47bc8941b805e7146ce3发送信号。 [MonAgentHost]输出:注册为事件使用者。 [MonAgentHost]输出:当父进程5704退出时,代理将退出。 [MonAgentHost]输出:监视代理已启动 [诊断]:启动配置通道轮询 [运行时]角色入口点。调用OnStart() [运行时]角色入口点。已完成的OnStart() [运行时]角色入口点。调用Run() [运行时]角色入口点。已完成运行()==>已启动角色回收 [运行时]角色实例回收正在启动 [运行时]角色入口点。调用OnStop() [运行时]角色入口点。已完成的OnStop() [fabric]角色状态正忙

    这就是它反复循环的地方。 显然,在初始化OrderService的Worker角色时发生了错误,但是我似乎找不到到底出了什么问题

    有人知道我该如何找出原因吗

    非常感谢,,
    Ryan

    最新稳定的NServiceBus.Azure与Azure SDK 2.0配合使用。我强烈建议使用2.0,您可以在同一台开发机器上同时使用2.0和2.1

    我还将从源代码构建NSB和NSB.Azure,并调试Azure传输初始化。那里有几个问题,Yves已经解决了,但我不确定这是否已经发布。我不知道你的配置,也不能在那里说什么,但如果你得到例如不正确的q