Condividi tramite


Linee guida per la limitazione delle API per Azure Data Manager per l'agricoltura

La limitazione limita il numero di richieste a un servizio in un intervallo di tempo per evitare l'uso eccessivo delle risorse. La limitazione dell'API REST in Azure Data Manager for Agriculture consente prestazioni più coerenti entro un intervallo di tempo per i clienti che chiamano le API del servizio.

Azure Data Manager per l'agricoltura può gestire un volume elevato di richieste. Se da pochi clienti si verifica un numero eccessivo di richieste, la limitazione consente di mantenere prestazioni e affidabilità ottimali per tutti i clienti.

I limiti di limitazione dipendono dalla versione selezionata e dalle funzionalità del prodotto usato da un cliente. Azure Data Manager per l'agricoltura supporta due versioni distinte:

  • Standard: versione consigliata in genere.
  • Basic: adatto per i requisiti di prototipazione.

Questi limiti funzionano entro tre intervalli di tempo (per un minuto, per cinque minuti e per un mese) per proteggersi da picchi improvvisi nel traffico.

Questo articolo illustra come tenere traccia del numero di richieste che rimangono prima di raggiungere il limite e come rispondere quando si raggiunge il limite. I limiti di limitazione si applicano a queste API.

Classificazione delle API

Le API di Azure Data Manager per l'agricoltura rientrano in tre categorie principali:

  • Operazioni di scrittura: API che usano metodi API REST come PATCH, POSTe DELETE per la modifica dei dati.
  • Operazioni di lettura: API che usano il tipo di GET metodo DELL'API REST per recuperare i dati, incluse le API di ricerca del tipo di POSTmetodo .
  • Operazioni di processo a esecuzione prolungata: API di processo asincrone con esecuzione prolungata che usano il tipo di PUTmetodo DELL'API REST .

Le unità di quota disponibili complessive, come illustrato nella tabella seguente, sono condivise tra queste categorie. Ad esempio, l'uso dell'intera quota nelle operazioni di scrittura significa che non rimane alcuna quota per altre operazioni. Ogni operazione utilizza un'unità specifica di quota, che consente di tenere traccia della quota rimanente per un ulteriore utilizzo.

Operazione Costo unitario per ogni richiesta
Scrittura 5
Lettura 1 1
Processo a esecuzione prolungata: inferenza della soluzione 5
Processo a esecuzione prolungata: operazione farm 5
Processo a esecuzione prolungata: rasterizzazione delle immagini 2
Processo a esecuzione prolungata: eliminazione a catena di un'entità 2
Processo a esecuzione prolungata: inserimento meteo 1
Processo a esecuzione prolungata: inserimento satellite 1

1Un costo unitario aggiuntivo viene preso in considerazione per ogni articolo restituito nella risposta quando si recupera più di un articolo.

Limiti dell'API per la versione Basic

Nella tabella seguente sono elencate le unità disponibili totali per categoria per la versione Basic:

Operazione Intervallo di tempo di limitazione Unità reimpostate dopo ogni intervallo di tempo
Scrittura/lettura Al minuto 25,000
Scrittura/lettura Per cinque minuti 100,000
Scrittura/lettura Al mese 5,000,000
Processo a esecuzione prolungata Per cinque minuti 1000
Processo a esecuzione prolungata Al mese 100,000

Limiti api per la versione Standard

La versione Standard offre un aumento di cinque volte della quota API al mese, rispetto alla versione Basic. Tutti gli altri limiti di quota rimangono invariati.

Nella tabella seguente sono elencate le unità disponibili totali per categoria per la versione Standard:

Operazione Intervallo di tempo di limitazione Unità reimpostate dopo ogni intervallo di tempo
Scrittura/lettura Al minuto 25,000
Scrittura/lettura Per cinque minuti 100,000
Scrittura/lettura Al mese 25.000.000 1
Processo a esecuzione prolungata Per cinque minuti 1000
Processo a esecuzione prolungata Al mese 500.000 1

1Questo limite è cinque volte superiore al limite della versione Basic.

Codice errore

Quando si raggiunge il limite, viene visualizzato il codice di stato HTTP 429 Too many requests (429 Troppe richieste). La risposta include un valore Retry-After , che specifica il numero di secondi di attesa o sospensione dell'applicazione prima che invii la richiesta successiva.

Se si invia una richiesta prima della scadenza del valore di ripetizione dei tentativi, la richiesta non viene elaborata e viene restituito un nuovo valore di ripetizione dei tentativi. Dopo il tempo specificato, è possibile effettuare nuovamente richieste ad Azure Data Manager per l'agricoltura. Il tentativo di stabilire una connessione TCP o l'uso di metodi di autenticazione utente diversi non ignora questi limiti, perché sono specifici di ogni tenant.

Domande frequenti

Se si esaurisce completamente la quota API allocata per le operazioni di scrittura entro un intervallo di tempo al minuto, è possibile effettuare correttamente richieste di operazioni di lettura all'interno della stessa finestra temporale?

I limiti di quota vengono condivisi tra le categorie di operazioni elencate. L'uso dell'intera quota per le operazioni di scrittura non implica alcuna quota rimanente per altre operazioni. Questo articolo illustra in dettaglio le unità di quota specifiche utilizzate per ogni operazione.

Come è possibile calcolare il numero totale di richieste riuscite consentite per un intervallo di tempo specifico?

Il numero totale consentito di richieste API riuscite dipende dalla versione di cui è stato effettuato il provisioning e dall'intervallo di tempo in cui si effettuano richieste.

Ad esempio, con la versione Standard, è possibile eseguire 25.000 unità (unità reimpostate dopo ogni intervallo di tempo) / 5 (costo unitario per ogni richiesta) = 5.000 API di operazione di scrittura entro un intervallo di tempo di un minuto. In alternativa, è possibile usare una combinazione di 4.000 operazioni di scrittura e 5.000 operazioni di lettura, che comportano 4.000 * 5 + 5.000 * 1 = 25.000 unità totali di consumo.

Analogamente, per la versione Basic, è possibile eseguire 5.000.000 (unità reimpostate dopo ogni intervallo di tempo) / 1 (costo unitario per ogni richiesta) = 5.000.000 API di operazione di lettura entro un intervallo di tempo di un mese.

Quanti eventi del sensore possono essere inseriti da un cliente come numero massimo?

Il sistema consente un massimo di 100.000 inserimenti di eventi all'ora. Anche se i nuovi eventi vengono accettati continuamente, potrebbe verificarsi un ritardo nell'elaborazione. Il ritardo potrebbe significare che questi eventi non sono immediatamente disponibili per scenari in uscita in tempo reale insieme all'inserimento.

Passaggi successivi