feature request: sendfile management

MZ zuborg at advancedhosters.com
Wed Oct 10 16:56:31 MSD 2007


Если так то патч надо закоммитить во фрю.
Я сначала подумал что дело в неправильном шедулинге дискового I/O, когда
sendfile мешают друг-другу.
Патч потестирую.

В ср, 10/10/2007 в 16:20 +0400, Igor Sysoev пишет:
> On Tue, Oct 09, 2007 at 07:41:29PM +0300, MZ wrote:
> 
> > Замечено что использование sendfile ухудшает производительность при
> > отдаче больших файлов, которые не кешируются эффективно операционкой. То
> > есть если общий обьем тех файлов что часто запрашиваются не помещается в
> > RAM и оси приходится читать их с диска постоянно для каждого запроса.
> > Выключение sendfile увеличивает отдачу с дисков (по данным gstat) раза в
> > полтора.
> > 
> > Я думаю есть смысл не использовать sendfile для больших файлов, то есть
> > смотреть на размер файла перед отдачей, и если его размер превышает тот
> > что установлен какой-то директивой (типа sendfile_max_filesize 10m) -
> > такие файлы отдавать обычным методом.
> 
> У меня есть ощущение, что при использовании sendfile_max_filesize будет
> так же или ещё хуже. Насколько я понимаю, если карточка умеет TX csum и
> DMA (например, em, bge, fxp), то сейчас во FreeBSD при использовании
> sendfile() страницы файла не помечаются как недавно используемые и,
> соответственно, когда pagedaemon проверяет использованность старниц,
> такие страницы имеют большие шансы вылететь из памяти.
> 
> В предыдущем письме я по ошибке отправил патч для 6.x, который
> помечает страницы как использованные. Если кто-то может проверить
> в ситуации, когда памяти меньше, чем размер всех файлов, то было
> бы интерсно. Я погонял этт патч на машине, где весь контент влазит
> в память, разницы не увидел.
> 
> 


More information about the nginx-ru mailing list