Несколько непонятностей по nginx

Igor Sysoev is at rambler-co.ru
Tue Apr 24 00:30:53 MSD 2007


On Fri, Apr 13, 2007 at 12:10:17PM +0300, Александр Ворона wrote:

> Igor Sysoev пишет:
> 
> >С неблокирующимся sendfile ситуация непонятна. Я впервые увидел, как
> >Линукс за один неблокирующийся вызов передал 900M.
> 
> вызов должен был быть неблокирующимся - но он таким не был. nginx в это 
> время естественно ничего кроме этого sendfile() не мог делать. Может 
> стОит попробовать отдавать sendfile()'ом не до конца файла, а ровно 
> столько, сколько влезет в буфер сокета, который перед каждым sendfile() 
> и определять?
> 
> кстати попутно мелкая бага - при отдаче nginx'ом 0.5.17 файлов >2G 
> (linux 2.6.20 и i386 sendfile64() и x86_64 sendfile() ) если за один 
> sendfile[64](...,count) с  (2^31-1) > count > (2^31-page_size) уходит 
> количество байт 2^31-page_size, то закачка замирает
> strace

А если в ngx_linux_sendfile_chain.c сделать

-#define NGX_SENDFILE_LIMIT  2147483647L
+#define NGX_SENDFILE_LIMIT  2147479551L

?


-- 
Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list