Re: оптимизация модуля: переполнения и блокировки

Maxim Dounin mdounin на mdounin.ru
Вт Ноя 15 13:25:54 UTC 2011


Hello!

On Tue, Nov 15, 2011 at 08:20:59AM -0500, minya wrote:

> Начиная с того момента, как управление
> перешло в мой модуль, мне надо
> выполнять цикл вида
> 
> while (не отослали все) {
>     i = file_from_disk.read(buf, buf_size)     (1)
>     write_to_response(buf, i)                      (2)
> }

Не надо делать так.  Нужно просто отдать файловый буфер nginx'у, и 
предоставить ему самому разбираться с дальнейшим чтением и отдачей 
клиенту в соответствии с настройками 
output_buffers/directio/aio/sendfile/whatever. 

Maxim Dounin



Подробная информация о списке рассылки nginx-ru