Skip to main content
0

Redis คืออะไร ?

Redis เป็นซอฟต์แวร์ Open Source ตัวนึงที่เอาไว้เก็บข้อมูลแบบโครงสร้างใน Memory หรือก็คือเก็บใน RAM นั่นเอง โดยเราสามารถใช้งานเป็น Database ชั่วคราวหรือใช้ในการเก็บ Cache ก็ได้ มีข้อดีก็คือทำงานได้เร็วมากกกกก เพราะมันเก็บอยู่ใน RAM แล้วก็นับว่าเป็น NoSQL แบบนึงก็ได้ที่ข้อมูลจะถูกเก็บแบบ Key – Value เอาไว้ แต่การจะใช้แทนที่ Database ก็อาจจะใช้ไม่ได้ทุกกรณี นั่นก็เพราะมันเก็บข้อมูลอยู่ใน RAM อีกนั่นแหละ

วิธีติดตั้ง

เข้าไปดูที่ลิงค์นี้ได้เลย https://redis.io/download มีสอนการดาวน์โหลดและติดตั้งเอาไว้เรียบร้อย แต่ถ้าอยากจะลองเล่นง่ายที่สุดก็คือไปเล่นที่ลิงค์นี้
>> https://try.redis.io/

try redis

ลองเล่นกันเลยดีกว่า

คำสั่งของ Redis สามารถเข้าไปดูได้ที่ https://redis.io/commands โดยสามารถใช้เป็นตัวพิมพ์เล็กหรือพิมพ์ใหญ่ก็ได้

ลองเพิ่มข้อมูลกันก่อน

คำสั่งสำหรับเพิ่มข้อมูลก็คือ set <key> <value>

set hello BorntoDev
redis add

ลองเรียก hello ออกมาดู

เรียกข้อมูลได้ด้วยคำสั่ง get <key>

get hello

ลบข้อมูล

เวลาต้องการลบข้อมูลใช้คำสั่ง del <key>
พอลอง get hello ดูอีกครั้งก็จะเห็นว่ากลายเป็น nil ก็คือไม่มีค่าไปแล้ว

del hello
redis del

ประเภทข้อมูล

จากตัวอย่างก่อนๆที่ใช้คำสั่ง set และ get ข้อมูลที่เก็บใน Key จะเป็นประเภท String ซึ่งจริงๆแล้ว Redis สามารถเก็บข้อมูลชนิดอื่นๆได้อีก ลองดูกันซัก 3 ประเภทกันดีกว่า

List

เป็น List ที่เก็บค่า String แบบทั่วๆไปที่เรารู้จักกัน โดยข้อมูลใน List จะเรียงตามลำดับตามการใส่ค่าของเรา

เพิ่มข้อมูล

ใช้คำสั่ง LPUSH และ RPUSH ลองดูตัวอย่างด้านล่างประกอบ

LPUSH mylist a   # ข้อมูลใน List คือ "a"
LPUSH mylist b   # ข้อมูลใน List คือ "b","a"
RPUSH mylist c   # ข้อมูลใน List คือ "b","a","c"

เรียกข้อมูลใน List

LRANGE เรียกข้อมูลในช่วง Index ที่ระบุ

LRANGE mylist 0 1
# ผลลัพธ์
1) "b"
2) "a"

LRANGE mylist 0 -1
# ผลลัพธ์
1) "b"
2) "a"
3) "c"

LINDEX เรียกข้อมูลตาม Index

LINDEX mylist 2        # ผลลัพธ์ "c"

ดูจำนวนข้อมูลใน List

LLEN mylist       # ผลลัพธ์ (integer) 3

Set

ก็เป็นข้อมูลแบบไม่มีลำดับเหมือน Set ทั่วไปเช่นกัน

SADD myset hello
SADD myset BorntoDev
SADD myset jaa
SMEMBERS myset
# ผลลัพธ์
1) "hello"
2) "BorntoDev"
3) "jaa"

Hashes

สามารถเก็บข้อมูลภายในเป็นเหมือนกับ Key – Value ได้ เหมาะกับการใช้แทน Object

HSET user username BorntoDev
HMSET user pass 1234 age 20 id 1212312121
HGET user pass    # ผลลัพธ์ "1234"
HGETALL user
# ผลลัพธ์
1) "username"
2) "BorntoDev"
3) "pass"
4) "1234"
5) "age"
6) "20"
7) "id"
8) "1212312121"

สำหรับการใช้งาน Redis ในงานจริงๆก็ยังต้องศึกษาการตั้งค่าอีกหลายอย่าง เข้าไปดูกันได้ในเว็บของ Redis ได้เลยครับ https://redis.io/documentation

Develeper

Author Develeper

More posts by Develeper

Leave a Reply

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

ตั้งค่าความเป็นส่วนตัว

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

ยอมรับทั้งหมด
จัดการความเป็นส่วนตัว
  • คุกกี้ที่จำเป็น
    เปิดใช้งานตลอด

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

  • คุกกี้สำหรับการติดตามทางการตลาด

    ประเภทของคุกกี้ที่มีความจำเป็นในการใช้งานเพื่อการวิเคราะห์ และ นำเสนอโปรโมชัน สินค้า รวมถึงหลักสูตรฟรี และ สิทธิพิเศษต่าง ๆ คุณสามารถเลือกปิดคุกกี้ประเภทนี้ได้โดยไม่ส่งผลต่อการทำงานหลัก เว้นแต่การนำเสนอโปรโมชันที่อาจไม่ตรงกับความต้องการ
    รายละเอียดคุกกี้

บันทึกการตั้งค่า