虚拟机上的 Nginx。根服务器的下载速度非常慢

虚拟机上的 Nginx。根服务器的下载速度非常慢

我在具有 100Mbit/s 网络访问的 kimsufi 专用根上运行 VMware ESXI。

由于根目录只有 1 个可用的公共 IPv4,并且 ESXi 无法对其虚拟机进行 NAT,因此我将公共 IP 分配给运行 pfsense 的 VM#1。所有其他虚拟机都通过此虚拟路由器进行 NAT。

我在 VM#2 上的 Ubuntu Server 上运行 nginx,并创建了一个受保护的目录,我想从中直接下载大文件 (>4GB)。我使用了几乎默认的 nginx 配置,但如果有帮助的话,我会发布它。

我从该服务器获得的下载速度非常慢(256kb/s),远低于我的家庭或服务器互联网连接所能达到的速度。

我怎样才能有效地测试瓶颈在哪里(以及 nginx 中有哪些选项可以提高下载速率)?

答案1

为了了解您可以合理预期的最高速度,我会尝试从源到目标进行直接文件复制(scp 或其他方式)。这将排除任何 nginx 配置。如果您仍然得到 256kbps,那么您可以检查潜在的内核变量,或者网络受到管理限制的可能性。


Nginx 并不是一个快速的文件传输方式,特别是如果你有一台更便宜的专用服务器。除了直接复制文件之外,你还增加了延迟/低效率。为了进行故障排除,你也可以尝试同时传输多个文件,看看每个文件的速度是否为 256kbps,或者这个数字是否是你的总体上限。


nginx 配置 proxy_max_temp_file_size 可能设置得太小。你可以将其增加到大于你正在服务的文件大小的数字,这可能会有所帮助

相关内容