
Выпуском 5.1 мы завершили первый этап оптимизации, впереди еще ждет статистика, поиск и ряд других интересных идей...
Как я уже сказал, мы планируем провести масштабное нагрузочное тестирование.
Но в рамках работы мы сами проводили тесты, о которых можно немного рассказать.
[spoiler]
1. APC дает очень большой прирост производительности, самый большой на «Старт» статической странице 366% прирост, на «Бизнес» статике 318% и это не сравнить ни с какой оптимизацией.

Поэтому, первая рекомендация, которую мы можем дать всем пользователям и хостерам: ставьте прекомпиляторы APC или eAccelerator!
Учитывая, что php6 будет включать APC в стандартной поставке, видно, что сообщество PHP понимает наличие архитектурных проблем и знает, как их решать.
2. По сравнению с 5.0.9 максимальный прирост мы получили для компилированного «Бизнеса» - 277% на версии с большим объемом данных. За счет оптимизации продукта, компонент, инфоблочного меню, корзины и т.п.
3. Для «Старта» общий прирост составил 84%, в результате оптимизации продукта, компонент и других составляющих.
4. Инфоблоки+ показали худший результат по сравнению со старыми инфоблоками, по крайней мере, для текущей структуры нашей демоверсии. Т.е. когда не выполняется фильтрация по свойствам и преимущества плоской структуры хранения не проявляются ярко. Так что для обычных проектов мы все же не рекомендуем переходить на инфоблоки+. Инфоблоки+ рекомендуется использовать только на проектах с большими объемами и сложными выборками по свойствам.
5. Отключенный управляемый кэш дает снижение производительности примерно на 5%-10% Как и следовало ожидать, большой прирост (~50%-60%) производительности дает использование html КЭШа.
6. Использование __autoload увеличило производительность на прекомпилированной версии на 8%-13%, а если учитывать разницу версий, то получится чуть больше.
7. На тестируемой машине, если не использовать APC, то Apache 1.3 + PHP4 работал быстрее на 7% чем Apache 2 + PHP5, возможно разница из-за настроек PHP.
8. При тестировании 5.1 кэш APC увеличился по сравнению с 5.0.9 в среднем на 3 мегабайта и теперь составляет для «Старта» 11,8Mb, для «Бизнеса» - 28Mb
Все измерения относятся только к конкретной машине, с конкретными, почти дефолтными, настройками ПО и для имеющейся демо-версии. При других настройках, объемах и т.п. цифры могут отличаться.
Мы тестировали Celeron 2.5Gz 512 RAM SATA 2.6.18 linux kernel
Рабочая машина разработчика. Настроена машина без особых выкрутасов, как говорится, все по умолчанию.
Таблица результатов тестирования: