Class Cache

Cache

Referensi ke cache tertentu.

Class ini memungkinkan Anda menyisipkan, mengambil, dan menghapus item dari cache. Hal ini dapat sangat berguna jika Anda menginginkan akses rutin ke resource yang mahal atau lambat. Misalnya, Anda memiliki feed RSS di example.com yang membutuhkan waktu 20 detik untuk diambil, tetapi Anda ingin mempercepat akses pada permintaan rata-rata.

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;
}
Anda masih perlu menunggu 20 detik jika item tidak ada di cache, tetapi panggilan berikutnya akan sangat cepat hingga item tersebut berakhir dari cache dalam waktu 25 menit.

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
get(key)StringMendapatkan nilai yang di-cache untuk kunci tertentu, atau null jika tidak ada yang ditemukan.
getAll(keys)ObjectMenampilkan Objek JavaScript yang berisi semua key-value pair yang ditemukan dalam cache untuk array kunci.
put(key, value)voidMenambahkan key-value pair ke cache.
put(key, value, expirationInSeconds)voidMenambahkan key-value pair ke cache, dengan masa berlaku (dalam detik).
putAll(values)voidMenambahkan sekumpulan key-value pair ke cache.
putAll(values, expirationInSeconds)voidMenambahkan sekumpulan key-value pair ke cache, dengan waktu habis masa berlaku (dalam detik).
remove(key)voidMenghapus entri dari cache menggunakan kunci yang diberikan.
removeAll(keys)voidMenghapus kumpulan entri dari cache.

Dokumentasi mendetail

get(key)

Mendapatkan nilai yang di-cache untuk kunci tertentu, atau null jika tidak ada yang ditemukan.

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

Parameter

NameJenisDeskripsi
keyStringkunci yang akan dicari di cache

Return

String — nilai yang di-cache, atau null jika tidak ada yang ditemukan


getAll(keys)

Menampilkan Objek JavaScript yang berisi semua key-value pair yang ditemukan dalam cache untuk array kunci.

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

Parameter

NameJenisDeskripsi
keysString[]kunci untuk mencari

Return

Object — Objek JavaScript yang berisi key-value pair untuk semua kunci yang ditemukan dalam cache

Lihat juga


put(key, value)

Menambahkan key-value pair ke cache.

Panjang maksimum kunci adalah 250 karakter. Jumlah data maksimum yang dapat disimpan per kunci adalah 100 KB. Nilai akan berakhir dari cache setelah 600 detik (10 menit).

Batas untuk item yang di-cache adalah 1.000. Jika lebih dari 1.000 item ditulis, cache akan menyimpan 900 item yang paling jauh dari masa berlakunya. Batas ini mungkin berubah.

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

Parameter

NameJenisDeskripsi
keyStringkunci untuk menyimpan nilai di
valueStringnilai yang akan di-cache

put(key, value, expirationInSeconds)

Menambahkan key-value pair ke cache, dengan masa berlaku (dalam detik).

Panjang maksimum kunci adalah 250 karakter. Jumlah data maksimum yang dapat disimpan per kunci adalah 100 KB. Waktu habis masa berlaku yang ditentukan hanyalah saran; data yang di-cache dapat dihapus sebelum waktu ini jika banyak data di-cache.

Batas untuk item yang di-cache adalah 1.000. Jika lebih dari 1.000 item ditulis, cache akan menyimpan 900 item yang paling jauh dari masa berlakunya. Batas ini mungkin berubah.

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

Parameter

NameJenisDeskripsi
keyStringkunci untuk menyimpan nilai di
valueStringnilai yang akan di-cache
expirationInSecondsIntegerwaktu maksimum nilai tetap berada dalam cache, dalam detik. Minimal 1 detik dan maksimal 2.1600 detik (6 jam).

putAll(values)

Menambahkan sekumpulan key-value pair ke cache.

Mirip dengan panggilan berulang ke "put", tetapi lebih efisien karena hanya melakukan satu panggilan ke server memcache untuk menetapkan semua nilai. Panjang maksimum kunci adalah 250 karakter. Jumlah data maksimum yang dapat disimpan per kunci adalah 100 KB. Nilai akan berakhir dari cache setelah 600 detik (10 menit).

Batas untuk item yang di-cache adalah 1.000. Jika lebih dari 1.000 item ditulis, cache akan menyimpan 900 item yang paling jauh dari masa berlakunya. Batas ini mungkin berubah.

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

Parameter

NameJenisDeskripsi
valuesObjectObjek JavaScript yang berisi nilai dan kunci string

Lihat juga


putAll(values, expirationInSeconds)

Menambahkan sekumpulan key-value pair ke cache, dengan waktu habis masa berlaku (dalam detik).

Mirip dengan panggilan berulang ke "put", tetapi lebih efisien karena hanya melakukan satu panggilan ke server memcache untuk menetapkan semua nilai. Panjang maksimum kunci adalah 250 karakter. Jumlah data maksimum yang dapat disimpan per kunci adalah 100 KB. Waktu habis masa berlaku yang ditentukan hanyalah saran; data yang di-cache dapat dihapus sebelum waktu ini jika banyak data di-cache.

Batas untuk item yang di-cache adalah 1.000. Jika lebih dari 1.000 item ditulis, cache akan menyimpan 900 item yang paling jauh dari masa berlakunya. Batas ini mungkin berubah.

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

Parameter

NameJenisDeskripsi
valuesObjectObjek JavaScript yang berisi kunci dan nilai string
expirationInSecondsIntegerWaktu maksimum nilai tetap berada dalam cache, dalam detik Masa berlaku minimum yang diizinkan adalah 1 detik, dan masa berlaku maksimum yang diizinkan adalah 2.1600 detik (6 jam). Akhir masa berlaku default adalah 600 detik (10 menit).

Lihat juga


remove(key)

Menghapus entri dari cache menggunakan kunci yang diberikan.

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

Parameter

NameJenisDeskripsi
keyStringkunci yang akan dihapus dari cache

removeAll(keys)

Menghapus kumpulan entri dari cache.

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

Parameter

NameJenisDeskripsi
keysString[]array kunci yang akan dihapus