我在运行 Windows Server 2008 R2 Datacenter 的 VM 上设置了 Windows Server Service Bus 1.0。
我编写了一个控制台应用程序来向它发送和接收消息,并且效果很好。
我一直在成功发送大小增加的消息,但控制台应用程序当前在达到 5,226,338 字节(我相信是 5,226,154 字节消息正文 + 184 字节标头)时会崩溃,这刚好低于 5MB。理想情况下,我们需要更多的空间来玩。
一些堆栈跟踪如下...
未处理的异常:Microsoft.ServiceBus.Messaging.MessagingCommunicationException:套接字连接已中止。这可能是由于处理您的消息时出错或远程主机超出接收超时,或者是潜在的网络资源问题造成的。本地套接字超时为“00:01:09.2720000”。- --> System.ServiceModel.CommunicationException: 套接字连接被中止。这可能是由于处理您的消息时出错或远程主机超出接收超时,或者是潜在的网络资源问题造成的。本地套接字超时为“00:01:09.2720000”。---> System.IO.IOException: 写操作失败,见内部异常。---> System.ServiceModel.CommunicationException:套接字连接被中止。这可能是由于处理您的消息时出错或远程主机超出接收超时,或者是潜在的网络资源问题造成的。本地套接字超时为 '00:01:09.2720000' 。---> System.Net.Sockets.SocketException:已建立的连接被主机中的软件中止
Windows Azure 服务总线显然有 256KB 的固定限制,但本地 Windows Server 服务总线有 50MB 的限制。请参阅下面的文章。
提到 256KB 的 Azure 限制 - http://msdn.microsoft.com/en-us/library/windowsazure/hh694235.aspx
提到 50MB - http://msdn.microsoft.com/en-us/library/windowsazure/jj193026.aspx
我正在努力达到 50MB 的限制,并且想知道我是否需要做一些事情来以某种方式配置它,或者可能需要以某种方式发送消息。我注意到上面的文章中有一个参数名称,想知道它是否可以在 PowerShell 中使用。
我一直在努力在网上找到一些关于此的好信息。有些文章与 Azure 服务总线相关,而其他文章与 Windows Server 服务总线相关,存在很多混淆。
有 Service Bus 1.1,但我认为目前处于预览状态,我不确定这会有所帮助。
我正在使用类似于下面的代码来发送消息。
namespaceManager = NamespaceManager.Create(); 消息工厂 = 消息工厂。创建();
queueClient = messagesFactory.CreateQueueClient(queueName);
queueClient.Send(new BrokeredMessage(new string('x', 5226154)));
这取自以下文章的组合,第一篇稍微过时,第二篇更清楚地说明了需要更改哪些内容才能正常工作。
http://haishibai.blogspot.co.uk/2012/08/walkthrough-setting-up-development.html
http://msdn.microsoft.com/en-us/library/windowsazure/jj218335(v=azure.10).aspx
我希望有人能帮帮忙。