# PHP-FPM 深入理解:你的 PHP 请求到底由谁执行
【摘要】 PHP-FPM 深入理解:你的 PHP 请求到底由谁执行 PHP-FPM 是什么?PHP-FPM 是 PHP FastCGI Process Manager。典型结构:Nginx ↓ FastCGIPHP-FPM ↓PHP Worker Worker可以简单理解:Master ├── Worker ├── Worker ├── Worker └── Worker请求到来后由可用 Worke...
PHP-FPM 深入理解:你的 PHP 请求到底由谁执行
PHP-FPM 是什么?
PHP-FPM 是 PHP FastCGI Process Manager。
典型结构:
Nginx
↓ FastCGI
PHP-FPM
↓
PHP Worker
Worker
可以简单理解:
Master
├── Worker
├── Worker
├── Worker
└── Worker
请求到来后由可用 Worker 执行。
pm 模式
常见:
static
dynamic
ondemand
不同模式会影响 Worker 的创建和资源使用。
502
常见原因:
PHP-FPM 没启动
Socket 路径错误
端口错误
权限问题
Worker 全忙
看到 502 时不要第一时间认定 Nginx 坏了。
504
常见原因:
慢 SQL
外部 HTTP 请求
死循环
Worker 被占满
I/O 等待
慢日志
PHP-FPM 的慢日志可以帮助定位执行时间过长的请求。
小结
理解:
Nginx
↓
FastCGI
↓
PHP-FPM
↓
Worker
以后排查 502、504 和 PHP 卡顿会清晰很多。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)