LINUX.ORG.RU

История изменений

Исправление windows10, (текущая версия) :

Эээ я не понял проблему, учитывая время на одного клиента микросекунд 50.

То есть, ты еще и не замерял. Ну окай.

[ntfs@ntfs-a320mh ~]$ time curl 'http://192.168.1.100/test.html'
Hello World
real	0m0,008s
user	0m0,000s
sys	0m0,007s
[ntfs@ntfs-a320mh ~]$ 

Это - быстрый мультипоточный nginx с кешированием. Это - простой HTML с одной строкой. И это заняло 80 мкс.

Из-за того что следующие подключения к сокету обрабатываться не будут, ты в корне неверно экстраполировал количество запросов в секунду. Первый клиент подключился в 0:000, ответ он получит в 0:005, это правда. Только вот если оба клиента подключатся в 0:00, второй клиент получит ответ не в 0:005, как ты считаешь, а в 0:010. Если три клиента подключатся в 0:000, третий клиент получит ответ в 0:015. 10-й клиент получит ответ через 100мс. 100-й подключившийся - через 1с. 1000-й через 10с. Под клиентом само собой, я имею в виду не пользователя, а запрос :)

Далее. Своим «примитивным бинарем» тебе придется отдавать не только код шаблона, а еще и статические ресурсы наподобие JS, CSS JPG. Их ты забыл ? Время на их чтение и отправку браузеру - забыл ? Память необходимую для того чтобы прочитать содержимое и отправить в браузер - забыл ? Освобождать память занятую прочитанным файлом - догадаешься, или бинарь будет потреблять все более и более памяти с каждым запрошенным ресурсом ?

Твой профиль в ЛОРе занимает 15 реквестов. Это значит что если бы твой профиль генерился твоим бинарем, то грузиться он бы закончил через 150мс. Я имею в виду не время передачи, а TTFB. Иными словами, если в твой профиль зайдут одновременно всего лишь 10 человек - последний из них увидит его через полторы секунды.

Исходная версия windows10, :

Эээ я не понял проблему, учитывая время на одного клиента микросекунд 50.

То есть, ты еще и не замерял. Ну окай.

[ntfs@ntfs-a320mh ~]$ time curl 'http://192.168.1.100/test.html'
Hello World
real	0m0,008s
user	0m0,000s
sys	0m0,007s
[ntfs@ntfs-a320mh ~]$ 

Это - быстрый мультипоточный nginx с кешированием. Это - простой HTML с одной строкой. И это заняло 80 мкс.

Из-за того что следующие подключения к сокету обрабатываться не будут, ты в корне неверно экстраполировал количество запросов в секунду. Первый клиент подключился в 0:000, ответ он получит в 0:005, это правда. Только вот если оба клиента подключатся в 0:00, второй клиент получит ответ не в 0:005, как ты считаешь, а в 0:010. Если три клиента подключатся в 0:000, третий клиент получит ответ в 0:015. 10-й клиент получит ответ через 100мс. 100-й подключившийся - через 1с. 1000-й через 10с.

Далее. Своим «примитивным бинарем» тебе придется отдавать не только код шаблона, а еще и статические ресурсы наподобие JS, CSS JPG. Их ты забыл ? Время на их чтение и отправку браузеру - забыл ? Память необходимую для того чтобы прочитать содержимое и отправить в браузер - забыл ? Освобождать память занятую прочитанным файлом - догадаешься, или бинарь будет потреблять все более и более памяти с каждым запрошенным ресурсом ?

Твой профиль в ЛОРе занимает 15 реквестов. Это значит что если бы твой профиль генерился твоим бинарем, то грузиться он бы закончил через 150мс. Я имею в виду не время передачи, а TTFB. Иными словами, если в твой профиль зайдут одновременно всего лишь 10 человек - последний из них увидит его через полторы секунды.