การอ้างอิงแคชที่เฉพาะเจาะจง
คลาสนี้ช่วยให้คุณแทรก เรียกข้อมูล และนำรายการออกจากแคชได้ ซึ่งจะเป็นประโยชน์อย่างยิ่งเมื่อคุณต้องการเข้าถึงทรัพยากรที่มีราคาแพงหรือช้าบ่อยครั้ง ตัวอย่างเช่น สมมติว่าคุณมีฟีด RSS ที่ example.com ซึ่งใช้เวลา 20 วินาทีในการดึงข้อมูล แต่คุณต้องการเพิ่มความเร็วในการเข้าถึงในคำขอโดยเฉลี่ย
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 หากไม่พบ |
get | Object | แสดงผลออบเจ็กต์ JavaScript ที่มีคู่คีย์/ค่าทั้งหมดที่พบในแคชสําหรับอาร์เรย์ของคีย์ |
put(key, value) | void | เพิ่มคู่คีย์/ค่าลงในแคช |
put(key, value, expirationInSeconds) | void | เพิ่มคู่คีย์/ค่าลงในแคชโดยระบุเวลาหมดอายุ (เป็นวินาที) |
put | void | เพิ่มชุดคู่คีย์/ค่าลงในแคช |
put | void | เพิ่มชุดคู่คีย์/ค่าลงในแคชโดยระบุเวลาหมดอายุ (เป็นวินาที) |
remove(key) | void | นำรายการออกจากแคชโดยใช้คีย์ที่ระบุ |
remove | void | นําชุดรายการออกจากแคช |
เอกสารประกอบโดยละเอียด
get(key)
รับค่าที่แคชไว้สำหรับคีย์ที่ระบุ หรือ null
หากไม่พบ
// Gets the value from the cache for the key 'foo'. const value = CacheService.getScriptCache().get('foo');
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
key | String | คีย์ที่จะค้นหาในแคช |
รีเทิร์น
String
— ค่าที่แคชไว้ หรือ Null หากไม่พบ
get All(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 อักขระ ปริมาณข้อมูลสูงสุดที่สามารถจัดเก็บได้ต่อคีย์คือ 100 KB ค่าจะหมดอายุจากแคชหลังจากผ่านไป 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 อักขระ ปริมาณข้อมูลสูงสุดที่สามารถจัดเก็บได้ต่อคีย์คือ 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. CacheService.getScriptCache().put('foo', 'bar', 20);
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
key | String | คีย์สำหรับจัดเก็บค่า |
value | String | ค่าที่จะแคช |
expiration | Integer | ระยะเวลาสูงสุดที่ค่าจะอยู่ในแคชเป็นวินาที ขั้นต่ำคือ 1 วินาที และสูงสุดคือ 21600 วินาที (6 ชั่วโมง) |
put All(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'. const values = { foo: 'bar', x: 'y', key: 'value', }; CacheService.getUserCache().putAll(values);
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
values | Object | ออบเจ็กต์ JavaScript ที่มีคีย์และค่าสตริง |
ดูเพิ่มเติม
put All(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'. const values = { foo: 'bar', x: 'y', key: 'value', }; CacheService.getUserCache().putAll(values, 20);
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
values | Object | ออบเจ็กต์ JavaScript ที่มีคีย์และค่าสตริง |
expiration | Integer | ระยะเวลาสูงสุดที่ค่าจะอยู่ในแคชเป็นวินาที การหมดอายุขั้นต่ำที่อนุญาตคือ 1 วินาที และการหมดอายุสูงสุดที่อนุญาตคือ 21600 วินาที (6 ชั่วโมง) ระยะเวลาหมดอายุเริ่มต้นคือ 600 วินาที (10 นาที) |
ดูเพิ่มเติม
remove(key)
นำรายการออกจากแคชโดยใช้คีย์ที่ระบุ
// Removes any cache entries for 'foo' CacheService.getUserCache().remove('foo');
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
key | String | คีย์ที่จะนำออกจากแคช |
remove All(keys)
นําชุดรายการออกจากแคช
// Removes entries from the cache with keys 'foo' and 'x' CacheService.getDocumentCache().removeAll(['foo', 'x']);
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
keys | String[] | อาร์เรย์ของคีย์ที่จะนําออก |