Udostępnij przez


Skalowanie przepływności usługi Azure Cosmos DB przy użyciu wyzwalacza czasomierza usługi Azure Functions

Wydajność konta usługi Azure Cosmos DB zależy od ilości aprowizowanej przepływności wyrażonej w jednostkach żądań na sekundę (RU/s). Udostępnianie jest z dokładnością do sekundy i jest rozliczane na podstawie najwyższej wartości RU/s w ciągu godziny. Ten aprowizowany model pojemności umożliwia usłudze zapewnienie przewidywalnej i spójnej przepływności, gwarantowanego małego opóźnienia i wysokiej dostępności. Większość obciążeń produkcyjnych wykorzystuje te funkcje. Jednak w środowiskach programistycznych i testowych, w których usługa Azure Cosmos DB jest używana tylko w godzinach pracy, można skalować przepływność w górę rano i skalować w dół wieczorem po godzinach pracy.

Przepływność można ustawić za pomocą szablonów Azure Resource Manager, Azure CLI i programu Azure PowerShell, dla kont API dla NoSQL lub przy użyciu językowych zestawów SDK Azure Cosmos DB. Zaletą korzystania z szablonów usługi Resource Manager, interfejsu wiersza polecenia platformy Azure lub programu PowerShell jest to, że obsługują wszystkie interfejsy API modelu usługi Azure Cosmos DB.

Przykładowy projekt harmonogramu przepływności

Aby uprościć proces skalowania usługi Azure Cosmos DB zgodnie z harmonogramem, utworzyliśmy przykładowy projekt o nazwie Harmonogram przepływności usługi Azure Cosmos DB. Ten projekt to aplikacja usługi Azure Functions z dwoma wyzwalaczami czasomierza — "ScaleUpTrigger" i "ScaleDownTrigger". Wyzwalacze uruchamiają skrypt programu PowerShell, który ustawia przepływność dla każdego zasobu zgodnie z definicją resources.json w pliku w każdym wyzwalaczu. Narzędzie ScaleUpTrigger jest skonfigurowane do uruchamiania o 8:00 czasu UTC, a element ScaleDownTrigger jest skonfigurowany do uruchamiania o godzinie 18:00 czasu UTC. Te czasy można łatwo zaktualizować w function.json pliku dla każdego wyzwalacza.

Ten projekt można sklonować lokalnie, zmodyfikować, aby określić zasoby Azure Cosmos DB do skalowania w górę i w dół oraz harmonogram uruchamiania. Później możesz wdrożyć ją w subskrypcji platformy Azure i zabezpieczyć przy użyciu zarządzanej tożsamości usługi oraz uprawnień kontroli dostępu opartego na rolach platformy Azure (Azure RBAC) z rolą "Operator usługi Azure Cosmos DB", aby ustawić przepływność na kontach usługi Azure Cosmos DB.

Dalsze kroki

  • Dowiedz się więcej i pobierz przykład z harmonogramu przepływności usługi Azure Cosmos DB.