Dela via


Begränsningar för beräkningsbegränsning

Gäller för: ✔️ Virtuella Linux-datorer ✔️ med virtuella Windows-datorer ✔️ – flexibla skalningsuppsättningar ✔️ Enhetliga skalningsuppsättningar

Microsoft Compute implementerar begränsningsmekanismen för att hjälpa till med tjänstens övergripande prestanda och för att ge kunderna en konsekvent upplevelse. API-begäranden som överskrider de högsta tillåtna gränserna begränsas och användarna får ett HTTP 429-fel. Alla principer för beräkningsbegränsning implementeras per region.

Hur fungerar begränsningsprinciperna?

Microsoft Compute implementerar begränsningsprinciper som begränsar antalet API-begäranden som görs per resurs och per prenumeration per region och minut. Om antalet API-begäranden överskrider dessa gränser begränsas begäranden. Så här fungerar dessa gränser:

  • Per resursgräns – Varje resurs, till exempel en virtuell dator (VM), har en specifik gräns för API-begäranden. Anta till exempel att en användare skapar 10 virtuella datorer i en prenumeration. Användaren kan anropa upp till 12 uppdateringsbegäranden för varje virtuell dator på en minut. Om användaren överskrider gränsen för den virtuella datorn begränsas API-begäranden. Den här gränsen säkerställer att några resurser inte använder prenumerationsnivåns gränser och begränsar andra resurser.

  • Prenumerationsgräns – Förutom resursgränser finns det en övergripande gräns för antalet API-begäranden för alla resurser i en prenumeration. Alla API-begäranden som överskrider den här gränsen begränsas, oavsett om gränsen för en enskild resurs har nåtts. Låt oss till exempel anta att en användare har 200 virtuella datorer i en prenumeration. Även om användaren har rätt att initiera upp till 12 begäranden om att uppdatera virtuella datorer för varje virtuell dator, är den sammanlagda gränsen för API-begäranden för uppdatering av virtuella datorer begränsad till 1 500 per minut. Alla API-begäranden om uppdatering av virtuella datorer för prenumerationen som överstiger 1 500 begränsas.

Hur fastställer Microsoft Compute begränsningsgränser?

För att fastställa gränserna för varje resurs och prenumeration använder Microsoft Compute Token Bucket Algorithm. Den här algoritmen skapar bucketar för varje gräns och innehåller ett visst antal token i varje bucket. Antalet token i en bucket representerar begränsningsgränsen vid en viss minut.

När resursen skapas i början av begränsningsfönstret fylls bucketen till sin maximala kapacitet. Varje API-begäran som initieras av användaren använder en token. När antalet token tar slut till noll begränsas efterföljande API-begäranden. Bucket fylls på med nya token varje minut med en konsekvent hastighet som kallas Bucket Refill Rate för en resurs och en prenumeration.

Till exempel: Låt oss överväga begränsningsprincipen för API:et för VM-uppdatering som stipulerar en Bucket Refill-hastighet på fyra token per minut och en maximal bucketkapacitet på 12 token. Användaren anropar API-begäran om uppdatering av virtuell dator för en virtuell dator (VM) enligt följande tabell. Inledningsvis fylls bucketen med 12 token i början av begränsningsfönstret. I den fjärde minuten använder användaren alla 12 token, vilket lämnar bucketen tom. I den femte minuten fylls bucketen på med fyra nya token i enlighet med Bucket Refill Rate( Bucket Refill Rate). Fyra API-begäranden kan därför göras under den femte minuten, medan Microsoft Compute begränsar en API-begäran på grund av otillräckliga token.

(min) 1:a 2.00 Tredje 4:e 5:e 6:e
Antal token i början (A) 12 12 8 12 4 4
Begäranden per minut (B) 0 8 0 13 5 0
Begränsade begäranden (C) 0 0 0 1 1 0
Återstående token i slutet av perioden
D = Max(A-B, 0)
12 4 8 0 0 4

