Panoramica di Web Application Acceleration

Scopri di più sul servizio Web Application Acceleration e su come gestirne i componenti.

Web Application Acceleration è un servizio che può accelerare il traffico sui load balancer HTTP di livello 7 applicando una combinazione di inserimento nella cache e compressione. Questa combinazione di miglioramenti della velocità viene configurata come criterio Web Application Acceleration. Il criterio include l'inserimento nella cache o l'inserimento nella cache e la compressione. Dopo aver creato il criterio Web Application Acceleration, assegnare il criterio a un load balancer come risorsa di accelerazione del criterio.

Il servizio Web Application Acceleration è disponibile gratuitamente per i normali clienti di Oracle Cloud Infrastructure. Non è disponibile per gli utenti di livello gratuito.

Ogni accelerazione è un'associazione del criterio a un load balancer specifico. Se si desidera applicare lo stesso criterio Web Application Acceleration a più load balancer, è possibile creare una risorsa di accelerazione separata per ogni load balancer.

Web Application Acceleration può comprimere i seguenti tipi di risposta:

  • application/atom+xml

  • application/geo+json

  • application/javascript

  • application/x-javascript

  • application/json

  • application/ld+json

  • application/manifest+json

  • application/rdf+xml

  • application/rss+xml

  • application/xhtml+xml

  • application/xml

  • font/eot

  • font/otf

  • font/ttf

  • image/svg+xml

  • text/css

  • text/html

  • text/javascript

  • text/plain

  • text/xml

Nota

  • La richiesta deve avere l'intestazione Accept-Encoding per ottenere una risposta compressa.

  • I valori dell'intestazione di risposta Cache-Control private e no-store disattivano l'inserimento nella cache di Web Application Acceleration.

Per ulteriori informazioni sui load balancer, vedere Panoramica del load balancer.

Il resto di questo documento descrive le due risorse associate a questa funzionalità:

Gestire queste risorse tramite OCI Console, l'interfaccia della riga di comando (CLI, Command Line Interface) o l'API.

Concetti

Elenca e descrive i concetti associati al servizio Web Application Acceleration.

Accelerazione
Le accelerazioni sono ciò che associa i criteri di accelerazione delle applicazioni Web ai load balancer. Quando si collega un'accelerazione a un criterio Web Application Acceleration, si assegna un load balancer a tale criterio e i provisioning del criterio vengono applicati alle operazioni del load balancer.
Inserimento nella cache

Consente l'inserimento nella cache nel load balancer per ridurre la latenza ed evitare un aumento del carico sui server backend.

Rimozione dalla cache

Le cache di uno o più load balancer che includono l'accelerazione vengono rimosse dai dati.

Nota

La rimozione della cache è un'azione irreversibile.

Compression

La compressione è un'opzione quando si seleziona l'inserimento nella cache. Le compressioni comprimono le risposte dei server backend prima di restituirle all'utente dell'applicazione Web per ridurre la quantità di larghezza di banda richiesta. Questa compressione accelera il transito delle risposte del server sulla rete. Attualmente è supportato solo l'algoritmo di compressione GZIP.

Load balancer
I load balancer determinano l'instradamento del traffico. Puoi migliorare le prestazioni dei load balancer assegnando loro criteri di accelerazione delle applicazioni Web tramite le accelerazioni.
Criterio Web Application Acceleration
I criteri di Web Application Acceleration impostano i parametri per l'applicazione delle accelerazioni al traffico Web mediante l'inserimento nella cache e la compressione.

Limitazioni di inserimento nella cache e compressione

Web Application Acceleration è un servizio che può accelerare il traffico sui load balancer applicando una combinazione di inserimento nella cache e compressione.

L'inserimento nella cache e la compressione si verificano per qualsiasi risposta 200 a una richiesta GET o HEAD inferiore alla dimensione massima della cache. L'inserimento nella cache e la compressione non si verificano quando sono presenti le seguenti intestazioni:

  • Cache-Control: no-cache

  • Cache-Control: private

L'inserimento nella cache e la compressione possono accelerare notevolmente il traffico sui load balancer. Tuttavia, l'uso di queste funzioni è soggetto ai seguenti vincoli:

  • Inserimento nella cache

    • Solo le richieste HEAD e GET vengono inserite nella cache.

    • Vengono inserite nella cache solo le risposte che restituiscono il codice di stato HTTP 200.

    • Il contenuto inserito nella cache potrebbe non rimanere aggiornato con il contenuto sui server supportati fino alla scadenza o alla rimozione della cache.

    • Il contenuto viene inserito nella cache fino alla scadenza o viene rimosso anche se il file viene rimosso dal server backend.

    • I server backend possono ottenere un drastico aumento del traffico quando si verifica uno dei seguenti eventi:

      • Più elementi della cache scadono contemporaneamente.

      • La cache è stata rimossa.

      • Il servizio Web Application Acceleration è disabilitato.
    • La dimensione massima della cache è di 100 MB. Una volta raggiunta questa dimensione massima, il servizio Web Application Acceleration rimuove le risorse a cui è stato effettuato il minor accesso fino a quando la dimensione massima non viene più superata.

      Non è possibile inserire nella cache file superiori a 100 MB.

      Nota

      È possibile richiedere di aumentare le dimensioni della cache del servizio Web Application Acceleration. Per ulteriori informazioni, vedere Richiesta di un aumento del limite del servizio.

    • Le risposte che restituiscono l'intestazione Set-Cookie non vengono inserite nella cache.

    • Oracle consiglia di non inserire nella cache le pagine dinamiche perché possono perdere informazioni.

  • Compressione:

    • Se si disabilita la compressione quando è stata abilitata in precedenza, gli utenti delle applicazioni Web potrebbero riscontrare una maggiore latenza delle richieste man mano che i download dei dati aumentano.

Per impostazione predefinita, la risposta viene inserita nella cache per 10 minuti. È possibile configurare il tempo della cache impostando una delle intestazioni di risposta del tempo della cache nella risposta restituita dal server backend.

Sono supportate le seguenti intestazioni dell'ora della cache:

  • Cache-Control: selezionare le direttive max-age o s-maxage per impostare l'ora della cache. Entrambe le direttive indicano per quanto tempo, in secondi, la risposta viene memorizzata nella cache. Ad esempio, Cache-Control: max-age=300 inserisce nella cache la risposta per 300 secondi. Se sono presenti entrambe le direttive max-age e s-maxage, la priorità è s-maxage.

  • Scadenza: specificare la data/ora dopo la quale la risposta viene considerata scaduta. Utilizzare solo il formato data HTTP (RFC2616) per specificare la data/ora. Ad esempio, Expires: Mon, 20 Feb 2023 12:45:26 GMT inserisce nella cache la risposta fino a questa data.

  • Scadenza X-Accel: specificare il tempo di inserimento nella cache di una risposta in secondi. Il valore zero (0) disabilita l'inserimento nella cache per una risposta. Se il valore inizia con il prefisso @, imposta un tempo assoluto in secondi da Epoch. Il tempo di risposta viene memorizzato nella cache fino a questo momento. Ad esempio, X-Accel-Expires: 300 inserisce nella cache la risposta per 300 secondi. X-Accel-Expires: @1676901818 memorizza nella cache la risposta fino a lunedì 20 febbraio 2023 alle 14:03:38 GMT.

Configurare il tempo della cache in base alla durata prevista di una risposta inserita nella cache. Se il contenuto è statico (immutabile), configurare la cache per un periodo di tempo prolungato. Se il contenuto cambia spesso, configurare la cache per un periodo di tempo più breve. Per ottenere risultati ottimali, inserire nella cache l'ora di scadenza corrispondente all'ora di aggiornamento del contenuto.

Applicazione di tag alle risorse

Applica tag alle risorse per organizzarle in base alle esigenze aziendali. È possibile applicare le tag al momento della creazione di una risorsa oppure aggiornare la risorsa in un secondo momento con le tag desiderate. Per informazioni generali sull'applicazione delle tag, vedere Tag risorsa.
Nota

Se non si è certi di applicare le tag, rivolgersi all'amministratore.