Share via


Dedikerad Azure Cosmos DB-gateway – Översikt

GÄLLER FÖR: NoSQL

En dedikerad gateway är beräkning på serversidan som är en klientdel till ditt Azure Cosmos DB-konto. När du ansluter till den dedikerade gatewayen dirigerar den både begäranden och cachelagrar data. Precis som etablerat dataflöde debiteras den dedikerade gatewayen varje timme.

Översikt

Du kan etablera en dedikerad gateway för att förbättra prestanda i stor skala. Den vanligaste orsaken till att du vill etablera en dedikerad gateway är för cachelagring. När du etablerar en dedikerad gateway konfigureras en integrerad cache automatiskt i den dedikerade gatewayen. Punktläsningar och frågor som når det integrerade cacheminnet använder inte någon av dina RU:er. Etablering av en dedikerad gateway med en integrerad cache kan hjälpa läsintensiva arbetsbelastningar att sänka kostnaderna för Azure Cosmos DB.

Den dedikerade gatewayen är inbyggd i Azure Cosmos DB. När du etablerar en dedikerad gateway har du en fullständigt hanterad nod som dirigerar begäranden till serverdelspartitioner. Att ansluta till Azure Cosmos DB med den dedikerade gatewayen ger kortare och mer förutsägbar svarstid än att ansluta till Azure Cosmos DB med standardgatewayen. Även cachemissar kommer att se svarstidsförbättringar när du jämför den dedikerade gatewayen och standardgatewayen.

Det krävs bara minimala kodändringar för att programmet ska kunna använda en dedikerad gateway. Både nya och befintliga Azure Cosmos DB-konton kan etablera en dedikerad gateway för bättre läsprestanda.

Anteckning

Har du någon feedback om den dedikerade gatewayen? Vi vill höra det! Dela gärna feedback direkt med Azure Cosmos DB:s utvecklingsteam: cosmoscachefeedback@microsoft.com

Anslutningslägen

Det finns två anslutningslägen för Azure Cosmos DB, direktläge och gatewayläge. Med gatewayläge kan du ansluta till antingen standardgatewayen eller den dedikerade gatewayen beroende på vilken slutpunkt du konfigurerar.

Diagram som visar hur Azure Cosmos DB-anslutningslägen fungerar.

Ansluta till Azure Cosmos DB med direktläge

När du ansluter till Azure Cosmos DB med direktläge ansluter ditt program direkt till Azure Cosmos DB-serverdelen. Även om du har många fysiska partitioner hanteras begärandedirigering helt på klientsidan. Direktläge ger låg svarstid eftersom ditt program kan kommunicera direkt med Azure Cosmos DB-serverdelen och inte behöver ett mellanliggande nätverkshopp. Om du väljer att ansluta med direktläge kommer dina begäranden inte att använda den dedikerade gatewayen eller det integrerade cacheminnet.

Ansluta till Azure Cosmos DB med gatewayläge

Om du ansluter till Azure Cosmos DB med gatewayläge ansluter programmet först till en klientdelsnod som hanterar routning av begäran till lämpliga serverdelsnoder. Eftersom gatewayläget innebär ytterligare ett nätverkshopp kan du se något högre svarstider jämfört med direktläge.

När du ansluter till Azure Cosmos DB med gatewayläge kan du ansluta med något av följande alternativ:

  • Standardgateway – Även om serverdelen, som innehåller ditt etablerade dataflöde och din lagring, har dedikerad kapacitet per container, delas standardgatewayen mellan många Azure Cosmos DB-konton. Det är praktiskt för många kunder att dela en standardgateway eftersom de beräkningsresurser som förbrukas av varje enskild kund är små.
  • Dedikerad gateway – I den här gatewayen har både serverdelen och gatewayen dedikerad kapacitet. Den integrerade cachen kräver en dedikerad gateway eftersom den kräver betydande CPU och minne som är specifikt för ditt Azure Cosmos DB-konto.

