Section 1: Lab: เริ่มต้น Redis 8 ด้วย Docker
- Redis คืออะไร ใช้ทำอะไร และต่างจากฐานข้อมูล SQL อย่างไร
- Redis Open Source 8 กับสิทธิ์การใช้งาน และภาพรวมของ Valkey
- ติดตั้ง Redis 8 ด้วย Docker Compose และโครงสร้างไฟล์ redis.conf
- ใช้ redis-cli และ Redis Insight ดูข้อมูลและสั่งงาน
- ตั้งค่าพื้นฐาน: bind, port, protected-mode และ databases
Section 2: Key, TTL และ Strings
- ตั้งชื่อ Key ให้เป็นระบบ และเหตุที่ไม่ควรใช้ KEYS บนระบบจริง
- ไล่ดู Key อย่างปลอดภัยด้วย SCAN และ TYPE
- EXPIRE, TTL และ PERSIST สำหรับข้อมูลที่มีอายุ
- Strings: SET แบบ NX และ EX, INCR และตัวนับ
- Lab: ตัวนับยอดเข้าชมและ Session ที่หมดอายุเอง
Section 3: Lab: Hashes, Lists, Sets และ Sorted Sets
- Hashes สำหรับข้อมูลแบบอ็อบเจกต์ และการตั้งอายุรายฟิลด์ด้วย HEXPIRE
- Lists สำหรับคิวงาน และคำสั่งแบบรอข้อมูล เช่น BLMOVE
- Sets สำหรับค่าที่ไม่ซ้ำ และการหา Union กับ Intersection
- Sorted Sets สำหรับตารางอันดับและข้อมูลตามช่วงเวลา
- Lab: ตะกร้าสินค้า คิวงาน และตารางอันดับของร้านค้าจำลอง
Section 4: ชนิดข้อมูลที่รวมมาใน Redis 8
- JSON สำหรับเก็บและแก้ไขเอกสารบางส่วนได้โดยตรง
- Time Series สำหรับข้อมูลเซนเซอร์และ Metrics
- Bitmap, HyperLogLog และ Bloom Filter สำหรับนับและตรวจสอบแบบประหยัดหน่วยความจำ
- Query Engine และ Vector Set ในภาพรวมสำหรับงานค้นหาและ AI
- เกณฑ์เลือกชนิดข้อมูลให้เหมาะกับงานและหน่วยความจำ
Section 5: Lab: Redis เป็น Cache อย่างถูกวิธี
- รูปแบบ Cache-aside, Write-through และการกำหนด TTL
- ตั้ง maxmemory และเลือก Eviction Policy เช่น allkeys-lru และ allkeys-lrm
- ปัญหา Cache Stampede และวิธีป้องกัน
- Rate Limiting ด้วยตัวนับและหน้าต่างเวลา
- Lab: วาง Cache หน้าฐานข้อมูลจำลองแล้ววัดผลด้วย redis-benchmark