小编joh*_*rdy的帖子

使用ServiceBusTrigger时的Azure WebJob并发性

我一直在使用Azure存储队列来使用该QueueTrigger属性来提供WebJob .我将我配置QueueTrigger为出列并发处理多个项目,如下所示:

public static void Main()
{
    JobHostConfiguration config = new JobHostConfiguration();
    config.NameResolver = new QueueNameResolver();

    config.Queues.NewBatchThreshold = 10;

    JobHost host = new JobHost(config);
    host.RunAndBlock();
}

public static void ExecuteStorageQueueItem([QueueTrigger("%AzureQueueName%")] CloudQueueMessage message, TextWriter logger)
{
    ProcessRequest(message.AsString, logger);
}
Run Code Online (Sandbox Code Playgroud)

我更喜欢使用Service Bus.MaxConcurrentCalls参数on 是否ServiceBusConfiguration允许相同的自动并行执行?例如:

public static void Main()
{

    JobHostConfiguration config = new JobHostConfiguration();
    config.NameResolver = new QueueNameResolver();

    ServiceBusConfiguration serviceBusConfig = new ServiceBusConfiguration();
    serviceBusConfig.MessageOptions.MaxConcurrentCalls = 10;
    config.UseServiceBus(serviceBusConfig);

    JobHost host = new JobHost(config);
    host.RunAndBlock();
}

public …
Run Code Online (Sandbox Code Playgroud)

servicebus azure azureservicebus azure-webjobs azure-webjobssdk

5
推荐指数
1
解决办法
2183
查看次数