Du måste ansluta till Azure Cosmos DB med hjälp av den dedikerade gatewayen för att kunna använda den integrerade cachen. Den dedikerade gatewayen har en annan slutpunkt än den standard som medföljer ditt Azure Cosmos DB-konto, men begäranden dirigeras på samma sätt. När du ansluter till din dedikerade gatewayslutpunkt skickar ditt program en begäran till den dedikerade gatewayen, som sedan dirigerar begäran till olika serverdelsnoder. Om möjligt kommer den integrerade cachen att hantera resultatet.

Diagram över gatewaylägesanslutning med en dedikerad gateway:

Diagram som visar hur den dedikerade Azure Cosmos DB-gatewayen fungerar.

Etablera den dedikerade gatewayen

Ett dedikerat gatewaykluster kan etableras i API för NoSQL-konton. Ett dedikerat gatewaykluster kan ha upp till fem noder som standard och du kan lägga till eller ta bort noder när som helst. Alla dedikerade gatewaynoder i ditt konto delar samma anslutningssträng.

Dedikerade gatewaynoder är oberoende av varandra. När du etablerar flera dedikerade gatewaynoder kan valfri enskild nod dirigera en viss begäran. Dessutom har varje nod en separat integrerad cache från de andra. Cachelagrade data i varje nod beror på vilka data som nyligen har skrivits eller lästs igenom den specifika noden. Om ett objekt eller en fråga cachelagras på en nod cachelagras det inte nödvändigtvis på de andra.

För utveckling rekommenderar vi att du börjar med en nod men för produktion bör du etablera tre eller flera noder för hög tillgänglighet. Lär dig hur du etablerar ett dedikerat gatewaykluster med en integrerad cache. Genom att etablera flera dedikerade gatewaynoder kan det dedikerade gatewayklustret fortsätta dirigera begäranden och hantera cachelagrade data, även när en av de dedikerade gatewaynoderna inte är tillgänglig.

Den dedikerade gatewayen är tillgänglig i följande storlekar. Den integrerade cachen använder cirka 50 % av minnet och resten är reserverat för metadata och routningsbegäranden till serverdelspartitioner.

SKU-namn Virtuell processor Minne
D4s 4 16 GB
D8:ar 8 32 GB
D16s 16 64 GB

Tips

När du har skapat kan du lägga till eller ta bort dedikerade gatewaynoder, men du kan inte ändra storleken på noderna. Om du vill ändra storleken på dina dedikerade gatewaynoder kan du avetablera klustret och etablera det igen i en annan storlek. Detta resulterar i en kort stilleståndstid om du inte ändrar anslutningssträngen i ditt program så att standardgatewayen används vid ometablering.

Det finns många olika sätt att etablera en dedikerad gateway:

Anteckning

Du kan etablera en dedikerad gateway i Azure Cosmos DB-konton med tillgänglighetszoner på begäran. Kontakta för cosmoscachefeedback@microsoft.com mer information.

Dedikerad gateway i konton i flera regioner

När du etablerar ett dedikerat gatewaykluster i konton i flera regioner etableras identiska dedikerade gatewaykluster i varje region. Överväg till exempel ett Azure Cosmos DB-konto i USA, östra och Europa, norra. Om du etablerar ett dedikerat gatewaykluster med två D8-noder i det här kontot skulle du ha fyra D8-noder totalt – två i USA, östra och två i Europa, norra. Du behöver inte uttryckligen konfigurera dedikerade gatewayer i varje region och anslutningssträngen förblir densamma. Det finns inte heller några ändringar i metodtipsen för att utföra redundansväxlingar.

Precis som noder i ett kluster är dedikerade gatewaynoder mellan regioner oberoende. Det är möjligt att cachelagrade data i varje region kommer att vara olika, beroende på de senaste läsningarna eller skrivningarna till den regionen.

Begränsningar

Den dedikerade gatewayen har följande begränsningar:

  • Dedikerade gatewayer stöds endast på API för NoSQL-konton
  • Du kan inte använda rollbaserad åtkomstkontroll (RBAC) för att autentisera dataplansbegäranden som dirigeras via den dedikerade gatewayen

Nästa steg

Läs mer om dedikerad gatewayanvändning i följande artiklar: