Class Cache

Bộ nhớ đệm

Tham chiếu đến một bộ nhớ đệm cụ thể.

Lớp này cho phép bạn chèn, truy xuất và xoá các mục khỏi bộ nhớ đệm. Điều này có thể đặc biệt hữu ích khi bạn muốn thường xuyên truy cập vào một tài nguyên tốn kém hoặc bị chậm. Ví dụ: giả sử bạn có một nguồn cấp dữ liệu RSS tại example.com mất 20 giây để tìm nạp, nhưng bạn muốn tăng tốc độ truy cập đối với một yêu cầu trung bình.

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;
}
Bạn vẫn cần phải đợi 20 giây nếu mục không có trong bộ nhớ đệm, nhưng các lệnh gọi tiếp theo sẽ rất nhanh cho đến khi mục hết hạn khỏi bộ nhớ đệm sau 25 phút.

Phương thức

Phương thứcKiểu dữ liệu trả vềMô tả ngắn
get(key)StringLấy giá trị đã lưu vào bộ nhớ đệm cho khoá đã cho, hoặc nhận giá trị rỗng nếu không tìm thấy khoá nào.
getAll(keys)ObjectTrả về Đối tượng JavaScript chứa tất cả các cặp khoá/giá trị được tìm thấy trong bộ nhớ đệm cho một mảng khoá.
put(key, value)voidThêm một cặp khoá/giá trị vào bộ nhớ đệm.
put(key, value, expirationInSeconds)voidThêm một cặp khoá/giá trị vào bộ nhớ đệm, với thời gian hết hạn (tính bằng giây).
putAll(values)voidThêm một tập hợp các cặp khoá/giá trị vào bộ nhớ đệm.
putAll(values, expirationInSeconds)voidThêm một tập hợp các cặp khoá/giá trị vào bộ nhớ đệm, với thời gian hết hạn (tính bằng giây).
remove(key)voidXoá một mục nhập khỏi bộ nhớ đệm bằng khoá đã cho.
removeAll(keys)voidXoá một nhóm mục nhập khỏi bộ nhớ đệm.

Tài liệu chi tiết

get(key)

Lấy giá trị đã lưu vào bộ nhớ đệm cho khoá đã cho, hoặc nhận giá trị rỗng nếu không tìm thấy khoá nào.

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

Các tham số

TênLoạiNội dung mô tả
keyStringkhoá để tra cứu trong bộ nhớ đệm

Cầu thủ trả bóng

String – giá trị đã lưu vào bộ nhớ đệm hoặc rỗng nếu không tìm thấy giá trị nào


getAll(keys)

Trả về Đối tượng JavaScript chứa tất cả các cặp khoá/giá trị được tìm thấy trong bộ nhớ đệm cho một mảng khoá.

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

Các tham số

TênLoạiNội dung mô tả
keysString[]các khoá cần tra cứu

Cầu thủ trả bóng

Object — Đối tượng JavaScript chứa các cặp khoá/giá trị cho tất cả các khoá được tìm thấy trong bộ nhớ đệm

Xem thêm


put(key, value)

Thêm một cặp khoá/giá trị vào bộ nhớ đệm.

Độ dài tối đa của một khoá là 250 ký tự. Lượng dữ liệu tối đa có thể lưu trữ cho mỗi khoá là 100 KB. Giá trị sẽ hết hạn khỏi bộ nhớ đệm sau 600 giây (10 phút).

Giới hạn cho các mục được lưu vào bộ nhớ đệm là 1.000. Nếu có hơn 1.000 mục được ghi, thì bộ nhớ đệm sẽ lưu trữ 900 mục ở vị trí xa nhất kể từ ngày hết hạn. Giới hạn này có thể thay đổi.

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

Các tham số

TênLoạiNội dung mô tả
keyStringđể lưu trữ giá trị trong
valueStringgiá trị được lưu vào bộ nhớ đệm

put(key, value, expirationInSeconds)

Thêm một cặp khoá/giá trị vào bộ nhớ đệm, với thời gian hết hạn (tính bằng giây).

