LINUX.ORG.RU
ФорумAdmin

nginx + nodejs = slow load on wan

 ,


0

2

Есть старенький nginx(1.2.5) на шлюзе(обновлять не предлагать).
Есть свеженький nodejs на внутреннем сайте.
Требуется вывести наружу.

Это сделано(без кэширования)!
НО очень медленная загрузка Bundle.js (~20Мб js, в режиме сжатия gzip (~3.5Мб) грузится 40 секунд)

Напрямую с локальной сетки на nodejs (http://192.168.1.1/Bundle.js) грузится 1.5 секунды!
Напрямую с локальной сетки на шлюз (http://ext.mydomain.com/Bundle.js) грузится - 6 сек.

Ничего не пойму, как nginx может настолько замедлить отдачу - для внешней сети!

P.S. в ниже указаном конфиге я уже включил кеширования. Но ситуацию не улучшило.

★★★★★

Последнее исправление: Atlant (всего исправлений: 1)

Покажи для начала конфиг nginx. И проверь скорость скачивания локального файла со шлюза, может интернет тормозит

MrClon ★★★★★
()
Ответ на: комментарий от MrClon

конфиг nginx - вырезаны комментарии и остальные сервера

user nginx nginx;
worker_processes 4;
error_log /var/log/nginx/error_log info;
events {
        worker_connections 1024;
        use epoll;
}
http {
        include /etc/nginx/mime.types;
        default_type application/octet-stream;

        log_format main
                '$remote_addr - $remote_user [$time_local] '
                '"$request" $status $bytes_sent '
                '"$http_referer" "$http_user_agent" '
                '"$gzip_ratio"';

        client_header_timeout 10m;
        client_body_timeout 10m;
        send_timeout 10m;
        proxy_read_timeout 10m;
        connection_pool_size 256;
        client_header_buffer_size 4k;
        large_client_header_buffers 8 8k;
        request_pool_size 4k;
        gzip on;
        gzip_min_length 1100;
        gzip_buffers 32 64k;
        gzip_comp_level 5;
        gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript;
        gzip_disable     "msie6";
        gzip_http_version 1.0;
        output_buffers 2 64k;
        postpone_output 0;
        sendfile on;
        tcp_nopush on;
        tcp_nodelay on;
        keepalive_timeout 75 20;
        ignore_invalid_headers on;
        index index.html;

        ssl_session_cache shared:SSL:10m;
        ssl_session_timeout 5m;
        ssl_prefer_server_ciphers on;

        proxy_max_temp_file_size 0;

		
		proxy_cache_path /var/cache/nginx/nodejs levels=1:2 keys_zone=nodejs_cache:10m max_size=100m inactive=30m;

        server {.ВЫРЕЗАНО.}
		server {.ВЫРЕЗАНО.}

        server {
                listen 80;
                server_name nodejs nodejs.my.domain.com;
                access_log /var/log/nginx/nodejs.my.domain.com.access_log main;
                error_log /var/log/nginx/nodejs.my.domain.com.error_log info;
                allow all;
                proxy_cache nodejs_cache;
                proxy_buffering off;
                proxy_buffers 50 4k;
                location / {
                    proxy_pass http://192.168.1.1:5400;
                    proxy_http_version 1.1;
                    client_body_buffer_size 20m;
                    proxy_set_header   X-Real-IP $remote_addr;
                    proxy_set_header   Host $http_host;
                    proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
                    proxy_redirect off;
                }
        }


		server {.ВЫРЕЗАНО.}

		# для тех кто без "host" придет
		server {
					listen      80;
					server_name "";
					access_log /var/log/nginx/noname_site.access_log main;
					error_log /var/log/nginx/noname_site.error_log info;
					return      444;
		}
}

Atlant ★★★★★
() автор топика

Не совсем понятно. У тебя статику отдаёт нода? Почему не отдавать сразу сжатый?
Сними и посмотри tcpdump на обоих концах на предмет аномалий

zolden ★★★★★
()
Ответ на: комментарий от zolden

к ноде - я пока отношения не имею. Сторонняя контора рулит пока(стадия тестирования). И да, нода - отдает даже без сжатия.
Мысль посмотреть tcpdump - неплохая. Попробую.

Atlant ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.