Bài này mình sẽ đề cập đến những vấn đề sau :
- Memcached là gì, tại sao cần cài memcached
- Hướng dẫn cài memcached trên vps centos 7 và kiểm tra
- Cài đặt Memcached và Memcached PHP Module trên CentOS
- Xóa memcached
Memcached là gì ,tại sao cần cài memcached
Memcached là hệ thống cache dữ liệu giống như redis,Disk cache .Memcached cho phép chúng ta lưu tạm dữ liệu vào ram mà không cần truy vấn đến mysql khi truy cập lại dữ liệu đó
Sơ đồ hoạt động như sau
Nguyên lý hoạt động :
- Yêu cầu đầu tiên: truy cập vào CSDL thì server sẽ trả lại kết quả cho
- User như thông thường hiện nay
- Và kèm thêm một việc là trả dữ liệu lưu theo mapping key,value vào memcached.
- Các yêu cầu lần sau:
- Truy cập nó sẽ không yêu cầu server làm việc nữa thay vào đó nó sẻ đưa từ memcached trả lại cho user
- Việc đó sẽ giúp giảm thiểu 1 lượng lớn công việc mà server cần làm việc. Giúp website của bạn chạy nhanh do giảm thiểu thời gian truy cập vào web
Như vậy memcached rất tốn ram nên các bạn ram ít tránh sử dụng nó nhé như mình dùng server ram 2,swap 3g nên dùng memcached rất mượt
Hướng dẫn cài memcached trên vps centos 7 và kiểm tra
Cài đặt trên centos 7 với dòng lệnh sau
yum install memcached
Đợi server download về thôi .Dùng lệnh
vi /etc/sysconfig/memcached
Để cấu hình memcached thôi
PORT="11211" USER="memcached" MAXCONN="1024" CACHESIZE="64" OPTIONS=""
Chủ yếu chúng ta chỉnh ở phần cachesize .Mặc định là 64 MB mình thì thường cho lên 128 Mb
Tiếp theo chúng ta khởi động lại memcache
chkconfig memcached on service memcached start
Kiểm tra memcache có hoạt động hay không bằng 2 cách
memcached-tool 127.0.0.1:11211 stats
Hoặc
telnet 127.0.0.1 11211
Cài đặt Memcache và gói Memcached PHP trên CentOS 7
Kiểm tra php trên vps với lệnh php -v
[root@aaa ~]# php -v PHP 5.6.28 (cli) (built: Nov 9 2016 07:15:39) Copyright (c) 1997-2016 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies [root@aaa ~]#
Thông số vps của mình là bản 5.6 nên mình dùng lệnh :yum –enablerepo=remi,remi-php56 install php-pecl-memcached php-pecl-memcache
Các bạn dựa vào bảng dưới đây để chọn lệnh phù hợp nhé
Bản php | Lệnh |
PHP 5.5 | yum –enablerepo=remi,remi-php55 install php-pecl-memcached php-pecl-memcache |
PHP 5.6 | yum –enablerepo=remi,remi-php56 install php-pecl-memcached php-pecl-memcache |
PHP 7.0 | yum –enablerepo=remi,remi-php70 install php-pecl-memcached php-pecl-memcache |
Tiếp theo restart nginx
service nginx restart
Lưu ý có 1 số vps mặc định tắt cổng 11211 trong iptables .Bạn cần add thêm lệnh sau
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 11211 -j ACCEPT service iptables restart
Để mở cổng cho memcached nhé
Xóa Memcached
Đôi khi vì lý do nào đó bạn cần xóa memcached trong vps thì hãy làm theo các lệnh sau :
yum remove memcached php-pecl-memcached php-pecl-memcache service php-fpm restart service nginx restart
Chúc các bạn cài đặt thành công nhé .Hãy chia sẻ bài viết này cho bạn bè quan tâm .Có gì thắc mắc hãy để lại comment phía dưới nhé