Redis là hệ thống caching lưu trữ dữ liệu trong RAM tương tự như Memcached. Không chỉ hỗ trợ cache dạng keys/values tốt như Memcached mà Redis còn hỗ trợ nhiều cấu trúc dữ liệu khác như hash, list, set, sorted set, string. Redis hỗ trợ đầy đủ các chức năng tương tự Memcached nhưng có thao tác lấy và nạp dữ liệu rất nhanh chóng, hơn hẳn memcached.
Trong bài viết này, mình sẽ hướng dẫn các bạn cài đặt Redis trên CentOS, đồng thời hướng dẫn cấu hình cho Redis hoạt động được trên WordPress.
1. Hướng dẫn cài đặt Redis
Để Redis có thể làm việc được với WordPress, chúng ta sẽ cần cài đặt Redis server cùng với extension PhpRedis để PHP có thể kết nối được với Redis.
– Thêm repo epel, remi
## CentOS 7 ##
yum install epel-release
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
## CentOS 6 ##
yum install epel-release
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
– Cài đặt Redis và PhpRedis extension
## PHP 8.0 ##
yum --enablerepo=remi,remi-php80 install redis php80-php-pecl-redis
## PHP 7.4 ##
yum --enablerepo=remi,remi-php74 install redis php-pecl-redis
## PHP 7.1 ##
yum --enablerepo=remi,remi-php71 install redis php-pecl-redis
## PHP 7.0 ##
yum --enablerepo=remi,remi-php70 install redis php-pecl-redis
## PHP 5.6 ##
yum --enablerepo=remi,remi-php56 install redis php-pecl-redis
## PHP 5.5 ##
yum --enablerepo=remi,remi-php55 install redis php-pecl-redis
service php-fpm restart
– Chạy Redis và tự động khởi động khi boot
chkconfig redis on
service redis start
2. Kiểm tra lại quá trình cài đặt Redis
– Check lại Redis server
redis-cli ping
Nếu kết quả về PONG là ok
– Check lại PhpRedis extension
php -m | grep redis
Kết quả trả về redis là ok
– Redis shell tools
Mặc định Redis cài đặt với một công cụ comment là redis-cli
Sau khi khởi động Redis, các bạn có thể sử dụng một số command như:
FLUSHALL – clear all databases
SELECT # – select database under index #
FLUSHDB – empty currently selected database
KEYS * – list all keys from currently selected
Phần này mình tham khảo ở hocvps : https://hocvps.com/cai-dat-redis-tren-centos/
Redis sử dụng Unix Socket
Mở file cấu hình redis: /etc/redis.conf
Copy đoạn code sau cho vào đầu file cấu hình của redis.
unixsocket /var/run/redis/redis.sock
unixsocketperm 777
maxmemory 128mb
maxmemory-policy allkeys-lru
Phân quyền unix socket file, bạn paste từng dòng bên dưới vào terminal
mkdir -p /run/redis
chmod 700 /var/lib/redis
chown redis:redis /run/redis
chown redis:redis /etc/redis.conf
chmod 600 /etc/redis.conf
Khởi động kích hoạt redis và reboot webserver.
Như vậy là quá trình cài đặt hoàn tất. cài đặt redis object cache cho webserver.
Phần này mình tham khảo ở wptangtoc: https://wptangtoc.com/redis/
Sử dụng Redis trong WordPress
Ở đây mình sử dụng Plugin Redis Object Cache nên mình sẽ hướng dẫn các bạn với plugin này luôn
Tải plugin Redis Object Cache
Cho đoạn code này vào file wp-config.php
define('WP_REDIS_SCHEME', 'unix');
define('WP_REDIS_PATH', '/var/run/redis/redis.sock');
Nếu bạn chạy trên vps or server có nhiều website, thì thêm vào file config ở mỗi site dòng
define( 'WP_REDIS_DATABASE', '0');
Nhớ là mỗi site 1 số khác nhau nhé.
Vậy là xong.
Redis giúp gì cho WordPress?
Redis thường được dùng làm object cache cho WordPress. Thay vì truy vấn database lặp lại cho cùng một dữ liệu, WordPress có thể lưu kết quả vào Redis và đọc lại nhanh hơn. Điều này đặc biệt hữu ích với website nhiều plugin, WooCommerce, membership, LMS hoặc WordPress Multisite.
Redis không thay thế page cache như WP Rocket. Page cache tối ưu HTML trả về cho khách chưa đăng nhập, còn Redis tối ưu truy vấn và object bên trong WordPress. Hai lớp này có thể bổ sung cho nhau nếu cấu hình đúng.
Các bước kiểm tra sau khi cài Redis
Sau khi cài Redis trên CentOS, hãy kiểm tra service có chạy không, port có bind đúng không và firewall có chặn truy cập ngoài không. Với WordPress, nên dùng plugin object cache uy tín và kiểm tra trạng thái kết nối trong admin. Nếu dùng nhiều site trên cùng server, cần prefix cache key để tránh lẫn dữ liệu.
Không nên mở Redis public ra internet. Redis nên chỉ listen local hoặc mạng nội bộ đáng tin cậy. Nếu phải truy cập từ xa, cần firewall, password và tunnel an toàn. Rất nhiều sự cố bảo mật đến từ Redis mở cổng sai cách.
Khi nào Redis không tạo khác biệt?
Nếu website rất nhỏ, ít plugin và đã có page cache tốt, Redis có thể không tạo khác biệt rõ ràng. Nhưng với site có truy vấn phức tạp, nhiều người đăng nhập hoặc nhiều site con, Redis giúp giảm tải database đáng kể. Hãy đo trước và sau bằng query monitor, thời gian phản hồi server và mức sử dụng database.
Kinh nghiệm của Đinh WP là cài Redis khi website đã có nhu cầu thật, không cài chỉ vì nghe tối ưu. Cấu hình đúng sẽ giúp site nhanh hơn; cấu hình sai có thể gây lỗi cache khó debug.
Khi nào nên dùng Redis cho WordPress?
Redis hữu ích khi website có nhiều truy vấn lặp lại, WooCommerce, membership, LMS hoặc dashboard admin nặng. Với WordPress, Redis thường được dùng làm object cache để giảm tải database. Tuy nhiên Redis không phải thuốc chữa mọi lỗi tốc độ. Nếu theme/plugin quá nặng, ảnh chưa tối ưu hoặc hosting yếu, Redis chỉ cải thiện một phần.
Trước khi bật Redis, hãy kiểm tra phiên bản PHP, extension Redis, service Redis, cấu hình bảo mật và plugin object cache trong WordPress. Sau khi bật, cần kiểm tra cache hit, tốc độ truy vấn và lỗi phát sinh trong admin. Nếu website có dữ liệu động như giỏ hàng, đăng nhập, giá theo user, cần test kỹ để tránh cache sai.
FAQ nhanh về Redis trên CentOS
Cài Redis xong WordPress tự nhanh không? Không. Cần plugin object cache hoặc cấu hình ứng dụng dùng Redis.
Có nên mở Redis public không? Không. Redis nên bind local/private network và có kiểm soát truy cập.
Khi nào cần flush cache? Khi cập nhật lớn, đổi cấu hình cache hoặc gặp dữ liệu hiển thị sai.
Checklist vận hành Redis
Kiểm tra service tự khởi động, memory limit, persistence nếu cần, log lỗi và cơ chế giám sát. Với server nhỏ, đừng cấp Redis quá nhiều memory làm thiếu RAM cho PHP/MySQL. Redis tốt nhất khi nằm trong một chiến lược tối ưu tổng thể: cache page, object cache, tối ưu ảnh, giảm plugin và database sạch.
Nếu đang tối ưu server, bạn có thể đọc thêm module Intl và ImageMagick. Cần Đinh WP audit tốc độ WordPress và Redis, hãy liên hệ tại trang liên hệ.
Case triển khai thực tế với Redis trên CentOS
Một cách làm chắc tay là coi Redis trên CentOS như một hạng mục trong quy trình vận hành, không phải một mẹo rời rạc. Trước khi áp dụng, hãy ghi rõ mục tiêu, trạng thái hiện tại, rủi ro nếu làm sai và cách kiểm tra sau khi hoàn tất. Cách này đặc biệt hữu ích với website WordPress đang chạy thật, vì mỗi thay đổi nhỏ đều có thể ảnh hưởng đến SEO, tốc độ, bảo mật hoặc khả năng khách gửi liên hệ.
Với nhóm Server/Performance, mình thường tạo một checklist gồm bốn phần. Phần một là điều kiện trước khi làm: backup, quyền truy cập, môi trường test và thông tin cấu hình. Phần hai là thao tác chính: từng bước cần làm, lệnh hoặc màn hình liên quan, người phụ trách và thời điểm thực hiện. Phần ba là kiểm tra sau khi làm: mở trang thật, kiểm tra log, kiểm tra form, kiểm tra SEO hoặc kiểm tra tốc độ. Phần bốn là ghi chú bàn giao để lần sau không phải dò lại từ đầu.
Ví dụ, nếu nội dung liên quan cài Redis CentOS, người quản trị nên ghi lại cả lý do áp dụng. Làm để sửa lỗi, tăng tốc, tăng bảo mật, tăng CTR hay phục vụ automation? Khi lý do rõ, việc đánh giá kết quả cũng rõ hơn. Nếu sau khi làm mà không đo được thay đổi gì, có thể hạng mục đó chưa phải ưu tiên cao hoặc cần cách đo khác.
Mẫu checklist có thể dùng lại
Trước khi làm: kiểm tra backup, quyền admin, quyền hosting, phiên bản WordPress, phiên bản PHP, plugin liên quan và trạng thái cache. Nếu là việc kỹ thuật server, cần có đường vào console hoặc tài khoản dự phòng để tránh tự khóa mình khỏi hệ thống.
Trong khi làm: ghi lại từng thay đổi chính, không sửa nhiều hạng mục không liên quan cùng lúc. Nếu cần thử nhiều phương án, hãy chia từng bước nhỏ để biết chính xác bước nào tạo ra kết quả. Đây là thói quen giúp xử lý lỗi nhanh hơn nhiều so với việc chỉnh hàng loạt rồi mới kiểm tra.
Sau khi làm: kiểm tra frontend, wp-admin, sitemap, canonical, form liên hệ, tốc độ tải và log lỗi. Với bài viết SEO, nên xem lại title, meta description, heading, internal link, CTA và các câu hỏi người đọc có thể còn vướng. Nếu bài đã có traffic hoặc comment, hãy ưu tiên cập nhật những phần người đọc thật sự quan tâm.
FAQ bổ sung cho người triển khai
Có nên làm ngay trên site thật không? Nếu thay đổi nhỏ và có backup, có thể làm trực tiếp ngoài giờ cao điểm. Nếu thay đổi ảnh hưởng cấu hình, bảo mật, thanh toán hoặc automation, nên test trước trên staging hoặc bản sao.
Làm sao biết tối ưu đã có tác dụng? Hãy so sánh trước và sau bằng số liệu cụ thể: lỗi giảm, tốc độ tốt hơn, CTR tăng, form gửi ổn định hơn, hoặc thời gian xử lý vận hành ngắn hơn. Cảm giác nhanh hơn là chưa đủ nếu cần tối ưu nghiêm túc.
Khi nào nên nhờ hỗ trợ? Khi hạng mục liên quan dữ liệu khách hàng, bảo mật, server production hoặc nhiều plugin phụ thuộc nhau. Lúc đó một checklist có kinh nghiệm sẽ rẻ hơn nhiều so với sửa lỗi sau sự cố.
Nếu muốn Đinh WP kiểm tra Redis trên CentOS theo quy trình thực chiến, có thể gửi tình trạng hiện tại, mục tiêu cần đạt và quyền truy cập phù hợp qua trang liên hệ. Mình sẽ ưu tiên cách làm nhẹ, dễ rollback và phù hợp với năng lực vận hành của website.
Ghi chú cuối khi tối ưu Redis trên CentOS
Đừng tối ưu chỉ để đạt một chỉ số trong công cụ phân tích. Mục tiêu tốt hơn là biến bài viết thành tài liệu có thể dùng lại: người đọc hiểu khi nào cần làm, làm theo thứ tự nào, kiểm tra kết quả ra sao và khi gặp lỗi thì quay lại bước nào. Với cài Redis CentOS, phần giá trị nhất thường nằm ở kinh nghiệm xử lý tình huống thật, không chỉ ở định nghĩa.
Sau khi cập nhật, hãy đặt lịch xem lại bài sau vài tuần. Nếu Search Console có impression nhưng CTR thấp, cần xem lại title và meta description. Nếu có traffic nhưng ít liên hệ, cần xem lại CTA và đường dẫn sang trang dịch vụ. Nếu người đọc vẫn hỏi lại cùng một vấn đề, hãy bổ sung FAQ rõ hơn. Một bài tốt là bài tiếp tục được cải thiện theo dữ liệu thật.
