Я не про то, что они все одновременно работают. Я про то, что их на каждый запрос надо запускать. Ну, если действовать по простой схеме. Пришел залогиненный юзер - запустили процесс от его имени. Потратили ресурсов на инициализацию, отработали запрос, заглушили. Через 10 миллисекунд он пришел за картинкой - снова запустили. Через 100 миллисекунд пришел другой - запустили от его имени. На пике - несколько десятков инициализаций в секунду.
Можно усложнять систему - глушить процесс не сразу, а подождать, не придет ли он еще раз. В типичной ситуации есть выбор - либо глушить через несколько секунд, когда он подобрал все хвосты от того же запроса (картинки, стилевики, скрипты), либо через где-то час неактивности. В первом случае это на пике десятки одновременно запущенных процессов и несколько инициализаций в секунду. Во втором - несколько инициализаций в минуту, но сотни одновременно запущенных процессов.
Можно еще озаботиться тем, чтобы фронтэнд статику отдавал от nobody, в оной статике ничего секьюрного нет. Это, грубо говоря, снизит нагрузку простейшего случая до первого усложненного.
Anyway, я не вижу способа впихнуть это в ресурс слабой машины, если не реализовывать логику личного кабинета (довольно сложную) на C и без коннекта к базе.
no subject
Date: 2016-Feb-22, Monday 08:52 (UTC)Можно усложнять систему - глушить процесс не сразу, а подождать, не придет ли он еще раз. В типичной ситуации есть выбор - либо глушить через несколько секунд, когда он подобрал все хвосты от того же запроса (картинки, стилевики, скрипты), либо через где-то час неактивности. В первом случае это на пике десятки одновременно запущенных процессов и несколько инициализаций в секунду. Во втором - несколько инициализаций в минуту, но сотни одновременно запущенных процессов.
Можно еще озаботиться тем, чтобы фронтэнд статику отдавал от nobody, в оной статике ничего секьюрного нет. Это, грубо говоря, снизит нагрузку простейшего случая до первого усложненного.
Anyway, я не вижу способа впихнуть это в ресурс слабой машины, если не реализовывать логику личного кабинета (довольно сложную) на C и без коннекта к базе.