คืออะไร Redis
ที่เก็บข้อมูลในหน่วยความจำ
Redis คือที่เก็บข้อมูลในหน่วยความจำประสิทธิภาพสูงแบบโอเพนซอร์สที่ใช้เป็นฐานข้อมูล แคช และตัวกลางข้อความ
โครงสร้างข้อมูล
- Strings — สตริงและตัวเลขธรรมดา
- Lists — รายการเชื่อมโยง
- Sets — องค์ประกอบที่ไม่ซ้ำกันและไม่เรียงลำดับ
- Sorted Sets — ชุดที่เรียงลำดับพร้อมคะแนน
- Hashes — พจนานุกรมคีย์-ค่า
- Streams — สตรีมเหตุการณ์ (บันทึกเหตุการณ์)
คุณสมบัติหลัก
- ความเร็ว: 100,000+ การดำเนินการต่อวินาที
- การคงอยู่: RDB snapshots และ AOF logs
- การจำลอง: master-slave, Redis Sentinel
- การทำคลัสเตอร์: Redis Cluster (sharding)
- Pub/Sub: เผยแพร่และสมัครรับข้อความ
- สคริปต์ Lua: ธุรกรรมอะตอมิก
กรณีการใช้งาน
- แคช — เซสชัน, การตอบสนอง API, ผลลัพธ์ของคิวรี
- คิวงาน — การประมวลผลพื้นหลัง, job queues
- Rate Limiting — การจำกัดคำขอ API
- ลีดเดอร์บอร์ด — การจัดอันดับและท็อป
- การวิเคราะห์แบบเรียลไทม์ — ตัวนับ, เมตริก
- การระบุตำแหน่งทางภูมิศาสตร์ — การค้นหาตามพิกัด
คำสั่ง
- SET/GET — ทำงานกับสตริง
- LPUSH/RPOP — คิว
- SADD/SMEMBERS — เซต
- ZADD/ZRANGE — เซตที่เรียงลำดับ
- HSET/HGET — แฮช