|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Slawa Olhovchenkov 2:5030/500 04 Feb 2004 15:18:24 To : Igor Sysoev Subject : sendfile -------------------------------------------------------------------------------- 04 Feb 04, Igor Sysoev writes to Slawa Olhovchenkov: >> IS> Если его разбудить или вызвать снова достаточно поздно, то последний >> IS> подготовленный им в прошлый раз пакет будет отправлен неполным. >> >> [1](чуток подумав) ну и фиг с ним. иначе полный пакет уйдет значительно >> позже. Пожалуй имеющееся поведение правильно. IS> Значительно позже - это доли секунды, ну, может, секунда. IS> Это же не телнет, здесь не нужна итерактивность. Лучше уменьшать оверхед IS> на заголовки при передаче. А для чего? Ведь не во имя же абстрактной экономии ради экономии? Почему-то мне кажется, что если не дожидаться, то общее время передачи будет меньше. >> IS> Кроме того, если sendfile заблокируется на чтении очередной страницы >> IS> с диска, то быстрый клиент успеет получить то, что было подготовлено >> IS> до этого. >> >> Аналогично [1], за исключением: а разве не сработают системные кэши на >> read-ahead? IS> Hу так read-ahead - это, если не ошибаюсь, 32K или 64K. Кончатся эти IS> страницы, будет нужен новый read-ahead. Тут-то и заблокируемся. Так read-ahead -- он на то и ahead, что бы запускать операцию чтения до того, как данные понадобятся. IS> Ты посмотри на свой thttpd, если у него иногда бывает состояние biord, IS> то это именно оно. Если и бывает, то очень редко -- ни разу не видел. В основном он в kqread сидит. >> Таки я не понял -- что надо делать для получения "плохого" эффекта, IS> Прежде всего, у тебя в дампе медленный клиент - 1 p/s, а чтение с IS> диска - примерно 20ms. IS> Для получения "плохого" эффекта нужны IS> 1) быстрые клиенты и побольше; Где ж я их достану... IS> 2) большой объём раздаваемого контента, чтобы он не помещался в IS> физическую память; У thttpd под раздачу с полгига. Памяти гиг. Hо на машине еще апача с перлом и пхп и под раздачу там еще несколько гигов. IS> 3) некоторая загруженность сервера. Это есть >> как теоретически можно это залечить и не будет ли лечение хуже причины? IS> TCP_NOPUSH, побочные эффекты пока не описаны. Hе, ты говорил о лечении sendfile. С thttpd ... Гоpе ты мое аутлуковое! --- GoldED+/BSD 1.1.5 * Origin: (2:5030/500) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/22214020d7a5.html, оценка из 5, голосов 10
|