温馨提示×

怎样优化Debian的LAMP性能

小樊
37
2026-08-14 20:14:02
栏目: 智能运维

优化 Debian 上的 LAMP(Linux + Apache + MySQL/MariaDB + PHP)性能,需要从 系统层、Web 服务器、数据库、PHP、缓存、代码与监控 多个方面入手。下面给你一套实用、可落地的优化清单,适合生产环境。


一、系统层优化(基础但关键)

1. 关闭无用服务

systemctl list-unit-files --type=service | grep enabled

关闭不需要的服务,减少资源占用。

2. 调整文件描述符限制

ulimit -n

建议至少 65535:

echo "* soft nofile 65535" >> /etc/security/limits.conf
echo "* hard nofile 65535" >> /etc/security/limits.conf

3. 启用 swap(如果内存 < 4GB)

fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile

二、Apache 优化(重点)

1. 选择合适的 MPM(推荐 event)

apt install apache2-mpm-event

查看当前 MPM:

apache2ctl -M | grep mpm

2. 调整 MPM 配置

编辑:

/etc/apache2/mods-available/mpm_event.conf

示例(2–4 核服务器):

<IfModule mpm_event_module>
    StartServers             2
    MinSpareThreads          25
    MaxSpareThreads          75
    ThreadLimit              64
    ThreadsPerChild          25
    MaxRequestWorkers        150
    MaxConnectionsPerChild   1000
</IfModule>

3. 禁用不必要模块

apache2ctl -M

禁用示例:

a2dismod autoindex status cgid

4. 开启 KeepAlive(适度)

KeepAlive On
KeepAliveTimeout 5
MaxKeepAliveRequests 100

三、PHP 优化(FPM 是重点)

1. 使用 PHP-FPM(不要 mod_php)

apt install php-fpm
a2enmod proxy_fcgi setenvif
a2enconf php8.x-fpm

2. 调整 PHP-FPM 池

编辑:

/etc/php/8.x/fpm/pool.d/www.conf

推荐配置:

pm = dynamic
pm.max_children = 50
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 20
pm.max_requests = 500

3. 关闭不必要的 PHP 函数

disable_functions = exec,passthru,shell_exec,system

4. 开启 OPcache

apt install php-opcache
opcache.enable=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=0

四、MySQL / MariaDB 优化

1. 使用 InnoDB(默认)

SHOW ENGINES;

2. 调整配置文件

编辑:

/etc/mysql/mariadb.conf.d/50-server.cnf

示例(2–4GB 内存):

innodb_buffer_pool_size = 1G
innodb_log_file_size = 256M
innodb_flush_log_at_trx_commit = 2
query_cache_type = 0
max_connections = 100

3. 慢查询日志

slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow.log
long_query_time = 1

五、缓存优化(性能提升最明显)

1. 启用 Apache 缓存

a2enmod cache cache_disk

2. 开启浏览器缓存

<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresByType text/css "access plus 7 days"
    ExpiresByType image/jpeg "access plus 30 days"
    ExpiresByType application/javascript "access plus 7 days"
</IfModule>

3. 使用 Redis(强烈推荐)

apt install redis-server php-redis

用于:

  • 会话缓存
  • 数据库缓存
  • WordPress / Laravel 等

六、网络与安全优化

1. 启用 HTTP/2

a2enmod http2

2. 启用 Gzip / Brotli

a2enmod deflate

3. 使用 HTTPS(TLS 1.3)

apt install certbot python3-certbot-apache
certbot --apache

七、代码与应用层优化

  • 减少数据库查询
  • 使用分页
  • 减少第三方插件
  • 静态资源走 CDN
  • 图片压缩(WebP)

八、监控与压测

1. 常用监控工具

htop
iotop
mytop

2. 压测

apt install apache2-utils
ab -n 1000 -c 100 http://example.com/

九、推荐组合(稳定 + 高性能)

✅ Debian 12
✅ Apache + mpm_event
✅ PHP-FPM + OPcache
✅ MariaDB + InnoDB
✅ Redis
✅ HTTP/2 + HTTPS


十、如果你愿意,我可以进一步帮你

你可以告诉我:

  1. 服务器配置(CPU / 内存 / 硬盘)
  2. 主要用途(博客 / API / 商城 / 内网系统)
  3. 并发量大概多少

我可以给你一份 “量身定制的 LAMP 配置模板”,直接可用。

0