On Sat, Sep 01, 2007 at 11:51:04PM +0300, Michael Shigorin wrote: MS> Ага, только в этом случае DoS ещё контролируемый, а если у тебя MS> двадцать бэкендов жуют один процессор, то поди ещё доберись их MS> отстрелить... (даже если ты monit) MS> Бишь между полным DoS'ом, когда приходится звонить-бутать, MS> и частичным я всё-таки выберу второе. Ну и за прошешдую MS> неделю ни разу не жалел. Вопрос в том, сколько именно backend'ов делать. Если у тебя DoS каждый день будет, то увы и ах -- никого это не устроит. Глянь в код SeirosWiki, если разберешься как оно работает будешь очень громко материться. Так вот ответственно заявляю -- это поделие _нельзя_ таким образом защищать. Иначе убиваться будет. Собственно один из периодов когда меня все материли за постоянные gateway timeout были потому как я попробовал такое сделать. > MS>> Это у тебя так долго барахлишко тарахтело? >> Там автор поделия на PHP шибко умный. Это ещё оно быстро >> работало, после того как я грязно матерясь смотрел на особо >> долгие запросы и ручками создавал индексы. MS> IMHO это VPS и ССЗБ. Так и сделано. А проку-то там -- в этом VPS все равно пара десятков апачей крутятся. А если они у меня не будут крутиться -- клиент уйдет к тому, у кого они крутиться будут :( > >>> Что-то вроде. Правда логику по которой надо рассчитывать > >>> оптимум для этих значений я так и не смог продумать. > MS>> Я ж писал -- по два активных процесса на CPU core, это довольно > MS>> известное правило оптимальной загрузки при наличии I/O (бишь > MS>> когда задача не исключительно в CPU и только в него упёрлась). > MS>> У меня в парах httpd/mysqld активным можно было считать httpd, > MS>> поскольку он отъедал примерно на порядок больше времени. >> Ты сначала расскажи что такое "активный процесс" для обычного >> web-приложения. MS> Здесь это выглядело как libhttpd.ep+mysqld. У меня mysqld обычно процессорного времени жрет мало, а вот работает долго. Диски :( >> Особенно с учетом того что часть запросов тормозиться о диск, а >> часть о процессор. И ты заранее не знаешь какой из них к чему >> более жручий. А распараллеливать надо исходя ещё и из этого >> (пока молотят процессор несколько тредов, можно другими >> несколькими тредами создавать проблемы HDD). При том что для >> _правильной_ дисковой системы (то бишь SCSI какие) наборот >> нужно нагружать диск _параллельно_. MS> Я ж не спорю, и для более другого тазика выставил бы более другие MS> циферки. Специально же описал железо и соображения. Я для архива комментирую возможные грабли такого решения, которые могут оказаться неочевидными для тех, кто на них не напарывался. В любом случае есть очень важная вещь -- конфиги у разных сервисов могут и должны быть сильно разными. -- С уважением, Денис http://freesource.info ---------------------------------------------------------------------------- [...] python22-devel тоже provides python-devel, и он лексикографически круче. -- ldv in devel@