Informazioni sulle quote

Cloud Endpoints fornisce quote che consentono di controllare la frequenza con cui le applicazioni possono chiamare l'API. L'impostazione di una quota consente di specificare i limiti di utilizzo per proteggere l'API da un numero eccessivo di richieste da parte delle applicazioni di chiamata. Le richieste eccessive potrebbero essere state causate da un errore di battitura o da un sistema progettato in modo inefficiente che effettua chiamate non necessarie all'API. Indipendentemente dalla causa, bloccare il traffico da una sorgente una volta raggiunto un determinato livello è necessario per la salute generale dell'API. Se imposti una quota, ti assicuri che un'applicazione non possa influire negativamente su altre applicazioni che utilizzano la tua API.

Questa pagina fornisce una panoramica delle funzionalità chiave fornite dalle quote.

Le richieste sono associate al progetto consumer

Dopo aver configurato una quota, Endpoints monitora il numero di richieste al minuto per progetto consumer Google Cloud . Ogni applicazione che chiama l'API deve:

  • Avere un Google Cloud progetto.
  • Avere abilitato l'API nel proprio Google Cloud progetto.
  • Inviare una chiave API con ogni richiesta all'API. In questo modo, Endpoints può identificare il Google Cloud progetto a cui è associata l'applicazione di chiamata e incrementare il contatore delle richieste per il Google Cloud progetto.

Puoi chiedere ai consumatori della tua API di creare i propri progetti nella Google Cloud console oppure puoi creare i progetti per loro. Poiché Endpoints applica le quote per progetto, devi avere un progetto per ogni consumatore API.

Limitare il numero di richieste al minuto

Se imposti una quota, puoi limitare il numero di richieste al minuto all'intera API o solo a metodi specifici. Se il codice client di un progetto consumer supera il limite configurato, la richiesta viene rifiutata prima di raggiungere l'API e viene restituito un codice di stato HTTP 429 too many requests. Le applicazioni di chiamata dovranno gestire il codice di stato 429 e utilizzare il backoff esponenziale o un'altra logica di ripetizione per ridurre la frequenza delle chiamate all'API.

Configurare una o più quote

Puoi configurare una o più quote denominate e specificare un limite di frequenza diverso per ogni quota. Ad esempio, potresti avere alcuni metodi nella tua API che richiedono molte risorse (ad esempio un metodo che esegue una query complessa e restituisce un lungo elenco di risultati) e altri metodi veloci e leggeri. Potresti voler configurare due quote con limiti di frequenza diversi e associare i metodi che richiedono molte risorse a una quota e i metodi leggeri all'altra quota.

Configurare un costo

Quando associ un metodo a una quota, devi sempre specificare un costo per la richiesta. In questo modo, metodi diversi possono consumare la stessa quota a frequenze diverse. Puoi utilizzare i costi come alternativa alla configurazione di quote diverse. Supponiamo, ad esempio, di configurare una quota con un limite di 1000 richieste al minuto. Per i metodi leggeri, configuri un costo di 1, il che significa che i client possono chiamare i metodi leggeri 1000 volte al minuto. Per i metodi che richiedono molte risorse, configuri un costo di 2, il che significa che ogni volta che il client chiama il metodo, il contatore delle richieste viene incrementato di 2, fino al raggiungimento del limite di 1000. In pratica, questo limita i metodi che richiedono molte risorse a 500 richieste al minuto.

Eseguire l'override della quota configurata

La pagina Endpoints > Servizi mostra la quota configurata per ogni metodo dell'API. Se necessario, puoi eseguire l'override del limite configurato per un progetto consumer specifico. Per impostare un override, devi inserire il numero di progetto del progetto consumer nella pagina IAM e amministrazione > Quote e limiti di sistema. Se non hai accesso al progetto consumer di cui vuoi eseguire l'override, devi contattare qualcuno che abbia accesso per ottenere il numero di progetto.

Passaggi successivi