|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Slawa Olhovchenkov 2:5030/500 17 Nov 2005 18:15:56 To : Sergey Skvortsov Subject : httpd в ядре -------------------------------------------------------------------------------- 17 Nov 05, Sergey Skvortsov writes to Igor Sysoev: >>>>> А как он их будет кэшировать, если он их сам не читает, а отправляет >>>>> по sendfile() ? Делать mmap() и надеяться, что оно останется в кэше >>>>> системы? >>>> Файлы меньше страницы лучше считать в память (не mmap) и отдавать >>>> writev(). >>> Почему не mmap? Каждой файл mmap'ить - это, конечно, будут тормоза. >>> >>> Hо отчего бы не один большой mmap, расшаренный между всеми worker'ами? >> >> Hу это понятно, что такой кэш нужно делать разделяемым. >> Я имел ввиду mmap() каждого файла. SS> Честно говоря, не очень ясно, почему sendfile() тут будет хуже чем SS> writev. Более компактное расположение контента в памяти? SS> Чем же stat/?readv/writev будет лучше open/sendfile? SS> Разве что в последнем случае нужен еще close(). Hу так в sendfile() есть SS> неиспользуемый параметр flags. Сделать бы флажок типа CLOSE_ON_SUCCESS - SS> так всё было бы прекрасно. SS> Или жизнь существенно сложнее? Видимо хотят сказать, что в реальной жизни у тебя во втором случае на самом деле open/writev/sendfile, поскольку хедеры тоже послать надо. Следовательно по первому варианту экономим сискол. ... А UNIX нам зачем? Он лучше Лексикона? --- GoldED+/BSD 1.1.5 * Origin: (2:5030/500) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/2221437c9108.html, оценка из 5, голосов 10
|