【发布时间】:2014-06-25 18:57:15
【问题描述】:
我正在使用服务总线辅助角色模板创建辅助角色。
我处理每条消息需要一分钟多的时间。
因此,我看到工人角色多次收到相同的消息,大约每分钟收到一条消息。
我想这是因为这个值默认为 60 秒。
但我不确定如何增加此值,因为我在任何地方都没有看到 messageFactorySettings 类。
我在哪里设置这个属性?
这是我正在使用的代码
public class WorkerRole : RoleEntryPoint
{
// QueueClient is thread-safe. Recommended that you cache
// rather than recreating it on every request
QueueClient Client;
ManualResetEvent CompletedEvent = new ManualResetEvent(false);
public override void Run()
{
Client.OnMessage((receivedMessage) =>
{
ProcessMessage(recievedMessage);
});
CompletedEvent.WaitOne();
}
public override bool OnStart()
{
ServicePointManager.DefaultConnectionLimit = 12;
string connectionString = ConfigurationUtility.GetConnectionString("Microsoft.ServiceBus.ConnectionString");
string queneName = ConfigurationUtility.GetConnectionString("QueueName");
// Create the queue if it does not exist already
var namespaceManager = NamespaceManager.CreateFromConnectionString(connectionString);
if (!namespaceManager.QueueExists(queneName))
{
namespaceManager.CreateQueue(queneName);
}
Client = QueueClient.CreateFromConnectionString(connectionString, queneName);
return base.OnStart();
}
public override void OnStop()
{
// Close the connection to Service Bus Queue
Client.Close();
CompletedEvent.Set();
base.OnStop();
}
}
【问题讨论】:
标签: c# .net azure azure-worker-roles servicebus