Class Cache

캐시

특정 캐시에 대한 참조입니다.

이 클래스를 사용하면 캐시에서 항목을 삽입, 검색 및 삭제할 수 있습니다. 이는 은(는) 비용이 많이 들거나 느린 리소스에 자주 액세스하려는 경우에 특히 유용합니다. 예를 들어 example.com에 RSS 피드를 가져오는 데 20초가 걸리지만 평균 요청에 액세스할 수 있습니다

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;
}
항목이 캐시에 없으면 20초 동안 기다려야 하지만 후속 호출은 항목은 25분 후에 캐시에서 만료될 때까지 매우 빠릅니다.

메서드

메서드반환 유형간략한 설명
get(key)String지정된 키의 캐시된 값, 또는 값을 찾을 수 없는 경우 null을 가져옵니다.
getAll(keys)Object다음 배열의 캐시에 있는 모든 키-값 쌍을 포함하는 자바스크립트 객체를 반환합니다. 키를 누릅니다.
put(key, value)void캐시에 키-값 쌍을 추가합니다.
put(key, value, expirationInSeconds)void만료 시간 (초)과 함께 키-값 쌍을 캐시에 추가합니다.
putAll(values)void키-값 쌍 집합을 캐시에 추가합니다.
putAll(values, expirationInSeconds)void만료 시간 (초)과 함께 키-값 쌍 집합을 캐시에 추가합니다.
remove(key)void지정된 키를 사용하여 캐시에서 항목을 삭제합니다.
removeAll(keys)void캐시에서 항목 집합을 삭제합니다.

자세한 문서

get(key)

지정된 키의 캐시된 값, 또는 값을 찾을 수 없는 경우 null을 가져옵니다.

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

매개변수

이름유형설명
keyString캐시에서 조회할 키

리턴

String — 캐시된 값 또는 값을 찾을 수 없는 경우 null


getAll(keys)

다음 배열의 캐시에 있는 모든 키-값 쌍을 포함하는 자바스크립트 객체를 반환합니다. 키를 누릅니다.

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

매개변수

이름유형설명
keysString[]조회할 키

리턴

Object: 캐시에서 발견된 모든 키의 키-값 쌍을 포함하는 자바스크립트 객체

참고 항목


put(key, value)

캐시에 키-값 쌍을 추가합니다.

키의 최대 길이는 250자(영문 기준)입니다. 저장할 수 있는 최대 데이터 양 100KB입니다 값은 600초 (10분) 후에 캐시에서 만료됩니다.

캐시된 항목의 한도는 1,000개입니다. 작성된 항목이 1,000개를 초과하면 캐시는 만료까지 남은 항목 900개 이 한도는 변경될 수 있습니다.

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

매개변수

이름유형설명
keyString값을 저장할 키
valueString캐시할 값

put(key, value, expirationInSeconds)

만료 시간 (초)과 함께 키-값 쌍을 캐시에 추가합니다.

키의 최대 길이는 250자(영문 기준)입니다. 저장할 수 있는 최대 데이터 양 100KB입니다 지정된 만료 시간은 제안일 뿐이며 캐시된 데이터가 많은 데이터가 캐시된 경우 이 시점 전에 삭제됩니다.

캐시된 항목의 한도는 1,000개입니다. 작성된 항목이 1,000개를 초과하면 캐시는 만료까지 남은 항목 900개 이 한도는 변경될 수 있습니다.

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

매개변수

이름유형설명
keyString값을 저장할 키
valueString캐시할 값
expirationInSecondsInteger값이 캐시에 유지되는 최대 시간(초)입니다. 이 최솟값은 1초이고 최댓값은 21,600초 (6시간)입니다.

putAll(values)

키-값 쌍 집합을 캐시에 추가합니다.

'put'을 반복적으로 호출하는 것과 비슷하지만 Memcache 서버를 사용하여 모든 값을 설정합니다. 키의 최대 길이는 250자(영문 기준)입니다. 최대 키당 저장할 수 있는 데이터 양은 100KB입니다. 값은 이후에 캐시에서 만료됩니다. 600초 (10분).

캐시된 항목의 한도는 1,000개입니다. 작성된 항목이 1,000개를 초과하면 캐시는 만료까지 남은 항목 900개 이 한도는 변경될 수 있습니다.

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

매개변수

이름유형설명
valuesObject문자열 키와 값이 포함된 자바스크립트 객체입니다.

참고 항목


putAll(values, expirationInSeconds)

만료 시간 (초)과 함께 키-값 쌍 집합을 캐시에 추가합니다.

'put'을 반복적으로 호출하는 것과 비슷하지만 Memcache 서버를 사용하여 모든 값을 설정합니다. 키의 최대 길이는 250자(영문 기준)입니다. 최대 키당 저장할 수 있는 데이터 양은 100KB입니다. 지정된 만료 시간은 제안사항; 많은 데이터가 캐시된 경우 이 시기 전에 캐시된 데이터가 삭제될 수 있습니다.

캐시된 항목의 한도는 1,000개입니다. 작성된 항목이 1,000개를 초과하면 캐시는 만료까지 남은 항목 900개 이 한도는 변경될 수 있습니다.

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

매개변수

이름유형설명
valuesObject문자열 키와 값이 포함된 자바스크립트 객체입니다.
expirationInSecondsInteger값이 캐시에 유지되는 최대 시간(초)입니다. 허용되는 최소 만료 시간은 1초, 허용되는 최대 만료 시간은 21,600초입니다. (6시간). 기본 만료 시간은 600초 (10분)입니다.

참고 항목


remove(key)

지정된 키를 사용하여 캐시에서 항목을 삭제합니다.

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

매개변수

이름유형설명
keyString캐시에서 삭제할 키

removeAll(keys)

캐시에서 항목 집합을 삭제합니다.

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

매개변수

이름유형설명
keysString[]삭제할 키의 배열