Độ dài tối đa của một khoá là 250 ký tự. Lượng dữ liệu tối đa có thể lưu trữ cho mỗi khoá là 100 KB. Thời gian hết hạn được chỉ định chỉ là đề xuất; dữ liệu đã lưu vào bộ nhớ đệm có thể bị xoá trước thời điểm này nếu có nhiều dữ liệu được lưu vào bộ nhớ đệm.

Giới hạn cho các mục được lưu vào bộ nhớ đệm là 1.000. Nếu có hơn 1.000 mục được ghi, thì bộ nhớ đệm sẽ lưu trữ 900 mục ở vị trí xa nhất kể từ ngày hết hạn. Giới hạn này có thể thay đổi.

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

Các tham số

TênLoạiNội dung mô tả
keyStringđể lưu trữ giá trị trong
valueStringgiá trị được lưu vào bộ nhớ đệm
expirationInSecondsIntegerthời gian tối đa mà giá trị còn lại trong bộ nhớ đệm, tính bằng giây. Giá trị tối thiểu là 1 giây và tối đa là 21.600 giây (6 giờ).

putAll(values)

Thêm một tập hợp các cặp khoá/giá trị vào bộ nhớ đệm.

Tương tự như các lệnh gọi lặp lại đến "put", nhưng hiệu quả hơn vì chỉ thực hiện một lệnh gọi đến máy chủ bộ nhớ đệm để đặt tất cả giá trị. Độ dài tối đa của một khoá là 250 ký tự. Lượng dữ liệu tối đa có thể lưu trữ trên mỗi khoá là 100 KB. Các giá trị sẽ hết hạn khỏi bộ nhớ đệm sau 600 giây (10 phút).

Giới hạn cho các mục được lưu vào bộ nhớ đệm là 1.000. Nếu có hơn 1.000 mục được ghi, thì bộ nhớ đệm sẽ lưu trữ 900 mục ở vị trí xa nhất kể từ ngày hết hạn. Giới hạn này có thể thay đổi.

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

Các tham số

TênLoạiNội dung mô tả
valuesObjectĐối tượng JavaScript chứa các giá trị và khoá chuỗi

Xem thêm


putAll(values, expirationInSeconds)

Thêm một tập hợp các cặp khoá/giá trị vào bộ nhớ đệm, với thời gian hết hạn (tính bằng giây).

Tương tự như các lệnh gọi lặp lại đến "put", nhưng hiệu quả hơn vì chỉ thực hiện một lệnh gọi đến máy chủ bộ nhớ đệm để đặt tất cả giá trị. Độ dài tối đa của một khoá là 250 ký tự. Lượng dữ liệu tối đa có thể lưu trữ trên mỗi khoá là 100 KB. Thời gian hết hạn được chỉ định chỉ là đề xuất; dữ liệu đã lưu vào bộ nhớ đệm có thể bị xoá trước thời điểm này nếu có nhiều dữ liệu được lưu vào bộ nhớ đệm.

Giới hạn cho các mục được lưu vào bộ nhớ đệm là 1.000. Nếu có hơn 1.000 mục được ghi, thì bộ nhớ đệm sẽ lưu trữ 900 mục ở vị trí xa nhất kể từ ngày hết hạn. Giới hạn này có thể thay đổi.

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

Các tham số

TênLoạiNội dung mô tả
valuesObjectĐối tượng JavaScript chứa các giá trị và khoá chuỗi
expirationInSecondsIntegerThời gian tối đa mà giá trị còn lại trong bộ nhớ đệm, tính bằng giây. Thời gian hết hạn tối thiểu được phép là 1 giây và thời gian hết hạn tối đa được phép là 21.600 giây (6 giờ). Thời gian hết hạn mặc định là 600 giây (10 phút).

Xem thêm


remove(key)

Xoá một mục nhập khỏi bộ nhớ đệm bằng khoá đã cho.

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

Các tham số

TênLoạiNội dung mô tả
keyStringkhoá để xoá khỏi bộ nhớ đệm

removeAll(keys)

Xoá một nhóm mục nhập khỏi bộ nhớ đệm.

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

Các tham số

TênLoạiNội dung mô tả
keysString[]mảng khoá cần xoá