LNMP是指Linux系统下Nginx、MySQL和PHP(或Perl、Python)这种网站服务器架构。优化Debian上的LNMP性能可以从多个方面进行,包括性能、安全性、资源利用率等。以下是一些基本的优化步骤和建议:
Nginx优化:
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/logs/nginx/error.log 以减少日志记录对性能的影响。PHP优化:
opcache,例如:
opcache.enable=1opcache.interned_strings_buffer=64opcache.max_accelerated_files=10000opcache.memory_consumption=256opcache.save_comments=1opcache.fast_shutdown=1opcache.validate_timestamps=1opcache.fast_shutdown=1opcache.jiton=1opcache.jit_buffer_size=128MySQL优化:
innodb_buffer_pool_size,通常设置为系统内存的50%-80%。max_connections 以匹配服务器的处理能力。query_cache_size 和 query_cache_type。Linux系统优化:
ulimit -n 65535 提高文件描述符限制。sysctl -w net.core.somaxconn=65535net.ipv4.ip_local_port_range="1024 65535"net.ipv4.tcp_fin_timeout="30"net.ipv4.tcp_slow_start_after_idle="0"net.ipv4.tcp_fastopen="3"net.ipv4.tcp_syncookies="1"net.core.netdev_max_backlog="65535"net.nf_conntrack_max="2097152"ufw 或 iptables 限制对服务器的访问。mysql_secure_installation 命令进行安全设置。Prometheus 和 Grafana 来监控服务器的性能。在进行任何配置更改后,都应该进行充分的测试以确保系统的稳定性和性能提升。