debian

如何在Debian上优化ThinkPHP性能

小樊
56
2025-08-18 06:01:26
栏目: 编程语言

在Debian上优化ThinkPHP性能可从以下方面入手:

  1. 启用OPcache
    安装并启用OPcache加速PHP代码执行,编辑/etc/php/8.x/fpm/php.ini(根据PHP版本调整路径),设置:

    opcache.enable=1
    opcache.memory_consumption=128
    opcache.max_accelerated_files=10000
    opcache.validate_timestamps=0  # 生产环境关闭
    

    重启PHP-FPM:sudo systemctl restart php8.x-fpm

  2. 优化数据库

    • 为高频查询字段添加索引,避免全表扫描。
    • 使用预加载(如User::with('profile'))减少N+1查询问题。
    • 定期执行OPTIMIZE TABLE整理表碎片。
  3. 配置缓存策略

    • Redis缓存:安装php-redis扩展,在config/cache.php中设置默认驱动为Redis。
    • 静态资源缓存:通过Nginx配置静态文件缓存,或使用CDN托管JS、CSS、图片。
    • 路由/配置缓存:运行php think optimize:routephp think optimize:autoload生成缓存。
  4. Web服务器优化

    • 使用Nginx替代Apache,配置反向代理和静态文件缓存,启用Gzip压缩:
      location ~ \.php$ {
          include snippets/fastcgi-php.conf;
          fastcgi_pass unix:/var/run/php/php8.x-fpm.sock;
      }
      gzip on;
      gzip_types text/css application/javascript;
      
      重启Nginx:sudo systemctl restart nginx
  5. 代码与依赖优化

    • 合并压缩CSS/JS文件,减少HTTP请求。
    • 使用Composer安装依赖时启用优化:composer install --no-dev --optimize-autoloader
    • 避免在循环中执行数据库查询,改用批量操作。
  6. 系统级优化

    • 监控服务器资源(如CPU、内存、磁盘I/O),使用tophtop定位瓶颈。
    • 定期清理过期缓存和日志文件,释放磁盘空间。

参考来源

0
看了该问题的人还看了