Class Cache

Cache

Uma referência a um cache específico.

Essa classe permite inserir, recuperar e remover itens de um cache. Isso pode ser especialmente útil quando se quer acesso frequente a um recurso caro ou lento. Por exemplo: Digamos que você tenha um feed RSS em example.com que leva 20 segundos para buscar, mas você quer acelerar acesso em uma solicitação comum.

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;
}
Você ainda precisará aguardar 20 segundos se o item não estiver no cache, mas as chamadas subsequentes será muito rápido até que o item expire fora do cache em 25 minutos.

Métodos

MétodoTipo de retornoBreve descrição
get(key)StringRecebe o valor armazenado em cache para a chave especificada ou nulo se nenhum for encontrado.
getAll(keys)ObjectRetorna um objeto JavaScript que contém todos os pares de chave/valor encontrados no cache para uma matriz de chaves.
put(key, value)voidAdiciona um par de chave-valor ao cache.
put(key, value, expirationInSeconds)voidAdiciona um par de chave-valor ao cache, com um prazo de validade (em segundos).
putAll(values)voidAdiciona um conjunto de pares de chave-valor ao cache.
putAll(values, expirationInSeconds)voidAdiciona um conjunto de pares de chave-valor ao cache, com um prazo de validade (em segundos).
remove(key)voidRemove uma entrada do cache usando a chave fornecida.
removeAll(keys)voidRemove um conjunto de entradas do cache.

Documentação detalhada

get(key)

Recebe o valor armazenado em cache para a chave especificada ou nulo se nenhum for encontrado.

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

Parâmetros

NomeTipoDescrição
keyStringa chave a ser procurada no cache

Retornar

String: o valor em cache, ou nulo se nenhum for encontrado.


getAll(keys)

Retorna um objeto JavaScript que contém todos os pares de chave/valor encontrados no cache para uma matriz de chaves.

// 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'}

Parâmetros

NomeTipoDescrição
keysString[]as chaves para pesquisar

Retornar

Object: um objeto JavaScript que contém os pares de chave-valor para todas as chaves encontradas no cache

Consulte também


put(key, value)

Adiciona um par de chave-valor ao cache.

O comprimento máximo de uma chave é de 250 caracteres. A quantidade máxima de dados que pode ser armazenada por chave é de 100 KB. O valor vai expirar no cache após 600 segundos (10 minutos).

O limite de itens em cache é de 1.000. Se mais de 1.000 itens forem gravados, o cache armazenará os 900 itens mais distantes da expiração. Esse limite pode mudar.

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

Parâmetros

NomeTipoDescrição
keyStringa chave para armazenar o valor
valueStringo valor a ser armazenado em cache

put(key, value, expirationInSeconds)

Adiciona um par de chave-valor ao cache, com um prazo de validade (em segundos).

O comprimento máximo de uma chave é de 250 caracteres. A quantidade máxima de dados que pode ser armazenada por chave é de 100 KB. O prazo de validade especificado é apenas uma sugestão. os dados em cache podem ser sejam removidos antes desse período se muitos dados estiverem armazenados em cache.

O limite de itens em cache é de 1.000. Se mais de 1.000 itens forem gravados, o cache armazenará os 900 itens mais distantes da expiração. Esse limite pode mudar.

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

Parâmetros

NomeTipoDescrição
keyStringa chave para armazenar o valor
valueStringo valor a ser armazenado em cache
expirationInSecondsIntegero tempo máximo que o valor permanece no cache, em segundos. A o mínimo é 1 segundo e o máximo é 21.600 segundos (6 horas).

putAll(values)

Adiciona um conjunto de pares de chave-valor ao cache.

Semelhante às chamadas repetidas para "put", mas mais eficiente, pois faz apenas uma chamada para o servidor Memcache para definir todos os valores. O comprimento máximo de uma chave é de 250 caracteres. O máximo de dados que pode ser armazenado por chave é 100 KB. Os valores expiram do cache após 600 segundos (10 minutos).

O limite de itens em cache é de 1.000. Se mais de 1.000 itens forem gravados, o cache armazenará os 900 itens mais distantes da expiração. Esse limite pode mudar.

// 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);

Parâmetros

NomeTipoDescrição
valuesObjectum objeto JavaScript contendo chaves e valores de string

Consulte também


putAll(values, expirationInSeconds)

Adiciona um conjunto de pares de chave-valor ao cache, com um prazo de validade (em segundos).

Semelhante às chamadas repetidas para "put", mas mais eficiente, pois faz apenas uma chamada para o servidor Memcache para definir todos os valores. O comprimento máximo de uma chave é de 250 caracteres. O máximo de dados que pode ser armazenado por chave é 100 KB. O prazo de validade especificado é apenas um sugestão; dados em cache podem ser removidos antes desse período se muitos dados estiverem armazenados em cache.

O limite de itens em cache é de 1.000. Se mais de 1.000 itens forem gravados, o cache armazenará os 900 itens mais distantes da expiração. Esse limite pode mudar.

// 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);

Parâmetros

NomeTipoDescrição
valuesObjectObjeto JavaScript que contém chaves e valores de string
expirationInSecondsIntegerO tempo máximo que o valor permanece no cache, em segundos. O a expiração mínima permitida é de 1 segundo, e a expiração máxima permitida é 21.600 segundos (6 horas). A expiração padrão é de 600 segundos (10 minutos).

Consulte também


remove(key)

Remove uma entrada do cache usando a chave fornecida.

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

Parâmetros

NomeTipoDescrição
keyStringa chave a ser removida do cache

removeAll(keys)

Remove um conjunto de entradas do cache.

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

Parâmetros

NomeTipoDescrição
keysString[]a matriz de chaves a serem removidas