2

ホストにJavaWebサーバーがあります

http://192.168.0.1:80

このホストはローカルではなく、インターネットからVPN経由でアクセスされます。私はホスト上にファイルを持っています:

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;
        }
    }
}

ファイルは約140kb/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にローカルにインストールされ、インターネット接続は同じで、帯域幅も同じです。すべて同じです。Nginxconfではキャッシュは使用されません。私のOSはWindowsXPです

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 に答える