ในโพสต์นี้ เราจะอธิบายกรณีการใช้งาน Redis ที่พบบ่อยที่สุดและคุณลักษณะต่างๆ ที่ส่งผลต่อตัวเลือกเหล่านี้
1. แคชเซสชัน
กรณีการใช้งานที่ชัดเจนที่สุดกรณีหนึ่งสำหรับ Redis คือการใช้มันเป็นแคชของเซสชัน ข้อดีของการใช้ Redis เหนือที่เก็บเซสชันอื่นๆ เช่น Memcached คือ Redis ให้ความคงอยู่ แม้ว่าการรักษาแคชโดยทั่วไปจะไม่มีความสำคัญต่อความสอดคล้องกัน แต่ผู้ใช้ส่วนใหญ่จะไม่ชอบใจอย่างแน่นอนหากเซสชันรถเข็นทั้งหมดหายไป ตอนนี้จะเป็นเช่นนั้นหรือไม่
โชคดีที่ Redis Steam ได้เติบโตขึ้นในช่วงหลายปีที่ผ่านมา การค้นหาเอกสารเกี่ยวกับวิธีการใช้ Redis อย่างเหมาะสมสำหรับการแคชเซสชันนั้นค่อนข้างง่าย แม้แต่แพลตฟอร์มอีคอมเมิร์ซที่มีชื่อเสียงอย่าง Magento ก็มีปลั๊กอินสำหรับ Redis!
จัดเตรียมแผน 500MB สำหรับ Redis ฟรีวันนี้
2. แคชแบบเต็มหน้า (FPC)
นอกเหนือจากโทเค็นเซสชันพื้นฐานของคุณ Redis ยังมีแพลตฟอร์ม FPC ที่ใช้งานง่ายมาก กลับไปสู่ความสม่ำเสมอ แม้กระทั่งในการรีสตาร์ทอินสแตนซ์ Redis ด้วยความคงอยู่ของดิสก์ ผู้ใช้ของคุณจะไม่เห็นความเร็วในการโหลดหน้าเว็บลดลงอย่างมาก เปลี่ยนจากบางอย่างเช่น PHP native FPC
เพื่อใช้ Magento เป็นตัวอย่างอีกครั้ง Magento ขอเสนอปลั๊กอินเพื่อใช้ Redis เป็นแบ็กเอนด์แคชแบบเต็มหน้า
เช่นกัน สำหรับผู้ใช้ WordPress ของคุณ Pantheon มีปลั๊กอินที่ยอดเยี่ยมชื่อ wp-redis เพื่อช่วยให้คุณโหลดหน้าเว็บได้เร็วที่สุดเท่าที่คุณเคยเห็น!
3. คิว
การใช้ประโยชน์จาก Redis 'ในเอ็นจิ้นการจัดเก็บหน่วยความจำเพื่อทำรายการและตั้งค่าการดำเนินการทำให้เป็นแพลตฟอร์มที่น่าทึ่งที่จะใช้สำหรับคิวข้อความ การโต้ตอบกับ Redis เป็นคิวควรให้ความรู้สึกเหมือนใครก็ตามที่เคยใช้การดำเนินการพุช/ป๊อปกับรายการในภาษาการเขียนโปรแกรม เช่น Python
หากคุณค้นหาโดย Google อย่างรวดเร็วเกี่ยวกับ "คิว Redis" คุณจะเห็นว่ามีโครงการโอเพนซอร์ซมากมายที่มุ่งเป้าไปที่การทำให้ Redis เป็นยูทิลิตี้แบ็กเอนด์ที่ยอดเยี่ยมสำหรับทุกความต้องการในการจัดคิวของคุณ ตัวอย่างเช่น Celery มีแบ็กเอนด์ที่ใช้ Redis เป็นนายหน้าซึ่งคุณสามารถตรวจสอบได้ที่นี่
4. กระดานผู้นำ/การนับ
Redis ทำงานได้อย่างน่าทึ่งโดยเพิ่มขึ้นและลดลงเนื่องจากอยู่ในหน่วยความจำ ชุดและชุดที่จัดเรียงยังช่วยให้ชีวิตของเราง่ายขึ้นเมื่อพยายามดำเนินการประเภทนี้ และ Redis ก็นำเสนอโครงสร้างข้อมูลทั้งสองแบบนี้ ดังนั้นหากต้องการดึงผู้ใช้ 10 อันดับแรกจากชุดที่จัดเรียง เราจะเรียกมันว่า “user_scores” เราสามารถเรียกใช้สิ่งต่อไปนี้ได้:
ZRANGE user_scores 0 10
แน่นอนว่านี่เป็นการสมมติว่าคุณกำลังจัดอันดับผู้ใช้ด้วยคะแนนที่เพิ่มขึ้น หากคุณต้องการส่งคืนทั้งผู้ใช้และคะแนนของพวกเขา คุณสามารถเรียกใช้บางสิ่งเช่น:
ZRANGE user_scores 0 10 WITHSCORES
Agora Games มีตัวอย่างที่น่าทึ่ง เช่น การใช้ Ruby ของกระดานผู้นำโดยใช้ Redis เนื่องจากเป็นพื้นที่เก็บข้อมูลซึ่งมีอยู่ที่นี่
5. ผับ/ย่อย
สุดท้าย (แต่ไม่ท้ายสุด) คือคุณลักษณะ Pub/Sub ของ Redis กรณีการใช้งานสำหรับ Pub/Sub นั้นไร้ขอบเขตอย่างแท้จริง ฉันเคยเห็นคนใช้มันสำหรับการเชื่อมต่อเครือข่ายสังคม เพื่อเรียกใช้สคริปต์ตามเหตุการณ์ Pub/Sub และแม้แต่ระบบแชทที่สร้างโดยใช้ Redis Pub/Sub! (ไม่นะ ลองดูสิ)
จากฟีเจอร์ทั้งหมดที่ Redis มีให้ ฉันรู้สึกว่าฟีเจอร์นี้ได้รับความรักน้อยที่สุดเสมอ แม้ว่าจะมีให้ผู้ใช้มากมายก็ตาม
แหล่งข้อมูล Redis เพิ่มเติม
กรณีการใช้งานใดที่คุณใช้ Redis เพื่อแก้ปัญหา เรายินดีช่วยเหลือกรณีการใช้งาน Redis ของคุณ ดูข้อเสนอโฮสติ้ง Redis ของเราหรือส่งอีเมลถึงเราเพื่อตั้งค่าการแชทเกี่ยวกับโครงสร้างพื้นฐานข้อมูลของคุณและวิธีที่เราสามารถช่วยเหลือได้