Ưu điểm của PHP-FPM

PHP-FPM là gì? Cấu hình PHP-FPM và NGINX năm 2020

PHP-FPM là gì? Cấu hình PHP-FPM và NGINX năm 2020 – Bài viết này, chúng ta hãy cùng tìm hiểu về PHP-FPM là gì cũng như điểm mạnh/yếu của PHP-FPM là gì và cách cấu hình PHP-FPM, NGINX để sử dụng nó hiệu quả nhất. Hãy bắt đầu nào !!

Xem thêm: 10 PHP Framework tốt nhất để lập trình web 2020

PHP-FPM là gì? Cấu hình PHP-FPM và NGINX năm 2020

PHP-FPM là gì?

PHP là ngôn ngữ lập trình mã nguồn mở, được dùng để viết cho máy chủ hay các mục đích tổng quát khác. Ngôn ngữ lập trình này có dạng giống với Java hay C. Thời gian ngắn để viết các cú pháp lập trình là yếu tố khiến PHP được ưu ái hơn so sánh với các ngôn ngữ lập trình khác.

PHP-FPM là một chương trình có khả năng phiên dịch PHP khi chạy Website cho server. PHP-FPM được phát triển dựa trên việc mở rộng CGI.

PHP-FPM có thể khớp công đoạn xử lý nội dung của trang Web server và hỗ trợ giải quyết thông tin một cách nhanh chóng từ các Website không giống nhau, trong cùng một khoảng thời gian. PHP-FPM được đông đảo người dùng chọn lựa bởi tốc độ xử lý PHP script nhanh, tăng lượng truy cập và tính năng tối ưu hóa cho những Website có kích thước lớn.

Ưu nhược điểm của PHP-FPM

Ưu điểm của PHP-FPM
Tính bảo mật, độ ổn định và hiệu suất mà PHP-FPM cung cấp cao hơn nhiều so sánh với CGI

Thế mạnh của PHP-FPM là gì?

– Tính bảo mật, độ ổn định và hiệu năng mà PHP-FPM cung cấp cao hơn nhiều so với CGI
– Được vận dụng rộng rãi nhất là lúc chạy chương trình khi nó tốn ít tài nguyên CPU
– Giúp load trang nhanh hơn rất nhiều và việc truy nhập Web của người dùng trở nên dễ dàngnhanh chóng hơn. Theo đấylưu lượng truy cập Trang Web cũng sẽ tăng lên đáng kể

Điểm yếu của PHP-FPM là gì?

– Chiếm dụng RAM rất nhiều

Thiết lập NGINX và PHP-FPM

Cần tuân thủ các bước khi cài đặt NGINX và PHP-FPM để đạt được hiệu quả lớn nhất
Cần tuân thủ các bước khi cài đặt NGINX và PHP-FPM để đạt được đạt kết quả tốt lớn nhất

NGINX là phần mềm Web server mã nguồn mở, sử dụng cấu trúc hướng sự kiện (event-driven) không đồng bộ (asynchronous)Mục tiêu ban đầu để phục vụ HTTP cache tuy nhiên sau được áp dụng vào reverse proxy, HTTP load balancer và các giao thức truyền mail như IMAP4, POP3, và SMPT.

Thiết lập NGINX

Bước 1: Để cài đặt cấu trúc NGINX quý khách hàng mở tệp cấu trúc của NGINX tại mục /etc/nginx/nginx.conf

Bước 2: Xem chỉ số CPU Core theo công thức:

cat /proc/cpuinfo |grep processor

processor :0processor :1processor :2processor :3

Bước 3Vận dụng lệnhmax_clients = worker_processes * worker_connections để thay đổi thông số worker_processes tương ứng với số lượng nhân CPU trong máy chủ bạn cấu trúc.

Bước 4: Giới hạn kích thước từng phần của các http request bằng công thức:

client_max_body_size 20m;client_body_buffer_size 128k;

Bước 5: Điều chỉnh lại các file tĩnh qua công thức:

location ~*.(jpg|jpeg|gif|png|css|js|ico|xml)$ access_log    off;log_not_found   off;expires 360d;

Bước 6Thiết lập chuyển sang dùng unix socket cho việc giới thiệu thông tin:

location ~*.php$ fastcgi_index  index.php;#Chinh tai dayfastcgi_pass  unix:/var/run/php-fpm/php-fpm.sock;include     fastcgi_params;fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;fastcgi_param  SCRIPT_NAME    $fastcgi_script_name;

Bước 7: Cài đặt bỏ cho phép truy cập các tệp hoặc thư mục ẩn.

location ~/.access_log off;log_not_found off;deny all;

Thiết lập PHP-FPM

