특정 캐시에 대한 참조입니다.
이 클래스를 사용하면 캐시에서 항목을 삽입, 검색, 삭제할 수 있습니다. 이는 비용이 많이 들거나 느린 리소스에 자주 액세스해야 하는 경우에 특히 유용합니다. 예를 들어 가져오는 데 20초가 걸리는 RSS 피드가 example.com에 있다고 가정하고 평균 요청의 액세스 속도를 높이고 싶다고 가정해 보겠습니다.
function getRssFeed() { const cache = CacheService.getScriptCache(); const cached = cache.get('rss-feed-contents'); if (cached != null) { return cached; } const result = UrlFetchApp.fetch( 'http://example.com/my-slow-rss-feed.xml'); // takes 20 seconds const 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 | 키 배열의 캐시에서 발견된 모든 키-값 쌍을 포함하는 JavaScript 객체를 반환합니다. |
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'. const value = CacheService.getScriptCache().get('foo');
매개변수
이름 | 유형 | 설명 |
---|---|---|
key | String | 캐시에서 조회할 키 |
리턴
String
: 캐시된 값 또는 찾을 수 없는 경우 null
getAll(keys)
키 배열의 캐시에서 발견된 모든 키-값 쌍을 포함하는 JavaScript 객체를 반환합니다.
// Gets a set of values from the cache const values = CacheService.getDocumentCache().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'}
매개변수
이름 | 유형 | 설명 |
---|---|---|
keys | String[] | 조회할 키 |
리턴
Object
: 캐시에서 발견된 모든 키의 키-값 쌍을 포함하는 JavaScript 객체입니다.
참고 항목
put(key, value)
캐시에 키-값 쌍을 추가합니다.
키의 최대 길이는 250자(영문 기준)입니다. 키당 저장할 수 있는 최대 데이터 양은 100KB입니다. 값은 600초 (10분) 후에 캐시에서 만료됩니다.
캐시된 항목의 한도는 1,000개입니다. 1,000개가 넘는 항목이 쓰여지면 캐시에는 만료일이 가장 먼 900개 항목이 저장됩니다. 이 한도는 변경될 수 있습니다.
const cache = CacheService.getScriptCache(); // Puts the value 'bar' into the cache using the key 'foo' cache.put('foo', 'bar');
매개변수
이름 | 유형 | 설명 |
---|---|---|
key | String | 값을 저장할 키 |
value | String | 캐시할 값 |
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. CacheService.getScriptCache().put('foo', 'bar', 20);
매개변수
이름 | 유형 | 설명 |
---|---|---|
key | String | 값을 저장할 키 |
value | String | 캐시할 값 |
expirationInSeconds | Integer | 값이 캐시에 유지되는 최대 시간(초)입니다. 최솟값은 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'. const values = { foo: 'bar', x: 'y', key: 'value', }; CacheService.getUserCache().putAll(values);
매개변수
이름 | 유형 | 설명 |
---|---|---|
values | Object | 문자열 키와 값을 포함하는 JavaScript 객체 |
참고 항목
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'. const values = { foo: 'bar', x: 'y', key: 'value', }; CacheService.getUserCache().putAll(values, 20);
매개변수
이름 | 유형 | 설명 |
---|---|---|
values | Object | 문자열 키와 값을 포함하는 JavaScript 객체 |
expirationInSeconds | Integer | 값이 캐시에 남아 있는 최대 시간(초)입니다. 허용되는 최소 만료 시간은 1초이고 최대 만료 시간은 21,600초(6시간)입니다. 기본 만료 시간은 600초 (10분)입니다. |
참고 항목
remove(key)
지정된 키를 사용하여 캐시에서 항목을 삭제합니다.
// Removes any cache entries for 'foo' CacheService.getUserCache().remove('foo');
매개변수
이름 | 유형 | 설명 |
---|---|---|
key | String | 캐시에서 삭제할 키 |
removeAll(keys)
캐시에서 항목 집합을 삭제합니다.
// Removes entries from the cache with keys 'foo' and 'x' CacheService.getDocumentCache().removeAll(['foo', 'x']);
매개변수
이름 | 유형 | 설명 |
---|---|---|
keys | String[] | 삭제할 키 배열 |