ในบทเรียนนี้ เราจะเรียนรู้วิธีการตั้งค่าเวลาหมดอายุ (Timeout) บน Key โดยใช้คำสั่ง Redis EXPIRE, PEXPIRE, EXPIREAT และ PEXPIREAT
เวลาหมดอายุเป็นวินาที :-
เพื่อตั้งค่าเวลาหมดอายุบน Key ในหน่วยวินาที เราจะใช้คำสั่ง Redis EXPIRE ใน redis-cli จำนวนวินาทีนี้แสดง Time to Live (TTL) หากจำนวนวินาทีเป็นศูนย์หรือติดลบ Key จะถูกลบทันที ไวยากรณ์ของคำสั่ง Redis EXPIRE มีดังนี้ :-
ไวยากรณ์ (Syntax) :-
redis host:port> EXPIRE <key name> <seconds>
ผลลัพธ์ (Output) :-
1 หากตั้งค่า Timeout สำเร็จ 0 หาก Key ไม่มีอยู่
ตัวอย่าง (Example) :-

เวลาหมดอายุเป็นมิลลิวินาที :-
เพื่อตั้งค่าเวลาหมดอายุบน Key ในหน่วยมิลลิวินาที เราจะใช้คำสั่ง PEXPIRE ใน redis-cli ไวยากรณ์ของคำสั่ง Redis PEXPIRE มีดังนี้ :-
ไวยากรณ์ (Syntax) :-
redis host:port> PEXPIRE <key name> <milliseconds>
ผลลัพธ์ (Output) :-
1 หากตั้งค่า Timeout สำเร็จ 0 หาก Key ไม่มีอยู่
ตัวอย่าง (Example) :-

เวลาหมดอายุเป็น Unix Timestamp (วินาที) :-
เพื่อตั้งค่าเวลาหมดอายุบน Key ในรูปแบบ Unix Timestamp เราจะใช้คำสั่ง EXPIREAT ใน redis-cli Unix Timestamp เป็นเวลาสัมบูรณ์ในวินาทีหลังจาก 1 มกราคม 1970 Timestamp ที่กำหนดในอดีตจะลบ Key ทันที ไวยากรณ์ของคำสั่ง Redis EXPIREAT มีดังนี้ :-
ไวยากรณ์ (Syntax) :-
redis host:port> EXPIREAT <key name> <unix timestamp in seconds>
ผลลัพธ์ (Output) :-
1 หากตั้งค่า Timeout สำเร็จ 0 หาก Key ไม่มีอยู่
ตัวอย่าง (Example) :-

เวลาหมดอายุเป็น Unix Timestamp (มิลลิวินาที) :-
เพื่อตั้งค่าเวลาหมดอายุบน Key ในรูปแบบ Unix Timestamp แบบมิลลิวินาที เราจะใช้คำสั่ง PEXPIREAT ใน redis-cli คำสั่ง PEXPIREAT คล้าย EXPIREAT มาก แตกต่างตรงที่ PEXPIREAT ใช้ Unix Timestamp เป็นมิลลิวินาที ในขณะที่ EXPIREAT ใช้วินาที
ไวยากรณ์ (Syntax) :-
redis host:port> PEXPIREAT <key name> <unix timestamp in milliseconds>
ผลลัพธ์ (Output) :-
1 หากตั้งค่า Timeout สำเร็จ 0 หาก Key ไม่มีอยู่
ตัวอย่าง (Example) :-

อ้างอิง (References) :-
- EXPIRE Command Docs
- PEXPIRE Command Docs
- EXPIREAT Command Docs
- PEXPIREAT Command Docs
ขอจบบทเรียนเรื่องวิธีตั้งค่าเวลาหมดอายุบน Key ใน Redis Datastore หากชอบ กรุณาแชร์ความคิดเห็นในส่วนความคิดเห็นและแชร์ให้คนอื่นๆ ด้วยนะครับ