在进行性能测试前,需确保LNMP环境配置正确且稳定。以下是Debian系统下快速搭建基础LNMP环境的步骤:
sudo apt update && sudo apt install nginx -y
sudo systemctl start nginx && sudo systemctl enable nginx
sudo apt install mariadb-server -y
sudo systemctl start mysql && sudo systemctl enable mysql
php-mysql、php-fpm),配置PHP-FPM监听Socket(默认路径为/var/run/php/php7.x-fpm.sock)。sudo apt install php php-mysql php-fpm -y
sudo systemctl start php7.x-fpm && sudo systemctl enable php7.x-fpm
/etc/nginx/sites-available/default),添加PHP解析规则:location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.x-fpm.sock;
}
重启Nginx使配置生效:sudo systemctl restart nginx。Debian系统可通过apt快速安装常用性能测试工具,覆盖不同测试需求:
sudo apt install apache2-utils -y
sudo apt install wrk -y
sudo apt install sysbench -y
sudo apt install fio -y
sudo apt install netperf -y
-n 1000),100个并发用户(-c 100),测试Nginx或PHP页面的性能。ab -n 1000 -c 100 http://your_server_ip/info.php
关键指标:Requests per second(每秒请求数,QPS)、Time per request(平均请求时间)、Failed requests(失败请求数)。-t12)、400个并发连接(-c400),持续30秒(-d30s)测试,支持更复杂的Lua脚本模拟用户行为。wrk -t12 -c400 -d30s http://your_server_ip/info.php
关键指标:Requests/sec(吞吐量)、Latency(延迟)。sysbench测试CPU单线程/多线程计算能力。sysbench cpu --threads=4 --events=10000 --time=60 run
sysbench memory --threads=4 --time=60 run
fio测试随机读写性能(以/tmp目录为例)。fio --name=randread --ioengine=libaio --rw=randread --bs=4k --size=1G --numjobs=4 --runtime=60 --time_based --filename=/tmp/fio.log
netperf测试TCP流的最大吞吐量。netperf -H your_server_ip -t TCP_STREAM
/etc/nginx/nginx.conf),添加:location /nginx_status {
stub_status on;
access_log off;
allow 127.0.0.1;
deny all;
}
重启Nginx后,访问http://localhost/nginx_status查看状态(需本地访问)。mysqlslap模拟数据库查询负载,测试并发处理能力。mysqlslap --concurrency=10 --iterations=100 --query="SELECT * FROM your_table" --number-of-queries=1000
Blackfire(商业工具)或Xdebug分析PHP脚本性能,定位慢代码(如循环、数据库查询)。worker_connections不足、PHP-FPM的pm.max_children过小、MySQL的innodb_buffer_pool_size未合理配置)。worker_processes(设为CPU核心数)、worker_connections(增加最大并发连接数)、启用gzip压缩(减少传输数据量)。pm.max_children(根据内存计算,如内存/单个PHP进程占用内存)、启用opcache(加速PHP脚本执行)。innodb_buffer_pool_size(设为系统内存的50%-80%)、优化查询语句(通过EXPLAIN分析慢查询)。ulimit -n 65535)、优化内核参数(如net.core.somaxconn提升连接队列长度)。通过以上步骤,可全面评估Debian系统下LNMP架构的性能表现,并针对性优化提升系统吞吐量、响应速度和稳定性。