Home >Backend Development >PHP Problem >How to check php process

How to check php process

王林
王林Original
2019-09-26 17:39:575107browse

How to check php process

PHP-FPM是大多数 PHP 项目中都会用到的,也可能会有一些监控的操作需要获取FPM的进程相关信息。

获取 FPM 进程数

ps -ef|grep php-fpm|grep -v grep|wc -l

获取 FPM 进程 ID

ps -ef|grep php-fpm|grep -v grep|awk '{print $2}'

PHP-FPM 启动进程的方式

PHP-FPM 是多进程模式,master进程管理worker进程,进程的数量都可以通过php-fpm.conf做具体配置。而 PHP-FPM 的进程,基本上可以分为动态模式及静态模式,而大多数公司或者个人都使用的是动态模式。

静态(static)

直接开启指定数量的 PHP-FPM 进程,不再增加或者减少;启动固定数量的进程,占用内存高,但在用户请求波动大的时候,对 Linux 操作系统进程的处理上耗费的系统资源低

动态(dynamic)

开始的时候开启一定数量的 PHP-FPM 进程,当请求量变大的时候,动态的增加 PHP-FPM 进程数到上限,当空闲的时候自动释放空闲的进程数到一个下限。

动态模式,会根据max、min、idle children配置,动态的调整进程数量。在用户请求较为波动,或者瞬间请求增高的时候,进行大量进程的创建、销毁等操作,而造成 Linux 负载波动升高。

简单来说,请求量少,PHP-FPM 进程数少,请求量大,进程数多。优势就是,当请求量小的时候,进程数少,内存占用也小。

按需模式(ondemand)

这种模式下,PHP-FPM 的master不会fork任何的子进程,纯粹就是按需启动子进程,因为这种模式,基本上是无法适应有一定量级的线上业务的。

推荐教程:PHP视频教程

The above is the detailed content of How to check php process. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn