LNMP在Debian上如何测试
导读:LNMP在Debian上的测试流程 一 环境自检与连通性 检查服务状态与端口 sudo systemctl is-active nginx && sudo systemctl is-active phpX.Y-fpm &...
LNMP在Debian上的测试流程
一 环境自检与连通性
- 检查服务状态与端口
- sudo systemctl is-active nginx & & sudo systemctl is-active phpX.Y-fpm & & sudo systemctl is-active mariadb
- sudo ss -tulpen | egrep ‘:(80|443|3306)’
- 本机与远程连通性
- curl -I http://127.0.0.1/ 或 http://服务器IP/
- 如有防火墙(如 ufw),放行:sudo ufw allow ‘Nginx Full’
- PHP-FPM与Nginx通信
- 确认 Nginx 的 PHP 处理 location 指向正确的 Unix socket(如:/var/run/php/phpX.Y-fpm.sock)或 127.0.0.1:9000,修改后执行:sudo nginx -t & & sudo systemctl reload nginx
- 基础探针
- 在站点根目录(如 /var/www/html)创建 info.php:
- 浏览器访问:http://服务器IP/info.php,确认 PHP 版本、扩展、FPM SAPI 等信息正常显示(生产环境请删除该文件)。
- 在站点根目录(如 /var/www/html)创建 info.php:
二 功能与数据库连通性测试
- 数据库连通性
- 登录数据库:sudo mysql -u root -p
- 简单验证:执行 SELECT 1; 确认返回正常
- 创建测试库与用户并授权(示例):
- CREATE DATABASE testdb;
- CREATE USER ‘testuser’@‘localhost’ IDENTIFIED BY ‘StrongPass!’;
- GRANT ALL PRIVILEGES ON testdb.* TO ‘testuser’@‘localhost’;
- FLUSH PRIVILEGES;
- PHP 连接 MySQL 测试脚本(/var/www/html/dbtest.php)
- 访问:http://服务器IP/dbtest.php,应返回数据库版本号。
三 性能与压力测试
- 安装常用压测工具
- sudo apt install -y apache2-utils wrk sysbench fio netperf
- 静态与动态页面基准
- ab(ApacheBench):ab -n 1000 -c 100 http://服务器IP/
- wrk:wrk -t 12 -c 400 -d 30s http://服务器IP/
- 数据库基准(OLTP)
- sysbench oltp_read_write --db-driver=mysql --mysql-host=localhost --mysql-user=testuser --mysql-password=‘StrongPass!’ --mysql-db=testdb --table-size=100000 --tables=10 --threads=8 --time=60 run
- 磁盘 I/O 基准
- fio --name=randread --ioengine=libaio --rw=randread --bs=4k --size=1G --numjobs=4 --runtime=60 --time_based --filename=/tmp/fio.log
- 网络带宽
- 服务端启动 netserver:sudo netserver
- 客户端测速:netperf -H 服务器IP -t TCP_STREAM(或 UDP_STREAM)
四 结果判读与常见问题排查
- 关键指标
- 吞吐与并发:关注 Requests per second、Time per request、Transfer rate(wrk/ab)
- 数据库:QPS、TPS、95% 延迟(sysbench)
- 磁盘:IOPS、带宽、延迟分布(fio)
- 网络:吞吐量(Mbps/Gbps)、抖动(netperf)
- 常见问题
- 502/504:多为 PHP-FPM 未运行 或 Nginx 与 FPM 通信方式/权限不匹配(检查 socket 路径、用户组、listen.owner/group)
- 访问被拒绝:检查 防火墙/云安全组 是否放行 80/443/3306
- 数据库连接失败:核对 用户名/密码/权限/host 与数据库是否允许本地连接
- 压测结果异常低:检查 CPU/内存/磁盘/网络 瓶颈与 Nginx worker_processes、PHP opcache 等配置
五 安全与清理
- 测试完成后
- 删除测试文件:sudo rm /var/www/html/{ info.php,dbtest.php}
- 数据库清理:DROP DATABASE testdb; DROP USER ‘testuser’@‘localhost’;
- 保持系统与安全组件更新:sudo apt update & & sudo apt upgrade -y
- 生产环境建议启用 HTTPS(如 Let’s Encrypt)并关闭不必要的暴露面与服务。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: LNMP在Debian上如何测试
本文地址: https://pptw.com/jishu/755516.html
