คำถามและคำตอบสัมภาษณ์ Redis 10 อันดับแรก (2025)

ต่อไปนี้เป็นคำถามและคำตอบในการสัมภาษณ์ Redis สำหรับนักศึกษาใหม่และผู้สมัครที่มีประสบการณ์เพื่อให้ได้งานในฝัน

1) เรดิสคืออะไร?

Redis เป็นที่เก็บข้อมูลและแคชคีย์-ค่าขั้นสูง นอกจากนี้ยังเรียกอีกอย่างว่าเซิร์ฟเวอร์โครงสร้างข้อมูล เนื่องจากคีย์ไม่เพียงแต่ประกอบด้วยสตริงเท่านั้น แต่ยังรวมถึงแฮช ชุด รายการ และชุดที่เรียงลำดับด้วย บริษัทที่ใช้ Redis ได้แก่ StackOverflow, Twitter, Github เป็นต้น

ดาวน์โหลดไฟล์ PDF ฟรี: คำถามและคำตอบสัมภาษณ์ Redis Cache


2) อธิบายคุณสมบัติการจำลองแบบของ Redis หรือไม่

Redis รองรับการจำลองต้นแบบแบบง่ายไปจนถึงการจำลองแบบทาส เมื่อสร้างความสัมพันธ์แล้ว ข้อมูลจากต้นแบบจะถูกถ่ายโอนไปยังสเลฟ เมื่อเสร็จแล้ว การเปลี่ยนแปลงทั้งหมดที่เกิดขึ้นกับต้นแบบจะทำซ้ำกับทาส

3) Memcached และ Redis แตกต่างกันอย่างไร?

Redis memcached
  • Redis ยังทำข้อมูลแคช แต่มีคุณสมบัติเพิ่มเติม เช่น การคงอยู่และการจำลองแบบ
  • Redis ไม่รองรับการทำงานของการลบค่า LRU (ใช้ล่าสุดน้อยที่สุด)
  • ใน Redis คุณสามารถกำหนดเวลาให้กับทุกสิ่งเมื่อหน่วยความจำเต็ม มันจะดูที่ปุ่มสุ่มสามปุ่มและลบอันที่ใกล้หมดอายุที่สุด
  • Redis ไม่รองรับ CAS ( ตรวจสอบและตั้งค่า) มันมีประโยชน์ในการรักษาความสอดคล้องของแคช
  • Redis มีโครงสร้างข้อมูลที่แข็งแกร่งยิ่งขึ้น มันสามารถจัดการสตริง, สตริงที่ปลอดภัยแบบไบนารี, รายการสตริงที่ปลอดภัยแบบไบนารี, รายการที่เรียงลำดับ ฯลฯ
  • Redis มีความยาวคีย์สูงสุด 2GB
  • Redis เป็นเกลียวเดี่ยว
  •  ข้อมูลแคช Memcached เท่านั้น
  • Memcached รองรับการทำงานของการลบค่า LRU (ใช้ล่าสุดน้อยที่สุด)
  • ใน Memcached เมื่อหน่วยความจำล้น หน่วยความจำที่คุณไม่ได้ใช้ล่าสุด (LRU- ใช้น้อยที่สุด) จะถูกลบ
  • Memcached รองรับ CAS (ตรวจสอบและตั้งค่า)
  • ใน Memcached คุณต้องทำให้วัตถุหรืออาร์เรย์เป็นอนุกรมเพื่อบันทึก และหากต้องการอ่านกลับ คุณจะต้องยกเลิกการทำให้เป็นอนุกรม
  • Memcached มีความยาวสูงสุด 250 ไบต์
  • Memcached เป็นแบบมัลติเธรด

4) ข้อดีของการใช้ Redis คืออะไร?

ข้อดีของการใช้ Redis คือ
  • มันให้ความเร็วสูง
  • รองรับการล็อคฝั่งเซิร์ฟเวอร์
  • มี lib ไคลเอนต์มากมาย
  • มีระดับคำสั่ง Atomic Operation (การดำเนินการ tx)

5) Redis มีข้อจำกัดอะไรบ้าง?

  • เป็นเกลียวเดี่ยว
  • มีการสนับสนุนลูกค้าที่จำกัดเพื่อการแฮชที่สม่ำเสมอ
  • มีค่าใช้จ่ายจำนวนมากสำหรับการคงอยู่
  • มันไม่ได้ถูกนำไปใช้อย่างกว้างขวาง
