You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Termux/Android上Laravel+PHP-MySQL性能极差问题排查求助

针对Galaxy Tab S8 Termux环境下Laravel性能问题的优化方案

核心问题定位

你遇到的性能瓶颈主要来自默认配置的缺失,ARM架构和Galaxy Tab S8的硬件(骁龙8 Gen1+8/12GB RAM完全能支撑开发级Laravel应用)不是核心障碍,Termux的Android环境特性、未优化的PHP/Laravel配置才是关键。

具体优化步骤

1. 用PHP-FPM+Nginx替代默认开发服务器

Laravel自带的php artisan serve是单进程简易服务器,性能极差,Termux环境下劣势被放大,换成FPM+Nginx能大幅提升响应速度:

  • 安装依赖:pkg install nginx php-fpm
  • 配置Nginx反向代理(编辑/data/data/com.termux/files/usr/etc/nginx/nginx.conf):
    server {
        listen 8080;
        root /path/to/your/laravel/public;
        index index.php index.html;
    
        location / {
            try_files $uri $uri/ /index.php?$query_string;
        }
    
        location ~ \.php$ {
            fastcgi_pass unix:/data/data/com.termux/files/var/run/php-fpm.sock;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include fastcgi_params;
        }
    }
    
  • 启动服务:执行nginx和php-fpm,修改配置后用nginx -s reload重启

2. 开启Laravel全量缓存

默认开发环境下Laravel会禁用缓存,每次请求都重新编译文件,这是加载缓慢的核心原因:

  • 配置缓存:php artisan config:cache
  • 路由缓存:php artisan route:cache
  • 视图缓存:php artisan view:cache
  • 类映射优化:composer dump-autoload --optimize

注意:修改配置/路由/视图后需重新执行对应缓存命令,开发阶段可按需清理(如php artisan config:clear)

3. 优化MariaDB配置

Termux默认数据库配置未针对移动设备优化,调整以下参数(编辑/data/data/com.termux/files/usr/etc/my.cnf.d/mariadb-server.cnf):

[mysqld]
# 平衡内存占用与查询效率
key_buffer_size = 64M
innodb_buffer_pool_size = 256M
# 关闭非必要日志减少IO
slow_query_log = 0
general_log = 0
# 降低磁盘IO频率
innodb_flush_log_at_trx_commit = 2

重启服务:mysql.server restart

4. 存储IO优化

Android内部存储在Termux下通过FUSE挂载,IO性能弱于原生Linux,可做如下调整:

  • 将Laravel项目移到Termux私有目录/data/data/com.termux/files/home/,避免使用外部SD卡
  • 修改.env启用文件缓存替代数组缓存:
    CACHE_DRIVER=file
    

关于硬件与架构的疑问

Galaxy Tab S8的硬件完全能满足Laravel开发需求,ARM64架构对PHP 8.x的性能影响极小(PHP官方已针对ARM做过充分优化)。换成Surface Pro虽能提升性能,但不符合你的移动场景需求,完全没必要。

额外建议

  • Composer缓慢可切换国内镜像:composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
  • 开发阶段可关闭调试模式(.env中APP_DEBUG=false),减少调试信息开销

内容的提问来源于stack exchange,提问作者wonz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 08:20:18