Bước 1: Để thiết lập cấu tạo PHP-FPM, quý khách hàng mở tệp cấu trúc của PHP-FPM tại mục /etc/php-fpm.d.

Bước 2xoay chỉnh đường dẫn file sock theo công thức:

listen =/var/run/php-fpm/php-fpm.sock

user = sitegroup= site

request_slowlog_timeout =5sslowlog =/var/log/php-fpm/slowlog-site.log

listen.allowed_clients =127.0.0.1pm =dynamicpm.max_children =5pm.start_servers =3pm.min_spare_servers =2pm.max_spare_servers =4pm.max_requests =200listen.backlog =-1pm.status_path =/status

request_terminate_timeout =120srlimit_files =131072rlimit_core = unlimited

catch_workers_output = yes

env[HOSTNAME]= $HOSTNAME

env[TMP]=/tmp

env[TMPDIR]=/tmp

env[TEMP]=/tmp

Bước 3Xác định các thông số: pm.max_children ,pm.start_servers , pm.min_spare_servers và pm.max_spare_servers theo các công thức như sau:

  • pm.max_children = Số process con (child processes) tối đa có thể tại (bằng với tổng số request có thể phục vụ).
  • pm.start_servers = Tổng số child processes được tạo khi khởi động php-fpm (được tính bằng công thức`min_spare_servers + (max_spare_servers – min_spare_servers) / 2` )
  • pm.min_spare_servers = Tổng số child process nhàn rỗi tối thiểu được duy trì.
  • pm.max_spare_servers = Tổng số child process nhàn rỗi tối đa được duy trì.

Bảo mật PHP-FPM/Nginx trong môi trường Shared Hosting

Bảo mật PHP-FPM/Nginx trong môi trường Shared Hosting giúp quá trình sử dụng được dễ dàng hơn
Cách bảo mật PHP-FPM/Nginx trong môi trường Shared Hosting giúp quá trình vận dụng được dễ dàng hơn

Vấn đề bảo mật PHP-FPM/Nginx trong môi trường Shared Hosting là một điều cực kì quan trọng. Khi truy cập một Web PHP, quý khách hàng cần thiết lập một Pool cho từng Web để các script PHP thực thi như một hoặc một nhóm người sử dụng được định nghĩa trong đó.

Điều này không chỉ có vai trò quan trọng trong lúc tuyệt mật, mà còn bảo đảm quá trình dùng được đơn giản, thuận lợi hơn. Vì khi tạo lập một Pool, khách hàng có thể dùng toàn bộ khả năng trên suPHP cho PHP-FPM/Nginx. Bạn không cần cài đặt bất kỳ FTP nào, cũng như những sự cố bất ngờ có thể xảy ra do vận dụng các script PHP không thuộc quyền sở hữu của một hoặc một nhóm khách hàng riêng biệt.

Thực tế vào thời điểm hiện tại, mô hình Shared Hosting chỉ thích hợp với các landing page. Vì thế nếu bạn đang sử dụng Shared Hosting cho Website của mình, chúng tôi khuyên bạn nên chuyển qua mua Cloud Hosting. Bởi Cloud Hosting bảo mật hơn Shared Hosting và khả năng mở rộng, up-time cũng tốt hơn nhiều khi so sánh với Shared Hosting.

Kết

Như vậy, bạn đã biết được PHP-FPM là gì, điểm mạnh của PHP-FPM là gì và điểm yếu của PHP-FPM là gì. Ngoài ra, bạn còn biết được cách thiết lập PHP-FPM và Nginx. Cảm ơn các bạn đã theo dõi. Chúc các bạn thành công!!

0
Chia Sẻ
15
Lượt Xem

Bài viết liên quan

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments

Kinh Doanh -
Khởi Nghiệp

Tổng hợp các ý tưởng kinh nghiệm quý giá và các case study trong kinh doanh và khởi nghiệp

Marketing Online

Tổng hợp những bài viết hay, những kiến thức hữu ích và thực tế xoay quanh chủ để Marketing online

Kiến Thức Website

Chia sẻ những kiến thức về quản trị, cách tối ưu, cách tăng chuyển đổi đơn hàng… của một website.

Công Cụ Marketing

Chia sẻ những phần mềm công cụ hữu ích hỗ trợ cho marketer triển khai và áp dụng trong Digital Marketing.

Thương Hiệu

Chia sẻ những kiến thức về việc xây dựng thương hiệu. Review các case study về chủ đề thương hiệu

Tin Tức

Tổng hợp các ý tưởng kinh nghiệm quý giá và các case study trong kinh doanh và khởi nghiệp

COMBO TĂNG TRƯỞNG

Thiết kế website
Tặng 1 phần mềm của ATP Software bất kỳ