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. Thông tin này có thể là đặ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 chậm hoặc đắt tiền. 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 độ quyền truy cập 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 này 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 ra khỏi bộ nhớ đệm trong 25 phút.

Phương thức

Phương thứcLoại 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 giá trị rỗng nếu không tìm thấy khoá.
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 cặp khoá/giá trị vào bộ nhớ đệm.
put(key, value, expirationInSeconds)voidThêm 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 khỏi bộ nhớ đệm bằng khoá đã cho.
removeAll(keys)voidXoá một tập hợp các 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 giá trị rỗng nếu không tìm thấy khoá.

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

Tham số

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

Cầu thủ trả bóng

String – giá trị được lưu vào bộ nhớ đệm hoặc giá trị 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'}

Tham số

TênLoạiMô tả
keysString[]các khoá để tra cứu

Cầu thủ trả bóng

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

Xem thêm


put(key, value)

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

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

Giới hạn tối đa 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ặt hàng xa nhất kể từ ngày hết hạn. Hạn mức này có thể thay đổi.

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

Tham số

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

put(key, value, expirationInSeconds)

Thêm 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).

Khoá có độ dài tối đa là 250 ký tự. Lượng dữ liệu tối đa có thể được lưu trữ cho mỗi khoá là 100KB. Thời gian hết hạn đã chỉ định chỉ là đề xuất; có thể đang được sẽ 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 tối đa 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ặt hàng xa nhất kể từ ngày hết hạn. Hạn mức 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);

Tham số

TênLoạiMô tả
keyStringkhoá để 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ị lưu lại trong bộ nhớ đệm, tính bằng giây. Chiến lược phát hành đĩa đơn tối thiểu là 1 giây và tối đa là 21600 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 lệnh "put", nhưng hiệu quả hơn vì chỉ thực hiện một lệnh gọi đến máy chủ memcache để đặt tất cả các giá trị. Khoá có độ dài tối đa là 250 ký tự. Tối đa lượng dữ liệu có thể lưu trữ cho mỗi khoá là 100KB. 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 tối đa 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ặt hàng xa nhất kể từ ngày hết hạn. Hạn mức 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);

Tham số

TênLoạiMô tả
valuesObjectĐối tượng JavaScript chứa khoá và giá trị 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 lệnh "put", nhưng hiệu quả hơn vì chỉ thực hiện một lệnh gọi đến máy chủ memcache để đặt tất cả các giá trị. Khoá có độ dài tối đa là 250 ký tự. Tối đa lượng dữ liệu có thể lưu trữ cho mỗi khoá là 100KB. Thời gian hết hạn được chỉ định chỉ là gợi ý; dữ liệu đã lưu vào bộ nhớ đệm có thể bị xoá trước thời điểm này nếu nhiều dữ liệu được lưu vào bộ nhớ đệm.

Giới hạn tối đa 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ặt hàng xa nhất kể từ ngày hết hạn. Hạn mức 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);

Tham số

TênLoạiMô 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ị lưu lại trong bộ nhớ đệm, tính bằng giây thời hạn tối thiểu cho phép là 1 giây và thời hạn tối đa cho phép là 21.600 giây (6 giờ). Thời hạn mặc định là 600 giây (10 phút).

Xem thêm


remove(key)

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

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

Tham số

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

removeAll(keys)

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

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

Tham số

TênLoạiMô tả
keysString[]mảng khoá cần xoá