Liknande process följs för att fastställa begränsningsgränserna på prenumerationsnivå. I följande avsnitt beskrivs bucketens påfyllningshastighet och maximal bucketkapacitet som används för att fastställa begränsningsgränser för virtuella datorer, vm-skalningsuppsättningar och virtuella datorers skalningsuppsättningar.

Begränsningsgränser för virtuella datorer

API-begäranden för virtuella datorer kategoriseras i sju olika principer. Varje princip har sina egna gränser, beroende på hur resursintensiva API-begäranden under principen är. Följande tabell innehåller en omfattande lista över dessa principer, motsvarande REST-API:er och deras respektive begränsningsgränser:

Principkategori REST API:er Resursnivå Resursnivå Prenumerationsnivå Prenumerationsnivå
Bucketpåfyllningshastighet (per min) Maximal bucketkapacitet
(Per min)
Bucketpåfyllningshastighet
(Per min)
Maximal bucketkapacitet
(Per min)
Placera virtuell dator
(Skapa nya virtuella datorer)
Skapa 4 12 500 1 500
Uppdatera virtuell dator
(Uppdatera befintliga virtuella datorer)
Uppdatering
Starta om igen
Stäng av
Start
Generalisera
Konvertera till hanterade diskar
Omdistribuera
Utföra underhåll
Fånga
Kör kommando
Skapa eller uppdatera
Tillägg – Uppdatera
Tillägg – Ta bort
Reimage
Uppdatering
Kör kommandon – Uppdatera
Kör kommandon – Ta bort
Kör kommandon – Skapa eller uppdatera
4 12 500 1 500
Ta bort virtuell dator
(Ta bort virtuella datorer)
Ta bort
Simulera avlägsnande
Frigör
4 12 500 1 500
Hämta virtuell dator med låg kostnad
(Hämta information om en enskild virtuell dator)
Hämta
Instansvy
Tillägg – Hämta
Lista tillgängliga storlekar
Hämta startdiagnostikdata
Kör kommandon – Hämta efter virtuell dator
Kör kommandon – lista efter virtuell dator
12 36 8,000 24,000
Hög kostnad Hämta virtuell dator1
(Hämta information om flera virtuella datorer)
Lista
Visa en lista över alla
Lista efter plats
Inte tillämpligt Inte tillämpligt 300 900
Hämta åtgärd
(Hämta information om asynkrona VM-åtgärder)
Status för asynkrona åtgärder 15 45 5 000 15 000
Åtgärder för vm-gästkorrigering
(Utvärdera och installera gästkorrigeringar)
Utvärdera korrigeringar
Installera korrigeringar
2 6 200 600

1 Endast principer på prenumerationsnivå gäller.

Begränsningsgränser för VM-skalningsuppsättningar

API-begäranden för VM-skalningsuppsättningar (uniform och flex) kategoriseras i 5 distinkta principer. Varje princip har sina egna gränser, beroende på hur resursintensiva API-begäranden under principen är. Dessa principer gäller för både Flex- och Uniform-orkestreringslägen. Följande tabell innehåller en omfattande lista över dessa principer, motsvarande REST-API:er och deras respektive begränsningsgränser:

