Condividi tramite


Aggiungere il caching per migliorare le prestazioni in Gestione API di Azure

SI APPLICA A: Developer | Basic | Basic v2 | Standard | Standard v2 | Premium | Premium v2 | Isolato

Le API e le operazioni in Gestione API possono essere configurate con la memorizzazione nella cache delle risposte. La memorizzazione nella cache delle risposte può ridurre significativamente la latenza per i chiamanti di API e il carico back-end per i provider di API. Questo articolo descrive come aggiungere la memorizzazione nella cache alle API.

Importante

La cache predefinita è volatile e viene condivisa da tutte le unità nella stessa area nella stessa istanza di Gestione API. Indipendentemente dal tipo di cache usato (interno o esterno), se le operazioni correlate alla cache non riescono a connettersi alla cache a causa della volatilità della cache o per qualsiasi altro motivo, la chiamata API che usa l'operazione correlata alla cache non genera un errore e l'operazione della cache viene completata correttamente. Nel caso di un'operazione di lettura, viene restituito un valore Null all'espressione del criterio chiamante. Il codice dei criteri deve essere progettato per garantire che sia presente un meccanismo di fallback per recuperare i dati non trovati nella cache.

Screenshot che mostra i criteri della cache in Gestione API.

In questo articolo scoprirai:

  • Aggiungere la memorizzazione delle risposte nella cache per l'API
  • Verificare che la memorizzazione nella cache funzioni

Note

La memorizzazione nella cache interna non è disponibile nel livello a consumo di Gestione API di Azure. È possibile usare una cache di Azure per Redis esterna. È anche possibile configurare una cache esterna in altri livelli di servizio di Gestione API.

Prerequisiti

Aggiungere criteri di memorizzazione nella cache

Con i criteri di memorizzazione nella cache illustrati in questo esempio, la prima richiesta a un'operazione di test restituisce una risposta dal servizio back-end. Questa risposta viene memorizzata nella cache, associata a una chiave in base alle intestazioni e ai parametri delle stringhe di query specifici. Le chiamate successive all'operazione, con parametri corrispondenti, restituiranno la risposta memorizzata nella cache fino alla scadenza dell'intervallo di durata della cache.

  1. Accedere al portale di Azure.

  2. Passare all'istanza di Gestione API.

  3. Selezionare API> nel menu a sinistra.

  4. Selezionare un'API per cui si vuole configurare la memorizzazione nella cache.

  5. Nella parte superiore della schermata selezionare la scheda Progettazione .

  6. Nella sezione Elaborazione in ingresso selezionare l'icona </> :

    Screenshot che mostra le API di Gestione API nel portale.

  7. Nell'elemento inbound aggiungere il criterio seguente:

    <cache-lookup vary-by-developer="false" vary-by-developer-groups="false">
        <vary-by-header>Accept</vary-by-header>
        <vary-by-header>Accept-Charset</vary-by-header>
        <vary-by-header>Authorization</vary-by-header>
    </cache-lookup>
    <rate-limit calls="10" renewal-period="60" />
    

    Note

    Aggiungi una policy di limite di velocità (o politica limite di velocità per chiave ) dopo la ricerca della cache per aiutare a limitare il numero di chiamate e prevenire sovraccarichi sul servizio backend nel caso in cui la cache non sia disponibile.

  8. Nell'elemento outbound aggiungere il criterio seguente:

    <cache-store duration="20" />
    

    In questo criterio specifica duration l'intervallo di scadenza delle risposte memorizzate nella cache. L'intervallo è di 20 secondi.

  9. Seleziona Salva.

Suggerimento

Se si usa una cache esterna, come descritto in Usare una cache compatibile con Redis esterna in Gestione API di Azure, è possibile specificare l'attributo caching-type dei criteri di memorizzazione nella cache. Per altre informazioni, vedere Criteri di memorizzazione nella cache di Gestione API .

Chiamare un'operazione per testare la memorizzazione nella cache

Per verificare la memorizzazione nella cache, eseguire un'operazione nel portale.

  1. Nel portale di Azure, passare all'istanza di Gestione API.
  2. Selezionare API> nel menu a sinistra.
  3. Selezionare l'API a cui sono stati aggiunti i criteri di memorizzazione nella cache.
  4. Selezionare un'operazione da testare.
  5. Selezionare la scheda Test nella parte superiore della finestra.
  6. Selezionare Traccia due o tre volte in successione rapida.
  7. In Risposta HTTP selezionare la scheda Traccia.
  8. Passare alla sezione In ingresso e scorrere fino al criterio cache-lookup. Verrà visualizzato un messaggio simile a quello nello screenshot seguente, che indica un riscontro nella cache: Screenshot della ricerca nella cache durante il test di un'API nel portale.