Sdílet prostřednictvím


Ladění konfigurací připojení pro sadu .NET SDK služby Azure Cosmos DB v3

Důležité

Informace v tomto článku jsou určené pouze pro sadu .NET SDK služby Azure Cosmos DB verze 3. Další informace najdete v průvodci odstraňováním potíží s režimy připojení sady SQL SDK služby Azure Cosmos DB .NET SDK v3, úložiště NuGet a průvodce odstraňováním potíží se sadou .NET SDK služby Azure Cosmos DB v3. Pokud aktuálně používáte starší verzi než v3, přečtěte si průvodce migrací na sadu .NET SDK služby Azure Cosmos DB verze 3 , kde najdete pomoc s upgradem na verzi 3.

Azure Cosmos DB je rychlá a flexibilní distribuovaná databáze, která se bezproblémově škáluje s garantovanou latencí a propustností. Nemusíte provádět významné změny architektury ani psát složitý kód pro škálování databáze pomocí služby Azure Cosmos DB. Vertikální navýšení a snížení kapacity je stejně snadné jako vytvoření jediného volání rozhraní API nebo volání metody sady SDK. Vzhledem k tomu, že ke službě Azure Cosmos DB se přistupuje prostřednictvím síťových volání, existují konfigurace připojení, které můžete vyladit, abyste dosáhli maximálního výkonu při použití sady .NET SDK služby Azure Cosmos DB v3.

konfigurace Připojení

Poznámka:

Ve službě Azure Cosmos DB . NETS SDK v3 , přímý režim je ve většině případů nejlepší volbou ke zlepšení výkonu databáze s většinou úloh.

Další informace o různých možnostech připojení najdete v článku o režimech připojení.

Režim přímého připojení

Výchozí režim připojení sady .NET SDK je přímý. V přímém režimu se požadavky provádějí pomocí protokolu TCP. Interní přímý režim používá speciální architekturu k dynamické správě síťových prostředků a zajištění nejlepšího výkonu. Architektura na straně klienta použitá v režimu Direct umožňuje předvídatelné využití sítě a multiplexovaný přístup k replikám služby Azure Cosmos DB. Další informace o architektuře najdete v architektuře přímého režimu připojení.

Režim připojení nakonfigurujete při vytváření CosmosClient instance v CosmosClientOptions.

string connectionString = "<your-account-connection-string>";
CosmosClient client = new CosmosClient(connectionString,
new CosmosClientOptions
{
    ConnectionMode = ConnectionMode.Gateway // ConnectionMode.Direct is the default
});

Přizpůsobení režimu přímého připojení

Přímý režim lze přizpůsobit prostřednictvím CosmosClientOptions předané konstruktoru CosmosClient . Doporučujeme uživatelům vyhnout se jejich úpravám, pokud se nebudou cítit dobře pochopit kompromisy a je to nezbytné.

Možnost konfigurace Výchozí Doporučené Detaily
EnableTcp Připojení ionEndpointRediscovery true true Představuje příznak pro povolení detekce připojení uzavíraných ze serveru.
IdleTcp Připojení ionTimeout Ve výchozím nastavení jsou nečinná připojení trvale otevřená. 20m-24h Představuje dobu nečinnosti, po které jsou nevyužitá připojení uzavřena. Doporučené hodnoty jsou mezi 20 minutami a 24 hodinami.
MaxRequestsPerTcp Připojení ion 30 30 Představuje počet požadavků povolených současně přes jedno připojení TCP. Pokud se současně spouští více požadavků, klient direct/TCP otevře další připojení. Nenastavujte tuto hodnotu nižší než čtyři požadavky na připojení nebo vyšší než 50 až 100 požadavků na připojení. Aplikace s vysokým stupněm paralelismu na připojení, s velkými požadavky nebo odpověďmi nebo požadavky na nízkou latenci můžou dosáhnout lepšího výkonu s 8 až 16 požadavky na připojení.
MaxTcp Připojení ionsPerEndpoint 65535 65535 Představuje maximální počet připojení TCP, která se můžou otevřít pro každý back-end služby Cosmos DB. Společně s parametrem MaxRequestsPerTcp Připojení ion toto nastavení omezuje počet požadavků, které se současně odesílají do jednoho back-endu Cosmos DB(MaxRequestsPerTcp Připojení ion x MaxTcp Připojení ionPerEndpoint). Hodnota musí být větší nebo rovna 16.
OpenTcp Připojení ionTimeout 5 sekund 1 sekunda Představuje dobu, po kterou je možné se pokusit navázat připojení. Po uplynutí doby se pokus zruší a vrátí se chyba. Delší časové limity zpožďují opakování a selhání.
PortReuseMode PortReuseMode.ReuseUnicastPort PortReuseMode.ReuseUnicastPort Představuje zásady opakovaného použití portu klienta používané zásobníkem přenosu.

Přizpůsobení režimu připojení brány

Režim brány lze přizpůsobit prostřednictvím CosmosClientOptions předaných konstruktoru CosmosClient . Doporučujeme uživatelům vyhnout se jejich úpravám, pokud se nebudou cítit dobře pochopit kompromisy a je to nezbytné.

Možnost konfigurace Výchozí Doporučené Detaily
GatewayModeMax Připojení ionLimit 50 50 Představuje maximální počet souběžných připojení povolených pro koncový bod cílové služby ve službě Azure Cosmos DB.
Webproxy null null Představuje informace o proxy serveru používané pro webové požadavky.

Další kroky

Další informace o tipech pro zvýšení výkonu pro sadu .NET SDK najdete v tématu Tipy pro zvýšení výkonu pro sadu Azure Cosmos DB NET SDK v3.