เปิดใช้ Redis ใน Laravel
ใน Laravel, Redis เป็นหนึ่งในตัวเลือกการจัดเก็บแคช (cache) และเซสชัน (session) ที่ได้รับความนิยมเนื่องจากมีข้อดีมากมาย เช่น ความเร็วสูง,การจัดเก็บแคชแบบยืดหยุ่น,การจัดเก็บเซสชันที่ปลอดภัย,การใช้งานอย่างสมบูรณ์แบบใน Laravel,การเปิดเผยข้อมูลที่มีประโยชน์ ดังนั้น Redis เป็นเครื่องมือที่มีประโยชน์ในการพัฒนาโปรเจกต์ Laravel โดยเฉพาะในกรณีที่ความเร็วและประสิทธิภาพในการจัดเก็บแคชและเซสชันเป็นสิ่งที่สำคัญสำหรับโปรเจกต์ มาดูวิธีเปิดใช้กัน ว่าเปิดใช้งานได้อย่างไรสำหรับ Laravel
2024-03-21 03:47:40 - @ratanon
เช็คว่าคุณได้ติดตั้ง Redis และ PHP Redis Extension ให้เรียบร้อยแล้วหรือยัง โดยใช้คำสั่ง
php -m | grep redis
ถ้าไม่มีการแสดงผลอะไร แสดงว่ายังไม่ได้ติดตั้ง Redis Extension ให้ดาวน์โหลดและติดตั้ง Redis Extension สำหรับ PHP
สำหรับ Linux ใช้คำสั่งติดตั้ง
sudo apt-get install php-redis
สำหรับ macOS ใช้ Homebrew ด้วยคำสั่ง
brew install php-redis
- เปิดไฟล์ .env ในโปรเจกต์ Laravel
ตรวจสอบค่าของตัวแปร CACHE_DRIVER และ SESSION_DRIVER ในไฟล์ .env และตั้งค่าให้เป็น redis หากยังไม่ได้ตั้งค่า
BROADCAST_DRIVER=log CACHE_DRIVER=redis QUEUE_CONNECTION=sync SESSION_DRIVER=redis SESSION_LIFETIME=120
- เพิ่มหรือแก้ไขค่าตัวแปร REDIS_HOST, REDIS_PASSWORD, REDIS_PORT ในไฟล์ .env ให้สอดคล้องกับการตั้งค่า Redis
REDIS_HOST=127.0.0.1 REDIS_PASSWORD=null REDIS_PORT=6379
- บันทึกและปิดไฟล์ .env
- เปิดไฟล์ config/cache.php
'default' => env('CACHE_DRIVER', 'redis'),
- ตรวจสอบค่า stores ในไฟล์ cache.php และตรวจสอบว่า redis store ถูกกำหนดให้ใช้งานหรือไม่
- เปิดไฟล์ config/session.php
- ตรวจสอบค่า driver ในไฟล์ session.php และตั้งค่าให้เป็น redis
'driver' => env('SESSION_DRIVER', 'redis'),
- บันทึกและปิดไฟล์ session.php
- ทดสอบโปรเจกต์ Laravel เพื่อให้แน่ใจว่า Redis ถูกกำหนดให้ใช้งานได้ถูกต้องแล้ว
ลองมอนิเตอร์ดูว่าขึ้นไหม ถ้าขึ้นเป็นอันจบ เดี๋ยวครั้งหน้ามาอธิบาย แบบลูกผสม Redis + Cache + Edge Cache TTL on cloudflare ให้กับ Laravel
Config Redis เพิ่มเติม
อ้างอิงจาก https://redis.io/docs/management/config-file/
สำหรับ cyberpanel แก้จาก path นี้ได้เลย
/etc/redis/redis.conf
maxmemory 100mb maxmemory-policy allkeys-lru maxmemory-samples 10 appendonly yes
and comment out
#save 900 1 #save 300 10 #save 60 10000