Delen via


Frequentiebeperkingsfouten voorkomen voor Azure Cosmos DB voor MongoDB-bewerkingen

VAN TOEPASSING OP: MongoDB

Azure Cosmos DB voor MongoDB-bewerkingen kunnen snelheidsbeperking ondervinden, wat resulteert in 16500 fouten in metrische mongo-aanvragen als ze de doorvoerlimiet (RU's) van een verzameling overschrijden.

Schakel SSR (Server Side Retry) in om nieuwe pogingen voor bewerkingen te automatiseren. Aanvragen voor SSR worden opnieuw geprobeerd voor alle verzamelingen in uw account met korte vertragingen. Als een time-out van 60 seconden is bereikt, ontvangt een client een ExceededTimeLimit-uitzondering (50).

De Azure-portal gebruiken

  1. Meld u aan bij het Azure-portaal.

  2. Navigeer naar uw Azure Cosmos DB voor MongoDB-account.

  3. Ga naar het deelvenster Functies onder de sectie Instellingen .

  4. Selecteer Opnieuw proberen aan serverzijde.

  5. Klik op Inschakelen om deze functie in te schakelen voor alle verzamelingen in uw account.

Schermopname van de functie voor opnieuw proberen aan de serverzijde voor Azure Cosmos DB voor MongoDB

De Azure CLI gebruiken

  1. Controleer of SSR al is ingeschakeld voor uw account:

    az cosmosdb show --name accountname --resource-group resourcegroupname
    
  2. Schakel SSR in voor alle verzamelingen in uw databaseaccount. Het kan tot 15 minuten duren voordat deze wijziging van kracht wordt.

    az cosmosdb update --name accountname --resource-group resourcegroupname --capabilities EnableMongo DisableRateLimitingResponses
    
  3. Met de volgende opdracht wordt het opnieuw proberen aan de serverzijde uitgeschakeld voor alle verzamelingen in uw databaseaccount door deze uit de lijst met mogelijkheden te verwijderenDisableRateLimitingResponses. Het kan tot 15 minuten duren voordat deze wijziging van kracht wordt.

    az cosmosdb update --name accountname --resource-group resourcegroupname --capabilities EnableMongo
    

Veelgestelde vragen

Hoe kan ik de effecten van een nieuwe poging aan de serverzijde controleren?

U kunt de frequentiebeperkingsfouten (16500) weergeven met metrische gegevens voor Mongo-aanvragen die opnieuw worden geprobeerd in het deelvenster Metrische gegevens van Azure Cosmos DB. Houd er rekening mee dat deze fouten niet naar de client gaan wanneer SSR is ingeschakeld, omdat ze worden verwerkt en opnieuw worden geprobeerd aan de serverzijde.

U kunt zoeken naar logboekvermeldingen met estimatedDelayFromRateLimitingInMilliseconds in uw Azure Cosmos DB-resourcelogboeken.

Is het opnieuw proberen aan de serverzijde van invloed op mijn consistentieniveau?

het opnieuw proberen aan de serverzijde heeft geen invloed op de consistentie van een aanvraag. Aanvragen worden opnieuw geprobeerd aan de serverzijde als ze beperkt zijn.

Heeft een nieuwe poging aan de serverzijde invloed op elk type fout dat mijn client kan ontvangen?

Nee, nieuwe pogingen aan de serverzijde zijn alleen van invloed op frequentiebeperkingsfouten door ze opnieuw te proberen aan de serverzijde. Met deze functie voorkomt u dat u fouten met snelheidsbeperking in de clienttoepassing moet afhandelen. Alle andere fouten gaan naar de client.

Volgende stappen

Zie dit artikel voor meer informatie over het oplossen van veelvoorkomende fouten:

Wilt u capaciteitsplanning uitvoeren voor een migratie naar Azure Cosmos DB? U kunt informatie over uw bestaande databasecluster gebruiken voor capaciteitsplanning.