- azure/
- NServiceBus.Azure-AzurePubSub示例启动时的主机循环
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