Welcome! Log In Create A New Profile

Advanced

Не полностью отдается файл клиенту

June 02, 2017 03:06AM
Добрый день!
Столкнулся с непонятной проблемой. Имеется сервер для раздачи файлов клиентам. При большом кол-ве запросов иногда начинают происходить следующие вещи на стороне клиента - скачиваемый файл (через curl) отдается меньшего размера но ответ 200
В утилите siege при 100 конкурентных пользователях выглядит так:

HTTP/1.1 200 26.85 secs: 13925686 bytes ==> GET /test/212879312926726118532324622460834138521.xml
HTTP/1.1 200 27.62 secs: 13925686 bytes ==> GET /test/212879312926726118532324622460834138521.xml
HTTP/1.1 200 28.38 secs: 13925686 bytes ==> GET /test/212879312926726118532324622460834138521.xml
HTTP/1.1 200 29.20 secs: 13925686 bytes ==> GET /test/212879312926726118532324622460834138521.xml
HTTP/1.1 200 29.96 secs: 13925686 bytes ==> GET /test/212879312926726118532324622460834138521.xml
HTTP/1.1 200 30.79 secs: 13925686 bytes ==> GET /test/212879312926726118532324622460834138521.xml
HTTP/1.1 200 31.54 secs: 13925686 bytes ==> GET /test/212879312926726118532324622460834138521.xml
HTTP/1.1 200 91.80 secs: 11313152 bytes ==> GET /test/212879312926726118532324622460834138521.xml
HTTP/1.1 200 91.82 secs: 249483 bytes ==> GET /test/212879312926726118532324622460834138521.xml
HTTP/1.1 200 91.84 secs: 270971 bytes ==> GET /test/212879312926726118532324622460834138521.xml
HTTP/1.1 200 91.86 secs: 257541 bytes ==> GET /test/212879312926726118532324622460834138521.xml
HTTP/1.1 200 91.88 secs: 265599 bytes ==> GET /test/212879312926726118532324622460834138521.xml
HTTP/1.1 200 91.89 secs: 262913 bytes ==> GET /test/212879312926726118532324622460834138521.xml

Как видно из времени ответа - он начинает держать клиента и потом закрывает коннект с 200 кодом.
Дебаг лог мне не помог, могу его приложить но он очень большой и найти именно проблемный коннект не получилось

Конфиг очень большой, но вот урезанный вариант с локейшеном
server {
listen 80 default_server;
listen 443 ssl http2;

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA !RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS";

keepalive_timeout 40 40;
keepalive_requests 500;

ssl_certificate_key example.key;
ssl_certificate example.crt;

error_log /var/log/nginx/error.log debug;
access_log /var/log/nginx/access.log;


add_header Cache-Control 'public, max-age=315360000';
add_header Expires 'Tue, 15 Nov 2986 11:00:00 GMT';


location /test/ {
error_log /var/log/nginx/test-error.log;
access_log off;
root /var/local/storage/ru;
rewrite '^/test/([0-9]*)(\d{2})(\d{2})(\d{2})\.(xml|xls|xlsx|xlsm)' /test/$4/$3/$2/$1$2$3$4.$5 break;
}
}

В какую сторону можно посмотреть?..
Subject Author Posted

Не полностью отдается файл клиенту

ingtar June 02, 2017 03:06AM

Re: Не полностью отдается файл клиенту

Maxim Dounin June 02, 2017 07:16AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 303
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready