MỤC LỤC BÀI VIẾT
Thay đổi cấu hình OPcache directadmin? Vậy OPcache là gì ?
OPcache sẽ lưu lại các nội dung “precompile code php lên bộ nhớ đệm(shared memory)”. Nhờ vậy giúp giảm đọc mã nguồn php từ ổ cứng và compile lại mỗi lần có truy cập từ website.
Lợi ích OPcache mang lại:
- Giúp giảm mức sử dụng CPU của máy chủ và VPS.
- Giảm TTFB(Time to fist byte) cho tất cả các trang web trên máy chủ.
- Tăng tốc độ tải website.
Tác hại OPcache mang lại:
- Gần như không có tác hại nào cả, ngoại trừ sử dụng thêm một ít ram.
Nếu bạn chưa cài đặt Opcache trước đó có thể tham khảo hướng dẫn sau để cài đặt:
Bước 1: Tìm đến file cấu hình OPcache trên server Directadmin
File cấu hình của OPcache có tên là opcache.ini , mọi cấu hình sẽ được đặt trong này. Nếu bạn muốn tuỳ biến cấu hình nhiều hơn nữa hãy truy cập trang chính chủ của php.net để xem mô tả cấu hình:
Đường dẫn mặc định tệp cấu hình nằm tại:
1 | /usr/local/directadmin/custombuild/configure/opcache/opcache.ini |
Bước 2: Thay đổi cấu hình OPcache directadmin
Để thay đổi cấu hình OPcache directadmin ta sử dụng lệnh sau:
1 | vi /usr/local/directadmin/custombuild/configure/opcache/opcache.ini |
Dưới dây là cấu hình của mình sau khi sửa:
1 2 3 4 5 6 7 8 9 | opcache.memory_consumption=10240 opcache.interned_strings_buffer=320 opcache.max_accelerated_files=1000000 opcache.revalidate_freq=0 opcache.enable_cli=1 opcache.validate_permission=1 opcache.use_cwd=1 opcache.revalidate_path=1 opcache.enable_file_override=1 |
Giải thích cấu hình:
- opcache.memory_consumption : Chính là lượng ram bạn sẽ cấp phát cho Opcache, đơn vị tính là MB.(Ở đây mình để là 10240MB ~10GB cho server hosting 64GB ram)
- opcache.interned_strings_buffer : Dung lượng bộ nhớ được sử dụng để lưu trữ các chuỗi nội bộ, tính bằng MB. Lệnh cấu hình này sẽ bị bỏ qua trong phiên bản PHP thấp hơn 5.3.0
- opcache.max_accelerated_files : Dùng để kiểm soát có bao nhiêu tệp PHP nhiều nhất có thể giữ trong bộ nhớ cùng một lúc. Tùy vào hệ thống mà bạn đặt con số khác nhau. Bạn có thể sử dụng lệnh sau để kiểm tra có bao nhiêu tệp PHP đang được mở “find . -type f -print | grep php | wc -l” . Các giá trị phù hợp với tùy chọn này là các số nguyên tố {223, 463, 983, 1979, 3907, 7963, 16229, 32531, 65407, 130987..vv..}. Tối đa 100000 đối với PHP < 5.5.6, và tối đa 1000000 trong các phiên bản mới hơn.
- opcache.enable_cli : Cho phép bộ đệm opcode cho phiên bản CLI của PHP.
Nếu VPS/Server của bạn đã cài đặt OPcache trước đó thì bỏ qua bước 3 mà tiếp tục với bước 4. Còn làm tiếp bước 3 cũng không vấn đề gì.
Bước 3: Build lại Opcache để nhận cấu hình mới (Rebuild Opcache)
Để build Opcache directadmin bạn chỉ cần thao tác với một vài lệnh bên dưới là thành công. Nhưng là với CustomBuild 2.0 mới được nhé.
Di chuyển đến thư mục build của Directadmin và thay đổi giá trị Opcache thành Yes
1 2 | cd /usr/local/directadmin/custombuild ./build set opcache yes |
Bạn sẽ nhận được thông tin như sau (có thể là yes to yes nếu bạn đã có opcache rồi).
Thông báo trả về với VPS/Server chưa cài OPcache:
1 | Changed opcache option from no to yes |
Bước 4: Tiếp tục compile Opcache module với CustomBuild 2.0
Sử dụng lệnh sau để compile Opcache:
1 | ./build opcache |
Bước 5: Kiểm tra thông số OPcache sau khi cấu hình:
Chúng ta có hai cách để xem thông số OPcache vừa được thay đổi.
Cách 1: Xem trực tiếp trên Server/VPS
Để xem trực tiếp trên Server/VPS ta sử dụng lệnh sau:
1 | php -i | grep "opcache" |
Dưới đây là kết quả trả về :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | [root@chelairoiahihi ~]# php -i | grep "opcache" opcache.blacklist_filename => no value => no value opcache.consistency_checks => 0 => 0 opcache.dups_fix => Off => Off opcache.enable => Off => Off opcache.enable_cli => On => On opcache.enable_file_override => On => On opcache.error_log => no value => no value opcache.fast_shutdown => 0 => 0 opcache.file_update_protection => 2 => 2 opcache.force_restart_timeout => 180 => 180 opcache.inherited_hack => On => On opcache.interned_strings_buffer => 320 => 320 opcache.load_comments => 1 => 1 opcache.log_verbosity_level => 1 => 1 opcache.max_accelerated_files => 1000000 => 1000000 opcache.max_file_size => 0 => 0 opcache.max_wasted_percentage => 5 => 5 opcache.memory_consumption => 10240 => 10240 opcache.optimization_level => 0x7FFFBFFF => 0x7FFFBFFF opcache.preferred_memory_model => no value => no value opcache.protect_memory => 0 => 0 opcache.restrict_api => no value => no value opcache.revalidate_freq => 0 => 0 opcache.revalidate_path => On => On opcache.save_comments => 1 => 1 opcache.use_cwd => On => On opcache.validate_permission => On => On opcache.validate_root => Off => Off opcache.validate_timestamps => On => On [root@chelairoiahihi ~]# |
Cách 1: Xem trực thông tin với hàm phpinfo:
Để xem với cách này bạn cần tạo một file PHP trên một website nào đó.
Di chuyển đến một user ở một website bất kỳ trên Server/VPS. Ở phần username và yourdomain bạn thay đổi cho phù hợp với trường hợp của bạn:
1 2 | cd /home/username/yourdomain/public_html/ vi phpinfo.php |
Sau đó chèn đoạn mã php sau vào:
<?php phpinfo();?>
Lưu lại file và truy cập với đường dẫn tương ứng: http://yourdomain/phpinfo.php
Trên trình duyệt bạn dùng công cụ tìm ký tự “Ctrl + F” và tìm với “Zend OPcache” ra hình như trên là được.
Như vậy là bạn đã nắm được cách thay đổi cấu hình OPcache directadmin.
Chúc các bạn thực hiện thành công.