Principkategori REST API:er Resursnivå Resursnivå Prenumerationsnivå Prenumerationsnivå
Bucketpåfyllningshastighet
(Per min)
Maximal bucketkapacitet
(Per min)
Bucketpåfyllningshastighet (per min) Maximal bucketkapacitet
(Per min)
Placera
(Skapa ny skalningsuppsättning)
Skapa 4 12 125 375
Uppdatera
(Uppdatera befintlig skalningsuppsättning)
Uppdatering
Start2
Starta om2
Distribuera om2
Utföra underhåll2
Återskapa 2
Ändra storlek på alla2
Skapa eller uppdatera
Löpande uppgraderingar – Avbryt
Tillägg – Skapa
Tillägg – Uppdatera
Tillägg – Ta bort
Force Recovery Service Fabric Platform Update Domain Walk
Konvertera till en placeringsgrupp
Ange orkestreringstjänsttillstånd
4 12 500 1 500
Delete
(Ta bort skalningsuppsättning)
Ta bort
Ström av2
Frigör
4 12 175 525
Låg kostnad hämta
(Hämta information om en skalningsuppsättning)
Hämta
Lista sku:er
Löpande uppgraderingar – Hämta senaste
Hämta historik för operativsystemuppgradering
12 36 800 2,400
Hög kostnad hämta
(Hämta resursintensiv information)
Hämta instansvy
Lista2
Lista alla2
Lista efter plats2
10 30 360 1,080

2 Endast principer på prenumerationsnivå gäller.

Begränsningsgränser för virtuella datorskalningsuppsättningar för virtuella datorer

API-begäranden för virtuella datorskalningsuppsättningar Virtuella datorer kategoriseras i tre olika principer. Varje princip har sina egna gränser, beroende på hur resursintensiva API-begäranden under principen är. Följande tabell innehåller en omfattande lista över dessa principer, motsvarande REST-API:er och deras respektive begränsningsgränser:

Principkategori REST API:er Resursnivå Resursnivå Prenumerationsnivå Prenumerationsnivå
Bucketpåfyllningshastighet
(Per min)
Maximal bucketkapacitet
(Per min)
Bucketpåfyllningshastighet
(Per min)
Maximal bucketkapacitet
(Per min)
Uppdatera virtuella datorer för skalningsuppsättning
(Uppdatera befintliga virtuella datorer i en skalningsuppsättning)
Start
Starta om
Reimage
ReimageAll
Uppdatering
SimulateEviction
Tillägg – Skapa eller uppdatera
RunCommands – Skapa eller uppdatera
RunCommands – Uppdatera
4 12 500 1 500
Ta bort virtuella skalningsuppsättningar
(Ta bort virtuella skalningsuppsättningar)
Ta bort
PowerOff
Frigör
Tillägg – Ta bort
RunCommands – Ta bort
4 12 500 1 500
Hämta virtuella datorer för skalningsuppsättning
(Hämta information om virtuella skalningsuppsättningsdatorer)
Hämta
GetInstance-vy
Tillägg – Hämta
RunCommands – Hämta
RetrieveBoot-diagnostikdata
12 36 2 000 6 000

Felsökningsriktlinjer

Om användarna fortfarande står inför utmaningar på grund av beräkningsbegränsning kan du läsa Felsöka begränsningsfel i Azure – Virtuella datorer. Den innehåller information om hur du felsöker begränsningsproblem och metodtips för att undvika begränsning.

Vanliga frågor och svar

Krävs det någon åtgärd från användarna?

Användarna behöver inte ändra något i sin konfiguration eller sina arbetsbelastningar. Alla befintliga API:er fortsätter att fungera som de är.

Vilka fördelar ger begränsningsprinciperna?

Begränsningsprinciperna har flera fördelar:

  • Alla beräkningsresurser har ett enhetligt fönster på 1 min. Användare kan anropa API-anrop, 1 min när de har begränsats.

  • Ingen enskild resurs kan använda upp alla gränser under en prenumeration eftersom gränser definieras på resursnivå.

  • Microsoft Compute introducerar en ny algoritm, Token Bucket Algorithm, för att fastställa gränserna. Algoritmen ger extra buffert till kunderna, samtidigt som ett stort antal API-begäranden görs.

Får kunden en avisering när de är på väg att nå sina begränsningsgränser?

Som en del av varje svar returnerar Microsoft Compute x-ms-ratelimit-remaining-resource som kan användas för att fastställa begränsningsgränserna mot principerna. En lista över tillämpliga begränsningsprinciper returneras som ett svar på informationshuvuden för samtalsfrekvens.