stealthy, ну е мое! распишу тогда на пальцах
вопрос №1
у меня есть соковыжималка которая может отжимать сок со скоростью до 100 литров в секунду, от нее идет в ведро труба которая может пропустить сок со скоростью до 10 литров в секунду. Вопрос: сможет ли соковыжималка работать с максимальной скоростью 100 л/секунду?
вопрос №2
все тоже самое, но между соковыжималкой и трубой есть сосуд (или БУФЕР) достаточно большого размера.
Вот в этом ваше заблуждение. И пример ergo это доказывает.
И давайте не будем меряца сами знаете чем. Еще ведь неизвестно у кого больше, можно и опозорица;-)
Это Ваше определение времени генерации. Для меня этот термин означает совершенно другое. В моем понимании есть время ответа сервера, время генерации страницы и время передачи страницы от клиента к серверу.
В случае буферизованного вывода время генерации меньше времени ответа, В случае же небуферизованного практически равно. Следовательно время генерации страницы в случае буферизованного вывода меньше.
Так как транзакция обычно живет во время генерации страницы (см. паттерн транзакция на запрос) то уменьшая это время мы уменьшаем количество одновременных транзакций.
ЗЫ. Наиболее заметный выигрыш в производительности будет если мы при генерации страницы обновляем какой нить счетчик.
stealthy, все что вы написали верно если сначала собираются данные, а потом на основе этих данных генерируется страница. Если же данные выбираются из базы по мере генерации страницы, то обрамляющая транзакция будет достаточно долгая.
Про gzip я писал в следующем смысле:
1) можно сделать кэш страниц а не генерировать их каждый раз
2) страницы в кэше можно хранить сжатыми
3) при необходимости распаковывать
ЗЫ. Буферизовнный вывод сложнее в реализации нежели небуферизованный (знай себе пиши в сокет байты). Так зачем городили огород с созданием буферизованного если у него нет преимуществ.
Ergo, может я ошибаюсь, но вроде load это среднее кол-во потоков (процессов) которые хотят и готовы выполнится
Не все так просто... "буферизованная" выдача лучше масштабируется, так как время генерации страницы не зависит от канала и прочих внешних данных и при этом минимально. а значит обрамляющая генерацию транзакция БД выполница быстрее, следовательно кол-во транзакций в единицу времени будет меньше. А проблему с объемом можно решить gzipом
Скорость упиралась в канал?:-)
Ну бывает так что страница генерируется не в промежуточный буфер а сразу передается клиенту. Может конечно в ПХП так не бывает, но я сомневаюсь что это эффективно писать 350 кбайт в память а потом передавать клиенту.
А время передачи страницы во время генерации включается или нет?
Так я же не говорю что не используется:-) я говорю о том что он ИМХО использовался неактивно. А в свете последних событий мне кажется что его влияние возрасло (взять хотя бы взлет сайтов по непрофильным запросам;-) )
Вообще в первоначальном посте я писал о том что поисковик мог бы учитывать текст донора и это было бы логично с точки зрения ссылочного ранжирования.