คำถามสัมภาษณ์ Redis
คำถามสัมภาษณ์ Redis

6) แสดงรายการคีย์การทำงานของ Redis หรือไม่

รวมถึงคีย์การทำงานของ Redis
  • พิมพ์คีย์
  • คีย์ TTL
  • ลวดลายคีย์ส
  • หมดอายุวินาทีที่สำคัญ
  • หมดอายุการประทับเวลาที่สำคัญ
  • มีคีย์อยู่
  • ปุ่ม DEL

7) โมดูล PHP ใดที่สามารถใช้กับ Redis ได้

ในโมดูล PHP PREdis เป็นที่นิยมมากกว่า Redid PHP Binding หรือ Resident

8) Redis ให้ความเร็วและความทนทานทั้งคู่หรือไม่

ไม่ Redis จงใจลดความทนทานลงเพื่อเพิ่มความเร็ว ใน Redis ในกรณีที่ระบบล้มเหลวหรือขัดข้อง Redis จะเขียนลงดิสก์ แต่อาจล้าหลังและสูญเสียข้อมูลที่ไม่ได้จัดเก็บ
คำถามสัมภาษณ์ Redis Cache
คำถามสัมภาษณ์ Redis Cache

9) คุณจะปรับปรุงความทนทานใน Redis ได้อย่างไร?

เพื่อปรับปรุงความทนทานของ Redis “ต่อท้ายไฟล์เท่านั้น” สามารถกำหนดค่าได้โดยใช้ข้อมูล fsync บนดิสก์
  • Fsync () ทุกครั้งที่มีการเพิ่มคำสั่งใหม่ลงในไฟล์บันทึกการต่อท้าย: ปลอดภัย แต่ช้ามาก
  • Fysnc() หนึ่งครั้งทุกวินาที: รวดเร็ว แต่คุณอาจสูญเสียข้อมูล 1 วินาทีหากระบบล้มเหลว
  • Never fsync(): มันเป็นวิธีการที่ไม่ปลอดภัย และข้อมูลของคุณอยู่ในมือแล้ว ระบบปฏิบัติการ

10) พูดถึงสิ่งที่คุณต้องดูแลขณะใช้ Redis มีอะไรบ้าง

ในขณะที่ใช้ Redis เราต้องดูแล
  • เลือกวิธีการที่สอดคล้องกันในการตั้งชื่อและนำหน้าคีย์ของคุณ จัดการเนมสเปซของคุณ
  • สร้าง "รีจิสทรี" ของคำนำหน้าคีย์ที่แมปเอกสารภายในแต่ละฉบับของคุณสำหรับแอปพลิเคชันที่ "เป็นเจ้าของ"
  • สำหรับทุกคลาสที่คุณใส่ลงในโครงสร้างพื้นฐาน Redis ของคุณ: ออกแบบ ใช้งาน และทดสอบกลไกสำหรับการรวบรวมขยะหรือการย้ายข้อมูลไปยังพื้นที่จัดเก็บข้อมูลถาวร
  • ออกแบบ ใช้งาน และทดสอบไลบรารีชาร์ดดิ้งก่อนที่คุณจะลงทุนจำนวนมากในการปรับใช้แอปพลิเคชันของคุณ และตรวจสอบให้แน่ใจว่าคุณเก็บรีจิสทรีของ “ชาร์ด” ไว้บนเซิร์ฟเวอร์แต่ละเครื่อง
  • แยกร้านค้า K/V ทั้งหมดของคุณและการดำเนินการที่เกี่ยวข้องออกเป็นห้องสมุด/API หรือบริการของคุณเอง
คำถามสัมภาษณ์เหล่านี้จะช่วยในวีว่าของคุณ (วาจา)
Share

2 คอมเมนต์

  1. รูปโพรไฟล์ คีธ ดับเบิลยู. พูดว่า:

    คำถามข้อ 7 และ 10 ซ้ำกัน บางทีคำถามหนึ่งอาจเกี่ยวกับกรณีการใช้งานที่เป็นไปได้สำหรับ Redis

    1. รูปโพรไฟล์ Guru99 พูดว่า:

      แก้ไขข้อผิดพลาด! ขอบคุณที่นำสิ่งนี้มาแจ้งให้ทราบ

เขียนความเห็น

ที่อยู่อีเมลของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมาย *