Azure DocumentDB客户端调用导致Azure WebJob发生错误

时间:2016-12-26 15:20:04

标签: c# azure azure-webjobs azure-cosmosdb

我有一个Continuous Azure Webjob,可以检查来自QueueTrigger的每条消息的DocumentDb。使用DocumentDB SDK 1.10 for .NET。我不时会收到这样的错误:

通常只允许使用每个套接字地址(协议/网络地址/端口):443 在Microsoft.Azure.Documents.Client.GatewayServiceConfigurationReader.d__0.MoveNext()

我通过JobActivator进行依赖注入(StructureMap),并使用非静态方法处理Functions类中的队列触发器。使用

DocumentClient包装在一个静态类中,因此每个WebJob应该是一个实例。

此外,一些Web应用程序(ASP.NET MVC)会不时使用自己的文档数据库连接和相同的连接字符串。我找不到有关此问题的任何信息。这里可能出现什么问题?

更改了内部代码:

class Program
{
    public static IReliableReadWriteDocumentClient Client { get; set; }
    static void Main()
    {
        Client = // initialize client with settings from app config
    }
}

public class Functions
{
    public async Task ProcessQueueMessage([QueueTrigger("myqueuename")] CustomerRequest customerRequest,
            TextWriter dashboardLogger)
    {
        // usage from some place which runs on QueueTrigger

        var customerRepository = new DocumentDbRepository<Customer>(Program.Client, databaseId,
                    () => "Customers");
       // additional logic
    }
}

存储库类取自此处:https://github.com/Crokus/documentdb-repo

0 个答案:

没有答案