VPS环境下Nginx配置优化及请求响应缓慢问题排查求助
VPS环境下Nginx配置优化及请求响应缓慢问题排查求助
我刚把Hostinger的虚拟主机升级成了同平台的VPS,VPS配置是2核vCPU+8GB内存(之前虚拟主机也是2核,但内存更少),现在服务器CPU使用率一直低于5%,内存也只用了25%左右,但奇怪的是VPS的响应速度比虚拟主机慢太多了——单个请求的响应时间至少慢2倍!
虚拟主机请求响应耗时:636ms

VPS请求响应耗时:1670ms

下面是我Laravel应用Docker镜像里当前的Nginx配置(nginx.conf):
server { listen 80; server_name domain.com www.domain.com; # Redirect HTTP to HTTPS return 301 https://$server_name$request_uri; } server { listen 443 ssl; server_name domain.com www.domain.com; ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt; ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key; root /var/www/html/public; index index.php index.html index.htm; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { # include snippets/fastcgi-php.conf; fastcgi_pass app:9000; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
更糟的是,打开和服务器交互的应用时,感觉像是请求在排队——一次只能处理一个请求,加载首页的几个请求居然要花20秒才能完成,每次都是这样!之前在虚拟主机上最多2秒就搞定了。
另外,虚拟主机和VPS我都配置了Cloudflare,VPS上目前跑了4个Docker容器:
- nginx:latest
- Laravel应用容器(就是存放上面nginx.conf的容器)
- SQL数据库实例
- phpMyAdmin
现在服务已经上线生产环境了,这个慢得离谱的情况完全是噩梦,真心求各位大佬帮忙排查解决!谢谢!
备注:内容来源于stack exchange,提问作者Abdelrahman




