Re: Индеец Розовое Перо
Jan. 21st, 2010 02:11 pmПредыдущие замеры производительности каталистовых серверов были не вполне чисты: на некоторых серверах использовалась тестовая версия БД, на некоторых — боевая. Хоть обе базы живут на одной машине и управляются одни SQL-сервером, их содержимое не совпадает. Понятно, что различие в содержимом может оказывать влияние на скорость — надо было сразу взять напильник в руки и настроить все серверы на использование одной и той же версии базы.
Сегодня протестировал с одинаковой базой — выяснил, что скорости апача и nginx + Catalyst::Engine::HTTP::Prefork совпадают. Более того, апач иногда проигрывает несколько процентов. Получается, что выбор не той базы давал апачу незаслуженное преимущество, достигавшее нескольких десятков процентов.
В итоге данные заметно поменялись:

То есть:
на выдаче тяжёлой статики апач с нгинксом по-прежнему лидируют, как и раньше, лёгкую статику нгинкс выдаёт быстрее всех.
Дальше начинаются отличия:
все сервера: и апач, и HTTP::Prefork, и FastCGI (за исключением тестового каталистового сервера — но его, в общем-то, всерьёз никто и не рассматривает) работают со сравнимой скоростью — отличия составляют несколько процентов (менее десяти) и обусловлены кучей сопутствующих факторов, препятствующих точному измерению: тестирование проводилось на машине, где крутятся разные сервисы.
Значит, скорость перестала быть решающим фактором в выборе сервера — теперь надо ориентироваться на другие параметры. Но вот на какие именно? Потребление памяти, судя по выводу команды
Сегодня протестировал с одинаковой базой — выяснил, что скорости апача и nginx + Catalyst::Engine::HTTP::Prefork совпадают. Более того, апач иногда проигрывает несколько процентов. Получается, что выбор не той базы давал апачу незаслуженное преимущество, достигавшее нескольких десятков процентов.
В итоге данные заметно поменялись:

То есть:
на выдаче тяжёлой статики апач с нгинксом по-прежнему лидируют, как и раньше, лёгкую статику нгинкс выдаёт быстрее всех.
Дальше начинаются отличия:
все сервера: и апач, и HTTP::Prefork, и FastCGI (за исключением тестового каталистового сервера — но его, в общем-то, всерьёз никто и не рассматривает) работают со сравнимой скоростью — отличия составляют несколько процентов (менее десяти) и обусловлены кучей сопутствующих факторов, препятствующих точному измерению: тестирование проводилось на машине, где крутятся разные сервисы.
Значит, скорость перестала быть решающим фактором в выборе сервера — теперь надо ориентироваться на другие параметры. Но вот на какие именно? Потребление памяти, судя по выводу команды
top, примерно одинаково (если использовать равное число процессов). Возможность последующего размножения бэкендов тоже есть: в нгинксе и fastcgi_pass, и proxy_pass позволяют указывать группу серверов.
no subject
Date: 2010-01-21 09:21 am (UTC)И потребление памяти тоже должно быть плюс-минус одинаковым
Я б взял fastcgi - голый HTTP::Prefork мне не нравится, на него неудобно будет повесить в случае необходимости всякие рерайты.