ในบทความนี้ เราจะอธิบาย Use Cases ยอดนิยมของ Redis และลักษณะเฉพาะที่ส่งผลต่อการเลือกใช้
1. Session Cache
Use Case ที่ชัดเจนที่สุดคือใช้ Redis เป็น Session Cache ข้อดีเหนือ Session Stores อื่นๆ เช่น Memcached คือ Redis มี Persistence แม้ Cache Maintenance ไม่น่าเป็น Mission-critical ด้าน Consistency แต่มือใหญ่ User ไม่อยากให้ Cart Sessions หายไปทั้งหมด แน่นอน
โชคดีที่ Redis ได้รับความนิยมสูง หา Documentation ใช้ Redis สำหรับ Session Caching ได้ง่าย แม้ Magento (Ecommerce Platform ดัง) ก็มี Plugin สำหรับ Redis!
Provision แผน 500MB สำหรับ Redis ฟรีวันนี้
2. Full Page Cache (FPC)
นอกจาก Session Tokens แล้ว Redis ให้ FPC Platform ที่ใช้งานง่ายมาก กลับมาที่ Consistency แม้ Restart Redis Instances ด้วย Disk Persistence User ไม่เห็นความช้าลงของ Page Loads — ต่างจาก PHP Native FPC มาก
Magento อีกครั้ง มี Plugin ใช้ Redis เป็น Full Page Cache Backend สำหรับ WordPress Users Pantheon มี Plugin ชื่อ wp-redis ช่วยให้ Page Loads เร็วที่สุดที่เคยเห็น!
3. Queues
ใช้ In-memory Storage Engine ของ Redis ทำ List และ Set Operations ทำให้เป็น Platform ยอดเยี่ยมสำหรับ Message Queue การโต้ตอบ Redis as Queue รู้สึก Native สำหรับผู้คุ้นเคย Push/Pop Operations กับ Lists ในภาษาเช่น Python
Google "Redis Queues" จะเจอ Open-source Projects เยอะมาก ทำให้ Redis เป็น Awesome Backend Utility สำหรับ Queuing ตัวอย่าง Celery มี Backend ใช้ Redis เป็น Broker
4. Leaderboards / Counting
Redis เก่งมากที่ Increments/Decrements เพราะ In-memory Sets และ Sorted Sets ทำให้ Operations เหล่านี้ง่าย และ Redis มี Data Structures ทั้งคู่ ดึง Top 10 Users จาก Sorted Set (ชื่อ "user_scores") รันคำสั่ง:
ZRANGE user_scores 0 10
สมมติ Rank Users ด้วย Incremental Score หากอยาก Return Users และ Scores พร้อมกัน รัน:
ZRANGE user_scores 0 10 WITHSCORES
Agora Games มีตัวอย่าง Ruby Leaderboard ใช้ Redis Datastore
5. Pub/Sub
Last but not least: Redis Pub/Sub Feature Use Cases ของ Pub/Sub ไม่มีขอบเขต เห็นคนใช้สำหรับ Social Network Connections, Trigger Scripts จาก Pub/Sub Events, แม้แต่ Chat System สร้างด้วย Redis Pub/Sub! (จริงๆ ลองดูสิ)
ใน Features ทั้งหมดของ Redis ฟีเจอร์นี้รู้สึกได้รับความสนใจน้อยที่สุด แม้จะมีมากมายให้ Users
Redis Resources เพิ่มเติม
คุณใช้ Redis แก้ Use Cases อะไร? เรายินดี Support Redis Use Cases ของคุณ เช็ค Redis Hosting Offerings หรือ Email เรา Setup Chat เกี่ยว Data Infrastructure และเราช่วยอย่างไร