เพิ่มแคช Redis ให้โปรเจกต์
สร้างแคช Redis ส่วนตัวบน Google Memorystore (S ถึง XL เลือกความพร้อมใช้งานสูงและ TLS ได้) แล้วเชื่อมกับโปรเจกต์เป็น REDIS_URL จากคอนโซลหรือเครื่องมือ AI
วิธีที่เร็วที่สุด: ให้การดีพลอยสร้างให้#
ถ้าโค้ดอ่าน REDIS_URL (หรือตัวแปรการเชื่อมต่อ Redis อื่น) และโปรเจกต์ยังไม่มีค่าของตัวแปรนั้น การดีพลอยจากเครื่องมือ AI หรือการอัปโหลดในคอนโซลจะสร้างแคชขนาด S แบบทั่วไป และเชื่อมต่อให้ก่อนเริ่มบิลด์ ใช้เวลาประมาณ 5 นาที กรณีที่สร้างและไม่สร้าง ดูที่ฐานข้อมูลและแคชที่โค้ดต้องใช้
สิ่งที่คุณได้#
อินสแตนซ์ Redis 7.2 เฉพาะบน Google Memorystore ในไต้หวัน (asia-east1) สำหรับหนึ่งสภาพแวดล้อม
| การตั้งค่า | ตัวเลือก |
|---|---|
| หน่วยความจำ | S 1 GiB, M 2 GiB, L 4 GiB, XL 8 GiB ขยายได้ภายหลัง แต่ลดไม่ได้ |
| ความพร้อมใช้งาน | แบบทั่วไป หรือ ความพร้อมใช้งานสูง ที่มีเรพลิกาคอยรับช่วงต่อ เปลี่ยนไม่ได้หลังสร้าง |
| การเข้ารหัส TLS | ปิดเป็นค่าเริ่มต้น เปลี่ยนไม่ได้หลังสร้าง เมื่อใช้ TLS โปรเจกต์ต้องมีใบรับรอง CA ด้วย |
| นโยบายการนำข้อมูลออก | สิ่งที่เกิดขึ้นเมื่อหน่วยความจำเต็ม: noeviction, allkeys-lru, allkeys-lfu, allkeys-random, volatile-lru, volatile-lfu, volatile-random หรือ volatile-ttl เปลี่ยนได้ |
- ส่วนตัว แคชมีเพียงที่อยู่ส่วนตัว เฉพาะโปรเจกต์ที่คุณเชื่อมต่อเท่านั้นที่เข้าถึงได้ และต้องใช้รหัสผ่าน AUTH ซึ่งเปิดอยู่เสมอ คุณเชื่อมต่อจากคอมพิวเตอร์ของตัวเองไม่ได้ จากเครื่องมือ AI ใช้
caches_commandรันคำสั่งทีละคำสั่งแทนได้ - จำนวนตามแพ็กเกจ Free ไม่มีแคช Pro มีได้ 5 Team 20 Business ตามสัญญา เลือกได้ทั้งสี่ขนาด
- ราคา ยังไม่ได้ประกาศราคาแคช คอนโซลไม่แสดงราคาประเมิน และ
caches_optionsไม่ตอบราคา ความพร้อมใช้งานสูงแพงกว่าแบบทั่วไป
สร้างแคช#
- เปิด แคช แล้วเลือก สร้างแคช
- ใส่ ชื่อ: อักษรอังกฤษตัวเล็ก ตัวเลข และขีดกลาง ขึ้นต้นด้วยตัวอักษร ไม่เกิน 63 ตัวอักษร
- เลือก หน่วยความจำ ความพร้อมใช้งาน การเข้ารหัส TLS และ นโยบายการนำข้อมูลออก สำหรับเซสชันหรือข้อมูลที่หายไม่ได้ ใช้
noevictionสำหรับแคชล้วน ใช้allkeys-lru - ยืนยัน แคชจะพร้อมใช้งานในประมาณ 5 นาที
สร้างแคช Redis บน Agent Lab ชื่อ sessions ขนาด S แบบทั่วไป ไม่ใช้ TLS นโยบาย noevictionผู้ช่วยจะเรียก caches_create แสดงตัวอย่างให้ดู และสร้างหลังจากคุณตกลง
เชื่อมต่อโปรเจกต์#
การเชื่อมต่อจะเขียนข้อมูลการเชื่อมต่อลงในความลับของโปรเจกต์ และให้โปรเจกต์ผ่านเครือข่ายของแคชได้ ไม่มีใครเห็นรหัสผ่าน
- เปิดแคช ไปที่ การเชื่อมต่อโปรเจกต์ แล้วเลือก เชื่อมต่อโปรเจกต์
- เลือกโปรเจกต์และชื่อตัวแปร แล้วเลือก ตรวจสอบการเปลี่ยน ENV ตัวอย่างจะแสดงตัวแปรที่จะถูกแทนที่
- ยืนยัน และเปิด เริ่มโปรเจกต์ใหม่หลังตั้งค่า ไว้ เพื่อให้โปรเจกต์อ่านค่าใหม่
เชื่อมโปรเจกต์ orders-api กับแคช sessions เป็น REDIS_URLผู้ช่วยจะเรียก caches_binding_preview แล้วเรียก caches_binding_connect พร้อม token จากตัวอย่าง names จับคู่ตัวแปรแต่ละตัวกับส่วนของการเชื่อมต่อ
{ "REDIS_URL": "url", "REDIS_CA": "ca" }ส่วนต่าง ๆ ได้แก่ url, host, port, password และ ca แคชที่ใช้ TLS ต้องมี ca
ส่วน url มีรูปแบบ redis://:<password>@<ที่อยู่ส่วนตัว>:6379/0 เมื่อใช้ TLS จะขึ้นต้นด้วย rediss:// และใช้พอร์ต 6378 ที่ Memorystore กำหนดให้แคชแบบ TLS ไคลเอนต์ส่วนใหญ่ใช้ได้ทันที เมื่อใช้ TLS ให้ส่งใบรับรอง CA ให้ไคลเอนต์ด้วย
import { createClient } from "redis";
const redis = createClient({
url: process.env.REDIS_URL,
socket: process.env.REDIS_CA ? { tls: true, ca: process.env.REDIS_CA } : undefined,
});
await redis.connect();แคชต้องอยู่ในสถานะ พร้อมใช้งาน ก่อน โปรเจกต์จึงจะเชื่อมต่อได้ ยกเลิกการเชื่อมต่อ จะเอาสิทธิ์เข้าถึงของโปรเจกต์ออก และข้อมูลรับรองจะถูกลบเมื่อสิทธิ์เครือข่ายถูกเพิกถอนแล้ว
เปลี่ยนหรือลบแคช#
- เปลี่ยนชื่อ ขยายหน่วยความจำ หรือเปลี่ยนนโยบายการนำข้อมูลออก ได้ที่ จัดการ หรือด้วย
caches_updateTLS และความพร้อมใช้งานเปลี่ยนไม่ได้ ให้สร้างแคชใหม่แทน - ลบแคช จะลบคีย์ทั้งหมดถาวร การเชื่อมต่อโปรเจกต์จะถูกเพิกถอนก่อน
- การมอนิเตอร์ ของแคชแสดงหน่วยความจำ การเชื่อมต่อ คำสั่ง อัตราการพบข้อมูล และคีย์ที่ถูกนำออก ถ้ามีคีย์ถูกนำออกแม้แต่ตัวเดียว แปลว่าแคชเต็ม ใช้ขนาดที่ใหญ่ขึ้นจะช่วยได้
จากเครื่องมือ AI caches_update และ caches_delete ต้องใช้ generation ปัจจุบันจาก caches_get ส่วน caches_command รันคำสั่ง Redis หนึ่งคำสั่งจากรายการที่อนุญาต คำสั่งอ่านรันทันที คำสั่งเขียนรันหลังคุณยืนยัน AUTH, CONFIG, EVAL, FLUSH และ KEYS จะถูกปฏิเสธ ดูที่เครื่องมือ MCP › Redis (แคช)