Class Cache

Cache

Referensi ke cache tertentu.

Class ini memungkinkan Anda menyisipkan, mengambil, dan menghapus item dari cache. Hal ini dapat sangat berguna saat Anda menginginkan akses sering 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 satu 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 harus menunggu 20 detik jika item tidak ada dalam cache, tetapi panggilan berikutnya akan berlangsung sangat cepat hingga item habis masa berlakunya dari cache dalam 25 menit.

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
get(key)StringMendapatkan nilai yang di-cache untuk kunci yang diberikan, 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 waktu habis masa berlaku (dalam detik).
putAll(values)voidMenambahkan serangkaian key-value pair ke cache.
putAll(values, expirationInSeconds)voidMenambahkan serangkaian 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 yang diberikan, atau null jika tidak ada yang ditemukan.

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

Parameter

NamaJenisDeskripsi
keyStringkunci untuk mencari dalam 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

NamaJenisDeskripsi
keysString[]kunci untuk mencari

Return

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

Lihat juga


put(key, value)

Menambahkan key-value pair ke cache.

Panjang maksimum kunci adalah 250 karakter. Jumlah maksimum data yang dapat disimpan per kunci adalah 100 KB. Nilai akan habis masa berlakunya 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 berlaku. Batas ini mungkin berubah.

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

Parameter

NamaJenisDeskripsi
keyStringkunci untuk menyimpan nilai di bawah
valueStringnilai yang akan di-{i>cache<i}

put(key, value, expirationInSeconds)

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

Panjang maksimum kunci adalah 250 karakter. Jumlah maksimum data 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 yang 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 berlaku. 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

NamaJenisDeskripsi
keyStringkunci untuk menyimpan nilai di bawah
valueStringnilai yang akan di-{i>cache<i}
expirationInSecondsIntegerwaktu maksimum nilai tetap berada di cache, dalam detik. Durasi minimumnya adalah 1 detik dan maksimumnya adalah 21600 detik (6 jam).

putAll(values)

Menambahkan serangkaian key-value pair ke cache.

Mirip dengan panggilan berulang ke "put", tetapi lebih efisien karena hanya membuat satu panggilan ke server memcache untuk menetapkan semua nilai. Panjang maksimum kunci adalah 250 karakter. Jumlah maksimum data yang dapat disimpan per kunci adalah 100 KB. Nilai ini akan habis masa berlakunya 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 berlaku. 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

NamaJenisDeskripsi
valuesObjectObjek JavaScript yang berisi kunci dan nilai string

Lihat juga


putAll(values, expirationInSeconds)

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

Mirip dengan panggilan berulang ke "put", tetapi lebih efisien karena hanya membuat satu panggilan ke server memcache untuk menetapkan semua nilai. Panjang maksimum kunci adalah 250 karakter. Jumlah maksimum data 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 yang 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 berlaku. 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

NamaJenisDeskripsi
valuesObjectObjek JavaScript yang berisi kunci dan nilai string
expirationInSecondsIntegerWaktu maksimum nilai tetap berada di cache, dalam detik. Masa berlaku minimum yang diizinkan adalah 1 detik dan masa berlaku maksimum yang diizinkan adalah 21.600 detik (6 jam). Batas akhir 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

NamaJenisDeskripsi
keyStringkunci untuk 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

NamaJenisDeskripsi
keysString[]array kunci untuk dihapus