การอ้างอิงไปยังแคชหนึ่งๆ
คลาสนี้ช่วยให้คุณสามารถแทรก เรียก และนำรายการออกจากแคช ประเภท โดยจะมีประโยชน์อย่างยิ่งเมื่อคุณต้องการเข้าถึงทรัพยากรที่มีราคาแพงหรือช้าบ่อยครั้ง ตัวอย่างเช่น สมมติว่าคุณมีฟีด RSS ที่ example.com ซึ่งใช้เวลา 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 | รับค่าที่แคชไว้ของคีย์ที่ระบุ หรือค่าว่างหากไม่พบ |
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)
รับค่าที่แคชไว้ของคีย์ที่ระบุ หรือค่าว่างหากไม่พบ
// Gets the value from the cache for the key 'foo'. var value = cache.get('foo');
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
key | String | คีย์ที่จะค้นหาในแคช |
รีเทิร์น
String
— ค่าที่แคชไว้หรือค่าว่างหากไม่พบ
getAll(keys)
แสดงออบเจ็กต์ JavaScript ที่มีคู่คีย์/ค่าทั้งหมดที่พบในแคชสำหรับอาร์เรย์ของ คีย์
// 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'}
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
keys | String[] | คีย์ในการค้นหา |
รีเทิร์น
Object
— ออบเจ็กต์ JavaScript ที่มีคู่คีย์/ค่าสำหรับคีย์ทั้งหมดที่พบในแคช
ดูเพิ่มเติม
put(key, value)
เพิ่มคู่คีย์/ค่าลงในแคช
คีย์มีความยาวได้สูงสุด 250 อักขระ จำนวนข้อมูลสูงสุดที่สามารถจัดเก็บได้ ต่อคีย์คือ 100 KB ค่าจะหมดอายุจากแคชหลังจาก 600 วินาที (10 นาที)
จำนวนสูงสุดสำหรับรายการที่แคชไว้คือ 1,000 รายการ หากมีการเขียนมากกว่า 1,000 รายการ แคชจะจัดเก็บ สินค้า 900 รายการที่ห่างจากวันหมดอายุมากที่สุด ขีดจำกัดนี้อาจเปลี่ยนแปลงได้
// Puts the value 'bar' into the cache using the key 'foo' cache.put('foo', 'bar');
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
key | String | คีย์ในการจัดเก็บค่าภายใต้ |
value | String | ค่าที่จะแคช |
put(key, value, expirationInSeconds)
เพิ่มคู่คีย์/ค่าลงในแคชพร้อมเวลาหมดอายุ (เป็นวินาที)
คีย์มีความยาวได้สูงสุด 250 อักขระ จำนวนข้อมูลสูงสุดที่สามารถจัดเก็บได้ ต่อคีย์คือ 100 KB เวลาหมดอายุที่ระบุเป็นเพียงคำแนะนำเท่านั้น ข้อมูลที่แคชไว้อาจ นำออกก่อนเวลานี้หากมีการแคชข้อมูลจำนวนมาก
จำนวนสูงสุดสำหรับรายการที่แคชไว้คือ 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);
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
key | String | คีย์ในการจัดเก็บค่าภายใต้ |
value | String | ค่าที่จะแคช |
expirationInSeconds | Integer | ระยะเวลาสูงสุดที่ค่ายังคงอยู่ในแคช หน่วยเป็นวินาที ต่ำสุด 1 วินาที และสูงสุดคือ 21,600 วินาที (6 ชั่วโมง) |
putAll(values)
เพิ่มชุดคู่คีย์/ค่าลงในแคช
คล้ายกับการเรียก "put" ซ้ำๆ แต่มีประสิทธิภาพมากกว่าเพราะเป็นการเรียก Memcache ที่จะกำหนดค่าทั้งหมด คีย์มีความยาวได้สูงสุด 250 อักขระ สูงสุด ปริมาณข้อมูลที่สามารถจัดเก็บได้ต่อคีย์คือ 100 KB ค่าจะหมดอายุจากแคชหลังจาก 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);
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
values | Object | ออบเจ็กต์ JavaScript ที่มีคีย์และค่าสตริง |
ดูเพิ่มเติม
putAll(values, expirationInSeconds)
เพิ่มชุดคู่คีย์/ค่าลงในแคชพร้อมเวลาหมดอายุ (เป็นวินาที)
คล้ายกับการเรียก "put" ซ้ำๆ แต่มีประสิทธิภาพมากกว่าเพราะเป็นการเรียก Memcache ที่จะกำหนดค่าทั้งหมด คีย์มีความยาวได้สูงสุด 250 อักขระ สูงสุด ปริมาณข้อมูลที่สามารถจัดเก็บได้ต่อคีย์คือ 100 KB เวลาหมดอายุที่ระบุเป็นเพียง คำแนะนำ ระบบอาจนำข้อมูลที่แคชไว้ออกก่อนเวลานี้หากมีการแคชข้อมูลจำนวนมาก
จำนวนสูงสุดสำหรับรายการที่แคชไว้คือ 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);
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
values | Object | ออบเจ็กต์ JavaScript ที่มีคีย์และค่าสตริง |
expirationInSeconds | Integer | เวลาสูงสุดที่ค่าจะยังอยู่ในแคชซึ่งมีหน่วยเป็นวินาที เวลาหมดอายุขั้นต่ำที่อนุญาตคือ 1 วินาที และวันหมดอายุสูงสุดที่อนุญาตคือ 21, 600 วินาที (6 ชั่วโมง) การหมดอายุเริ่มต้นคือ 600 วินาที (10 นาที) |
ดูเพิ่มเติม
remove(key)
ลบรายการจากแคชโดยใช้คีย์ที่ระบุ
// Removes any cache entries for 'foo' cache.remove('foo');
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
key | String | คีย์ที่จะนำออกจากแคช |
removeAll(keys)
นำชุดรายการออกจากแคช
// Removes entries from the cache with keys 'foo' and 'x' cache.removeAll(['foo', 'x']);
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
keys | String[] | อาร์เรย์ของคีย์ที่จะนำออก |