温馨提示×

ubuntu php-fpm怎样提速

小樊
35
2026-09-16 14:10:10
栏目: 编程语言

在 Ubuntu 上优化 php-fpm 速度,通常从 配置调优、系统资源、OPcache、PHP 版本、NGINX/Apache 配合 几个方面入手。下面按“立竿见影 → 进阶优化”给你一套实用方案。


一、最立竿见影:开启 OPcache(必做)

OPcache 能把 PHP 脚本编译结果缓存,避免每次请求都重新编译。

1. 安装

sudo apt install php-opcache

2. 配置(示例,Ubuntu 常见路径)

sudo nano /etc/php/8.2/fpm/conf.d/10-opcache.ini

推荐配置:

opcache.enable=1
opcache.memory_consumption=256
opcache.interned_strings_buffer=16
opcache.max_accelerated_files=10000
opcache.revalidate_freq=60
opcache.validate_timestamps=0   ; 生产环境建议关
opcache.jit_buffer_size=128M
opcache.jit=1255

⚠️ 改完必须重启

sudo systemctl restart php8.2-fpm

二、php-fpm 进程池调优(关键)

配置文件:

/etc/php/8.2/fpm/pool.d/www.conf

1. 使用 staticdynamic

小内存服务器(1–2G)

pm = dynamic
pm.max_children = 30
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 20

高并发服务器(4G+)

pm = static
pm.max_children = 100

⚠️ max_children 估算:

max_children ≈ 可用内存 / 单个 php-fpm 进程内存

查看进程内存:

ps aux | grep php-fpm

三、关闭不必要的 PHP 模块

减少加载时间:

php -m

禁用不用的(如 xdebug生产环境千万别开):

sudo phpdismod xdebug

四、PHP 版本升级(提速明显)

PHP 8.x 比 7.x 快很多:

sudo apt install php8.2-fpm

切换:

sudo update-alternatives --set php /usr/bin/php8.2

五、NGINX / PHP-FPM 配合优化

1. 使用 Unix Socket(比 TCP 快)

fastcgi_pass unix:/run/php/php8.2-fpm.sock;

2. 开启 fastcgi 缓存(静态内容)

fastcgi_cache_path /var/cache/nginx levels=1:2 keys_zone=PHP:10m;

六、系统层面提速

1. 文件描述符限制

ulimit -n 65535

2. 调整 swap(低内存机器)

sudo fallocate -l 2G /swapfile

七、排查慢的原因(很重要)

慢日志

slowlog = /var/log/php-fpm-slow.log
request_slowlog_timeout = 2s

查看瓶颈

top
htop
iotop

八、推荐“生产环境标准组合”

✅ PHP 8.2+
✅ OPcache + JIT
✅ php-fpm static
✅ Unix socket
✅ NGINX fastcgi cache
✅ 无 xdebug


如果你愿意,可以告诉我:

  • Ubuntu 版本
  • PHP 版本
  • 内存大小
  • 是 WordPress / Laravel / 自建系统

我可以直接给你 一份可复制的配置文件

0