LNMP是指Linux系统下Nginx、MySQL和PHP(或Perl、Python)这种网站服务器架构。在Debian系统上部署LNMP环境后,进行性能测试可以帮助你了解服务器的性能和稳定性。以下是一个基本的步骤指南,以及如何进行性能调优的建议。
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install nginx -y
sudo apt-get install php7.0 php7.0-fpm -y
编辑 /etc/php/7.0/fpm/pool.d/www.conf
文件,确保以下配置:
user = www-data
group = www-data
然后重启PHP-FPM:
sudo systemctl restart php7.0-fpm
编辑 /etc/nginx/sites-available/default
文件,添加以下内容:
location \.php {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
}
重启Nginx:
sudo systemctl restart nginx
使用 ab
(ApacheBench)命令进行压力测试。以下是一个基本的压力测试示例:
ab -n 1000 -c 100 http://your_server_ip/ -n :指定请求的总数(1000个请求)。
-c :指定并发的用户数(100个并发用户)。
worker_processes
:设置为 auto
以自动适应CPU核心数。worker_cpu_affinity
:设置为 auto
以自动分配CPU亲和性。worker_rlimit_nofile
:设置为 65535
以允许更多的文件描述符。sendfile
:开启以启用sendfile系统调用。gzip
:关闭压缩以减少CPU使用。fastcgi_read_timeout
:设置为 300000
以增加FastCGI应用程序的响应时间。tcp_nodelay
:开启以提高I/O性能。server_tokens
:关闭以减少HTTP头信息的大小。keepalive_timeout
:设置为 65
以保持连接复用。keepalive_requests
:设置为 100000
以允许更多的保持活动请求。error_log
:设置为 /var/log/nginx/error.log
以减少日志记录对性能的影响。opcache.enable
:启用并配置以下参数:opcache.enable = 1
opcache.interned_strings_buffer = 64
opcache.max_accelerated_files = 10000
opcache.memory_consumption = 256
opcache.save_comments = 1
opcache.fast_shutdown = 1
opcache.jit = on
opcache.jit_buffer_size = 128 M
ulimit -n 65535
提高文件描述符限制。sysctl -w net.core.somaxconn = 65535
sysctl -w net.ipv4.ip_local_port_range = "1024 65535"
sysctl -w net.ipv4.tcp_fin_timeout = 30
sysctl -w net.ipv4.tcp_slow_start_after_idle = 0
sysctl -w net.ipv4.tcp_fastopen = 3
sysctl -w net.ipv4.tcp_syncookies = 1
sysctl -w net.core.netdev_max_backlog = 65535
sysctl -w net.nf_conntrack_max = 2097152
sysctl -w net.netfilter.nf_conntrack_max = 2097152
sysctl -w net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 60
sysctl -w net.netfilter.nf_conntrack_tcp_timeout_time_wait = 60
通过以上步骤和优化,你可以对Debian LNMP环境进行压力测试,并根据测试结果进行相应的调优,以确保服务器在高并发情况下的稳定性和性能。