ubuntu

Ubuntu如何提升PHP运行速度

小樊
47
2025-10-24 23:42:19
栏目: 编程语言

1. 安装并配置OPcache扩展
OPcache是PHP内置的字节码缓存扩展,可显著减少脚本编译次数,提升执行效率。安装命令:sudo apt install php-opcache(Ubuntu 22.04+默认包含)。编辑PHP配置文件(路径取决于PHP版本和Web服务器,如/etc/php/8.2/fpm/php.ini),添加或修改以下参数:

zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=128  # 缓存内存大小(MB),根据服务器内存调整
opcache.interned_strings_buffer=8  # 内部字符串缓冲区大小
opcache.max_accelerated_files=10000  # 最大加速文件数(需覆盖项目文件数量)
opcache.revalidate_freq=60  # 文件修改检查频率(秒)
opcache.fast_shutdown=1  # 快速关闭功能

重启PHP-FPM或Apache使配置生效:sudo systemctl restart php8.2-fpm

2. 使用最新稳定版PHP
新版本PHP通常包含性能优化和bug修复,建议通过Ondrej Sur的PPA安装最新版:

sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php8.2 php8.2-cli php8.2-fpm php8.2-mysql  # 根据需求安装扩展

安装后,禁用旧版本PHP并启用新版本:sudo a2dismod php7.4 && sudo a2enmod php8.2(Apache),或修改Nginx配置中的fastcgi_pass指向新版本PHP-FPM socket。

3. 优化PHP-FPM进程配置
PHP-FPM是PHP的FastCGI进程管理器,合理配置进程数能平衡性能与资源占用。编辑/etc/php/8.2/fpm/pool.d/www.conf,调整以下参数:

重启PHP-FPM使配置生效:sudo systemctl restart php8.2-fpm

4. 启用数据库缓存(Redis/Memcached)
对于数据库密集型应用,使用Redis或Memcached缓存频繁访问的数据,减少数据库查询次数。安装Redis:sudo apt install redis-server,然后在PHP代码中使用phpredis扩展(sudo apt install php-redis)或Predis库连接Redis。配置示例(php.ini):

extension=redis.so

对于Memcached:sudo apt install memcached php-memcached,同样需在代码中集成。

5. 优化Web服务器配置

6. 代码级优化

7. 监控与调优
使用工具监控PHP性能,定位瓶颈:

0
看了该问题的人还看了