28 คะแนน โดย xguru 2022-05-31 | 6 ความคิดเห็น | แชร์ทาง WhatsApp
  • สตอเรจแบบอินเมมโมรีที่ทำงานได้เร็วกว่า Redis ถึง 25 เท่าในด้านประสิทธิภาพ SET/GET และยังมีประสิทธิภาพด้านหน่วยความจำที่ยอดเยี่ยม
  • รองรับคำสั่ง Redis ราว 130 คำสั่ง และรองรับคำสั่งของ Memcache เกือบทั้งหมด (ยกเว้น cas)
  • ใช้ Linux io-uring API สำหรับ I/O (ต้องใช้ Linux 5.10 ขึ้นไป, Ubuntu 20.04.4~)
  • มีไบนารีสำหรับ x86/arm64

6 ความคิดเห็น

 
ifmkl 2022-06-02

โอ้โห... ตอนที่เริ่มใช้ Redis ครั้งแรกเมื่อก่อนก็ใช้แบบอุทานว่า unbelievable! แล้วนะ แต่นี่บอกว่าเร็วกว่า 25 เท่าเลยเหรอ...

 
nicewook 2022-05-31

พอเห็นอะไรแบบนี้แล้วก็รู้สึกกังวลขึ้นมาอยู่เหมือนกัน
คงไม่ใช่ว่า Redis กับ Memcached ไม่รู้อะไรเลยจนทำงานช้ากว่าอยู่ตั้ง 25 เท่า
ก็เลยอดคิดไม่ได้ว่าจุดแลกเปลี่ยนที่ต้องจ่ายเพื่อให้เร็วขึ้น 25 เท่านั้นจะออกมาตรงไหนกันแน่

 
kunggom 2022-05-31

เพราะใช้ฟีเจอร์ที่รองรับเฉพาะในเคอร์เนลลินุกซ์รุ่นใหม่เท่านั้น จึงอาจมองได้ว่าแลกมากับการยอมทิ้งขอบเขตของระบบที่สามารถติดตั้งได้ เพราะถ้าไม่ใช่ลินุกซ์ที่ใช้เคอร์เนลรุ่นใหม่ก็จะทำงานไม่ได้ แต่ในสภาพแวดล้อมคลาวด์ที่สามารถเปิดอินสแตนซ์ที่รันลินุกซ์เวอร์ชันล่าสุดได้อย่างรวดเร็ว ผมคิดว่านี่เป็น trade-off ที่ยอมรับได้อย่างเพียงพอ.

 
xguru 2022-05-31

ดูเหมือนว่านี่จะเป็นข้อดีที่ได้จากการนำ io_uring ซึ่งเป็น asynchronous I/O สำหรับ Linux เท่านั้นมาใช้ Redis เองก็ดูเหมือนจะมี issue ว่าจะลองนำ io_uring มาใช้เหมือนกัน แต่ตอนนี้น่าจะยังไม่มีการทดลอง https://github.com/redis/redis/issues/9441

 
nicewook 2022-05-31

ขอบคุณครับ

 
xguru 2022-05-31

นักพัฒนากำลังตอบคำถามบน HN อยู่ครับ
https://news.ycombinator.com/item?id=31560547