ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Closing connection при медленном скачивании


  • To: nginx-ru@xxxxxxxxx
  • Subject: Closing connection при медленном скачивании
  • From: klimov.d.e@xxxxxxxxx
  • Date: Tue, 11 Dec 2012 17:00:49 +0600
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:subject:message-id:x-mailer:mime-version:content-type :content-transfer-encoding; bh=iwlDCF2EOXZc/F4A6ateVxDth+0ESXLc/7+yIhUeoM4=; b=ZPSywg3uDSp/LnVCmvy/KsrbRbYvF1dVLl8+NN8jYU3lXkBKLVhIp5WX8w0EqYAkLE NO+4C44uKCnyzTijTKtuYh9YMx6PIdCEV/eXtoyqjc3alIH0go806ySS94ADe0UHVinO 7YtF92+NKtHfds//OY18iHamsU2Od2dUJfouh5CHuo8yXQzRDBtEBUCkZoi+EWpXjslg 5NRibjFdafui5ACKXhplSWBm6Ztw/+bFYT5apWNuYRgERbBUrqom+5dz2ehyfA1NXLfh O7E8jLWaSwQPrzVTQqM7thSlkxjkyTzJyq66tPjF9AMWWxCfUR6/l6rpU2JFqk4b5fYY EwHQ==

Приветствую!

Столкнулись с такой проблемой.

Есть необходимость отдавать большой файл. Клиент получает по http этот
файл своей системой, в которой установлен лимит на скорость скачивания.

возникла проблема что клиент через некоторое время получает 
Closing connection всегда через одно и то же время. Причем это время
зависит от скорости с которой он скачивает.

Начали тестировать и выяснили что воспроизводится на простейшем конфиге
с крайней стабильной версией 1.2.5 и зависит от значения параметра
send_timeout.


server {
send_timeout 15;
location /export/ {
        alias /www/export/;
}

}

в export находится bigfile.xml достаточно большой.

Проверяется командой 

 % curl -vvv -H 'Host:
www.example.ru' http://10.7.17.11/export/yal.xml --limit-rate 60K
> /dev/null

* About to connect() to 10.7.17.11 port 80 (#0)
*   Trying 10.7.176.11...   % Total    % Received % Xferd  Average
Speed   Time    Time     Time  Current Dload  Upload   Total   Spent
Left  Speed 0     0    0     0    0     0      0      0 --:--:--
--:--:-- --:--:--     0connected
* Connected to 10.7.17.11 (10.7.17.11) port 80 (#0)
> GET /export/bigfile.xml HTTP/1.1
> User-Agent: curl/7.21.0 (x86_64-pc-linux-gnu) libcurl/7.21.0
> OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.15 libssh2/1.2.6 Accept: */*
> Host: www.example.ru
> 
< HTTP/1.1 200 OK
< Server: nginx/1.2.5
< Date: Mon, 10 Dec 2012 11:23:13 GMT
< Content-Type: text/plain
< Content-Length: 1036786323
< Last-Modified: Mon, 10 Dec 2012 10:24:03 GMT
< Connection: keep-alive
< Accept-Ranges: bytes
< 
{ [data not shown]
  0  988M    0 3749k    0     0  60669      0  4:44:49  0:01:03
4:43:46 62197* transfer closed with 1032903274 bytes remaining to read
0  988M    0 3792k    0     0  61360      0  4:41:36  0:01:03  4:40:33
72301* Closing connection #0

curl: (18) transfer closed with 1032903274 bytes remaining to read



т.е. обрывается на 0:01:03
время обрыва каждый раз практически одинаково. Оно увеличивается при
увеличении параметра send_timeout. При значении в 30 секунд обрывается
уже на 0:34:57.

сеть ни причем, воспроизводится также при запуске curl с того же хоста
где nginx.

Похоже на баг в nginx или я что то я делаю не так?

--
Климов Денис.

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.