Class Cache

Cache

Un riferimento a una determinata cache.

Questa classe consente di inserire, recuperare e rimuovere elementi da una cache. Può essere particolarmente utile quando si desidera accedere frequentemente a una risorsa costosa o lenta. Ad esempio: supponiamo che tu abbia un feed RSS su example.com che impiega 20 secondi per il recupero, ma che vuoi velocizzare l'accesso per una richiesta media.

function getRssFeed() {
  var cache = CacheService.getScriptCache();
  var cached = cache.get("rss-feed-contents");
  if (cached != null) {
    return cached;
  }
  var result = UrlFetchApp.fetch("http://example.com/my-slow-rss-feed.xml"); // takes 20 seconds
  var contents = result.getContentText();
  cache.put("rss-feed-contents", contents, 1500); // cache for 25 minutes
  return contents;
}
Dovrai comunque attendere i 20 secondi se l'elemento non si trova nella cache, ma per le chiamate successive sarà molto veloce fino a quando l'elemento scadrà nella cache entro 25 minuti.

Metodi

MetodoTipo restituitoBreve descrizione
get(key)StringRestituisce il valore memorizzato nella cache per la chiave specificata o null se non ne viene trovato nessuno.
getAll(keys)ObjectRestituisce un oggetto JavaScript contenente tutte le coppie chiave/valore trovate nella cache per un array di chiave.
put(key, value)voidAggiunge una coppia chiave/valore alla cache.
put(key, value, expirationInSeconds)voidAggiunge una coppia chiave/valore alla cache, con una scadenza (in secondi).
putAll(values)voidAggiunge un insieme di coppie chiave/valore alla cache.
putAll(values, expirationInSeconds)voidAggiunge un set di coppie chiave/valore alla cache, con una scadenza (in secondi).
remove(key)voidRimuove una voce dalla cache utilizzando la chiave specificata.
removeAll(keys)voidRimuove un insieme di voci dalla cache.

Documentazione dettagliata

get(key)

Restituisce il valore memorizzato nella cache per la chiave specificata o null se non ne viene trovato nessuno.

// Gets the value from the cache for the key 'foo'.
var value = cache.get('foo');

Parametri

NomeTipoDescrizione
keyStringla chiave da cercare nella cache

Invio

String: il valore memorizzato nella cache o nullo se non ne è stato trovato nessuno.


getAll(keys)

Restituisce un oggetto JavaScript contenente tutte le coppie chiave/valore trovate nella cache per un array di chiave.

// Gets a set of values from the cache
var values = cache.getAll(['foo', 'x', 'missing']);
// If there were values in the cache for 'foo' and 'x' but not 'missing', then 'values' would
// be: {'foo': 'somevalue', 'x': 'othervalue'}

Parametri

NomeTipoDescrizione
keysString[]le chiavi per cercare

Invio

Object: un oggetto JavaScript contenente le coppie chiave/valore per tutte le chiavi trovate nella cache.

Vedi anche


put(key, value)

Aggiunge una coppia chiave/valore alla cache.

La lunghezza massima di una chiave è 250 caratteri. La quantità massima di dati che è possibile archiviare per chiave è di 100 kB. Il valore scadrà dalla cache dopo 600 secondi (10 minuti).

Il limite per gli elementi memorizzati nella cache è 1000. Se vengono scritti più di 1000 elementi, la cache archivia i 900 elementi più lontani dalla scadenza. Questo limite potrebbe cambiare.

// Puts the value 'bar' into the cache using the key 'foo'
cache.put('foo', 'bar');

Parametri

NomeTipoDescrizione
keyStringla chiave per memorizzare il valore
valueStringil valore da memorizzare nella cache

put(key, value, expirationInSeconds)

Aggiunge una coppia chiave/valore alla cache, con una scadenza (in secondi).

La lunghezza massima di una chiave è 250 caratteri. La quantità massima di dati che è possibile archiviare per chiave è di 100 kB. La data di scadenza specificata è solo un suggerimento; i dati memorizzati nella cache possono essere rimosso prima di questa data se molti dati vengono memorizzati nella cache.

Il limite per gli elementi memorizzati nella cache è 1000. Se vengono scritti più di 1000 elementi, la cache archivia i 900 elementi più lontani dalla scadenza. Questo limite potrebbe cambiare.

// Puts the value 'bar' into the cache using the key 'foo', but only for the next 20 seconds.
cache.put('foo', 'bar', 20);

Parametri

NomeTipoDescrizione
keyStringla chiave per memorizzare il valore
valueStringil valore da memorizzare nella cache
expirationInSecondsIntegeril tempo massimo in secondi per cui il valore rimane nella cache. La il valore minimo è 1 secondo e il massimo è 21.600 secondi (6 ore).

putAll(values)

Aggiunge un insieme di coppie chiave/valore alla cache.

Simile a chiamate ripetute a "put", ma più efficiente in quanto effettua una sola chiamata alla server memcache per impostare tutti i valori. La lunghezza massima di una chiave è 250 caratteri. Il valore massimo di dati che possono essere archiviati per ogni chiave è 100 kB. I valori scadranno dalla cache dopo 600 secondi (10 minuti).

Il limite per gli elementi memorizzati nella cache è 1000. Se vengono scritti più di 1000 elementi, la cache archivia i 900 elementi più lontani dalla scadenza. Questo limite potrebbe cambiare.

// Puts a set of values into the cache with the keys 'foo', 'x', and 'key'.
var values = {
  'foo': 'bar',
  'x':'y',
  'key': 'value'
};
cache.putAll(values);

Parametri

NomeTipoDescrizione
valuesObjectun oggetto JavaScript contenente chiavi e valori stringa

Vedi anche


putAll(values, expirationInSeconds)

Aggiunge un set di coppie chiave/valore alla cache, con una scadenza (in secondi).

Simile a chiamate ripetute a "put", ma più efficiente in quanto effettua una sola chiamata alla server memcache per impostare tutti i valori. La lunghezza massima di una chiave è 250 caratteri. Il valore massimo di dati che possono essere archiviati per ogni chiave è 100 kB. La scadenza specificata è limitata suggerimento; i dati memorizzati nella cache possono essere rimossi prima di questo momento se molti dati vengono memorizzati nella cache.

Il limite per gli elementi memorizzati nella cache è 1000. Se vengono scritti più di 1000 elementi, la cache archivia i 900 elementi più lontani dalla scadenza. Questo limite potrebbe cambiare.

// Puts a set of values into the cache with the keys 'foo', 'x', and 'key'.
var values = {
  'foo': 'bar',
  'x':'y',
  'key': 'value'
};
cache.putAll(values, 20);

Parametri

NomeTipoDescrizione
valuesObjectUn oggetto JavaScript contenente chiavi e valori stringa
expirationInSecondsIntegerIl tempo massimo in secondi per cui il valore rimane nella cache. la scadenza minima consentita è di 1 secondo, mentre la scadenza massima consentita è di 21.600 secondi (6 ore). La scadenza predefinita è 600 secondi (10 minuti).

Vedi anche


remove(key)

Rimuove una voce dalla cache utilizzando la chiave specificata.

// Removes any cache entries for 'foo'
cache.remove('foo');

Parametri

NomeTipoDescrizione
keyStringla chiave da rimuovere dalla cache

removeAll(keys)

Rimuove un insieme di voci dalla cache.

// Removes entries from the cache with keys 'foo' and 'x'
cache.removeAll(['foo', 'x']);

Parametri

NomeTipoDescrizione
keysString[]l'array di chiavi per rimuovere