2

我在主机上有一个 java web-server

http://192.168.0.1:80

该主机不是本地主机,它是通过 VPN 从 Internet 访问的。我在主机上有文件:

http://192.168.0.1:80/100mbFile.zip

当我直接用 Opera 或 Firefox 下载它时,我得到了 32-35 kb/s 的下载速度。

但是当我使用本地安装的 Nginx 访问此文件时,使用 x3 的速度更快。配置是这样的:

# I simplify the config removing unnesessary information from it.
server {
        listen       8080;
        server_name  nginx.local;

        location /download {
            rewrite /download /auth_download last;
            # /auth_download return X-Accell-Redirect to /internal_download
        }

        location /internal_download {
            proxy_intercept_errors on;
            proxy_pass http://192.168.0.1:80/100mbFile.zip;
        }
    }
}

该文件以大约 140 kb/s 的速度下载。为什么?概括:

Opera -> http://192.168.0.1:80/100mbFile.zip - ~35kb/s
Opera -> http://nginx.local:8080/download (Local Nginx proxy_pass) - ~140kb/s

这怎么可能?Nginx 本地安装在 127.0.0.1 上,互联网连接相同,带宽也相同。都是一样的。Nginx conf 中没有使用缓存。我的操作系统是 Windows XP

4

1 回答 1

0

Nginx 缓存内容,因此它不需要磁盘 IO,因此从内存中提供服务的速度要快得多。

见这篇文章https://web.archive.org/web/20120622205256/http://mark.ossdl.de/2009/07/nginx-to-create-static-files-from-dynamic-content/

于 2012-07-13T04:48:13.090 回答