Class Cache

Cache

Un riferimento a una determinata cache.

Questa classe consente di inserire, recuperare e rimuovere elementi da una cache. Questo può essere particolarmente utile quando vuoi 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 essere recuperato, ma che tu voglia velocizzare l'accesso a 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 è nella cache, ma le chiamate successive saranno molto veloci, finché l'elemento non esce dalla 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 trova nessuno.
getAll(keys)ObjectRestituisce un oggetto JavaScript contenente tutte le coppie chiave/valore trovate nella cache per un array di chiavi.
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 insieme 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 trova nessuno.

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

Parametri

NomeTipoDescrizione
keyStringla chiave da cercare nella cache,

Ritorni

String: valore memorizzato nella cache o null 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 chiavi.

// 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 da cercare

Ritorni

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 è di 250 caratteri. La quantità massima di dati che può essere archiviata per chiave è 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 è di 250 caratteri. La quantità massima di dati che può essere archiviata per chiave è 100 kB. La data di scadenza specificata è solo un suggerimento; i dati memorizzati nella cache potrebbero essere rimossi prima di questa data se ne vengono memorizzati molti.

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 il quale il valore rimane nella cache. 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 alle chiamate ripetute a "put", ma più efficiente in quanto effettua una sola chiamata al server Memcache per impostare tutti i valori. La lunghezza massima di una chiave è di 250 caratteri. La quantità massima di dati che è possibile archiviare 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 di stringa

Vedi anche


putAll(values, expirationInSeconds)

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

Simile alle chiamate ripetute a "put", ma più efficiente in quanto effettua una sola chiamata al server Memcache per impostare tutti i valori. La lunghezza massima di una chiave è di 250 caratteri. La quantità massima di dati che è possibile archiviare per ogni chiave è 100 kB. La data di scadenza specificata è solo un suggerimento; i dati memorizzati nella cache possono essere rimossi prima di questa data, se molti di essi sono 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 di stringa
expirationInSecondsIntegerIl tempo massimo per cui il valore rimane nella cache, in secondi. La scadenza minima consentita è 1 secondo e la scadenza massima consentita è 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 da rimuovere