Class Cache

Önbellek

Belirli bir önbelleğe başvuru.

Bu sınıf, bir önbellekteki öğeleri eklemenize, almanıza ve kaldırmanıza olanak tanır. Bu, özellikle pahalı veya yavaş bir kaynağa sık sık erişmek istediğinizde yararlı olabilir. Örneğin, example.com adresinde getirmesi 20 saniye süren bir RSS özet akışınız olduğunu ancak ortalama bir istekle erişimi hızlandırmak istediğinizi varsayalım.

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;
}
Öğe önbellekte değilse yine de 20 saniye beklemeniz gerekir ancak öğe 25 dakika içinde önbellekten dolana kadar sonraki çağrılar çok hızlı olur.

Yöntemler

YöntemDönüş türüKısa açıklama
get(key)StringBelirli bir anahtar için önbelleğe alınmış değeri veya anahtar bulunamazsa null değerini alır.
getAll(keys)ObjectBir anahtar dizisi için önbellekte bulunan tüm anahtar/değer çiftlerini içeren bir JavaScript Nesnesi döndürür.
put(key, value)voidÖnbelleğe bir anahtar/değer çifti ekler.
put(key, value, expirationInSeconds)voidÖnbelleğe bir son kullanma zamanıyla (saniye cinsinden) anahtar/değer çifti ekler.
putAll(values)voidÖnbelleğe bir anahtar/değer çifti kümesi ekler.
putAll(values, expirationInSeconds)voidÖnbelleğe bir son kullanma zamanıyla (saniye cinsinden) bir anahtar/değer çifti kümesi ekler.
remove(key)voidVerilen anahtarı kullanarak önbellekten bir girişi kaldırır.
removeAll(keys)voidÖnbellekten bir giriş grubunu kaldırır.

Ayrıntılı belgeler

get(key)

Belirli bir anahtar için önbelleğe alınmış değeri veya anahtar bulunamazsa null değerini alır.

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

Parametreler

AdTürAçıklama
keyStringönbellekte bakmanız gereken

Return

String: Önbelleğe alınan değer; hiçbiri bulunmazsa null


getAll(keys)

Bir anahtar dizisi için önbellekte bulunan tüm anahtar/değer çiftlerini içeren bir JavaScript Nesnesi döndürür.

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

Parametreler

AdTürAçıklama
keysString[]en son arama ve

Return

Object: Önbellekte bulunan tüm anahtarlar için anahtar/değer çiftlerini içeren bir JavaScript Nesnesi

Aşağıdaki kaynakları da incelemenizi öneririz:


put(key, value)

Önbelleğe bir anahtar/değer çifti ekler.

Bir anahtarın maksimum uzunluğu 250 karakterdir. Anahtar başına depolanabilecek maksimum veri miktarı 100 KB'tır. Değer, 600 saniye (10 dakika) sonra önbellekten silinir.

Önbelleğe alınan öğeler için sınır 1.000'dir. 1.000'den fazla öğe yazılırsa önbellek, geçerlilik bitiş tarihi en uzak olan 900 öğeyi depolar. Bu sınır değişebilir.

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

Parametreler

AdTürAçıklama
keyStringdeğeri
valueStringönbelleğe alınacak değer

put(key, value, expirationInSeconds)

Önbelleğe bir son kullanma zamanıyla (saniye cinsinden) anahtar/değer çifti ekler.

Bir anahtarın maksimum uzunluğu 250 karakterdir. Anahtar başına depolanabilecek maksimum veri miktarı 100 KB'tır. Belirtilen geçerlilik süresi yalnızca bir öneridir. Çok fazla veri önbelleğe alınmışsa önbelleğe alınan veriler bu tarihten önce kaldırılabilir.

Önbelleğe alınan öğeler için sınır 1.000'dir. 1.000'den fazla öğe yazılırsa önbellek, geçerlilik bitiş tarihi en uzak olan 900 öğeyi depolar. Bu sınır değişebilir.

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

Parametreler

AdTürAçıklama
keyStringdeğeri
valueStringönbelleğe alınacak değer
expirationInSecondsIntegerdeğerin önbellekte kaldığı maksimum süre (saniye cinsinden). Minimum değer 1 saniye, maksimum süre ise 21.600 saniyedir (6 saat).

putAll(values)

Önbelleğe bir anahtar/değer çifti kümesi ekler.

Tekrarlanan "put" çağrılarına benzer, ancak tüm değerleri ayarlamak için mecache sunucusuna tek bir çağrı yaptığından daha verimlidir. Bir anahtarın maksimum uzunluğu 250 karakterdir. Anahtar başına depolanabilecek maksimum veri miktarı 100 KB'tır. Değerlerin süresi 600 saniye (10 dakika) sonunda önbellekten dolar.

Önbelleğe alınan öğeler için sınır 1.000'dir. 1.000'den fazla öğe yazılırsa önbellek, geçerlilik bitiş tarihi en uzak olan 900 öğeyi depolar. Bu sınır değişebilir.

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

Parametreler

AdTürAçıklama
valuesObjectdize anahtarları ve değerleri içeren bir JavaScript nesnesi

Aşağıdaki kaynakları da incelemenizi öneririz:


putAll(values, expirationInSeconds)

Önbelleğe bir son kullanma zamanıyla (saniye cinsinden) bir anahtar/değer çifti kümesi ekler.

Tekrarlanan "put" çağrılarına benzer, ancak tüm değerleri ayarlamak için mecache sunucusuna tek bir çağrı yaptığından daha verimlidir. Bir anahtarın maksimum uzunluğu 250 karakterdir. Anahtar başına depolanabilecek maksimum veri miktarı 100 KB'tır. Belirtilen geçerlilik süresi yalnızca bir öneridir. Çok fazla veri önbelleğe alınmışsa bu tarihten önce önbelleğe alınan veriler kaldırılabilir.

Önbelleğe alınan öğeler için sınır 1.000'dir. 1.000'den fazla öğe yazılırsa önbellek, geçerlilik bitiş tarihi en uzak olan 900 öğeyi depolar. Bu sınır değişebilir.

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

Parametreler

AdTürAçıklama
valuesObjectDize anahtarları ve değerleri içeren bir JavaScript Nesnesi
expirationInSecondsIntegerDeğerin önbellekte kaldığı maksimum süre (saniye cinsinden). İzin verilen minimum geçerlilik süresi 1 saniye, izin verilen maksimum geçerlilik süresi ise 21.600 saniyedir (6 saat). Varsayılan süre sonu 600 saniyedir (10 dakika).

Aşağıdaki kaynakları da incelemenizi öneririz:


remove(key)

Verilen anahtarı kullanarak önbellekten bir girişi kaldırır.

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

Parametreler

AdTürAçıklama
keyStringönbellekten kaldırılacak anahtar

removeAll(keys)

Önbellekten bir giriş grubunu kaldırır.

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

Parametreler

AdTürAçıklama
keysString[]kaldırılacak anahtar dizisi