当前位置: 首页 > 知识库问答 >
问题:

Singleton Azure Cosmos DB client

汪兴为
2023-03-14

在应用程序的生命周期内使用单例Azure Cosmos DB客户端

每个DocumentClient实例都是线程安全的,并在直接模式下运行时执行高效的连接管理和地址缓存。为了使DocumentClient能够进行高效的连接管理并获得更好的性能,建议在应用程序的整个生命周期内,对每个AppDomain使用一个DocumentClient实例。

https://docs.microsoft.com/en-us/azure/cosmos-db/performance-tips

services.AddSingleton<IDocumentClient>(x => new DocumentClient(UriEndpoint, MasterKey));

private readonly IDocumentClient _documentClient;
public HomeController(IDocumentClient documentClient){
    _documentClient = documentClient;
}

这是否意味着客户端可用于多个数据库(即,任何数据库中的任何容器)?

如何在dotnet核心应用程序中将DocumentDB客户端初始化为单例

共有1个答案

庞阳波
2023-03-14

对的数据库和集合是每个文档特定操作的参数,这意味着您可以在许多数据库和集合中完全重用同一客户端。

请记住,这意味着您的数据库或集合之间没有安全隔离。单个主密钥可以访问单个Azure Cosmos DB资源中的所有内容。

 类似资料:

相关问答

相关文章

相关阅读