Azure 多个客户端共享同一nservicebus数据总线通道是否存在问题?

Azure 多个客户端共享同一nservicebus数据总线通道是否存在问题?,azure,nservicebus,Azure,Nservicebus,以下是我的设置: 我有一个azure web角色和一个worker角色,这两个角色都配置为通过blob存储使用数据总线通道。我现在需要添加另一个需要数据总线的web客户端 是否可以使用相同的数据总线通道,或者这会导致与后台发生的消息清理操作相关的问题 更新: 我在我的web角色的事件日志中看到此错误: An unhandled exception occurred. Type: Microsoft.WindowsAzure.StorageClient.StorageClientException

以下是我的设置: 我有一个azure web角色和一个worker角色,这两个角色都配置为通过blob存储使用数据总线通道。我现在需要添加另一个需要数据总线的web客户端

是否可以使用相同的数据总线通道,或者这会导致与后台发生的消息清理操作相关的问题

更新: 我在我的web角色的事件日志中看到此错误:

An unhandled exception occurred. Type: Microsoft.WindowsAzure.StorageClient.StorageClientException Process ID: 2968
Process Name: w3wp
Thread ID: 12
AppDomain Unhandled Exception for role My.Assembly.Web_IN_4
Exception: The specified blob does not exist.
   at Microsoft.WindowsAzure.StorageClient.Tasks.Task`1.get_Result()
   at Microsoft.WindowsAzure.StorageClient.Tasks.Task`1.ExecuteAndWait()
   at Microsoft.WindowsAzure.StorageClient.CloudBlob.FetchAttributes(BlobRequestOptions options)
   at NServiceBus.DataBus.Azure.BlobStorage.BlobStorageDataBus.DeleteExpiredBlobs()
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
   at System.Threading._TimerCallback.PerformTimerCallback(Object state)

Inner Exception: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
   at Microsoft.WindowsAzure.StorageClient.EventHelper.ProcessWebResponse(WebRequest req, IAsyncResult asyncResult, EventHandler`1 handler, Object sender)

我认为您必须使用相同的通道,因为发送方和接收方都必须能够访问它,并且您只能配置一个,这意味着它必须共享

它不应该引起清理问题,看到任何奇怪的东西吗?如果是,请告诉我

亲切问候,,
Yves

我在web角色的事件日志中看到失败。我将在我的原始问题中发布错误。一个促成因素可能是我在web角色上配置了多个实例(准确地说是5个)。因此,在清理过程中,可能存在关于获取blob和删除blob的争用条件?一个实例可能正在获取该列表,当它删除该列表时,另一个实例已经这样做了。事实上,我们已经能够复制它。它似乎不会以任何方式影响nsb的行为,下一个计时器将再次触发并按预期继续工作。我所能做的就是捕获异常并记录它,但不确定您是否会在这里赢得任何东西,除了得到警告而不是错误消息……是的,但我想知道w3wp.exe进程终止是否导致webrole进入循环?这肯定会导致进程终止。那太糟糕了。这是来自异常之后应用程序事件日志中的一个条目:“说明:由于未处理的异常,进程已终止。”根据.net文档,计时器正在处理此情况,但如果您看到循环,则情况并非如此。在那种情况下,我会处理例外情况。