Зенд
18-01-2011 12:39
к комментариям - к полной версии
- понравилось!
В зенде есть минус, который достаточно трудно лечится ввиду концепции системы - использование схемы "один-класс-на-файл" и в результате - более 100-150 require-ных файлов во время работы. Из которых обычно процентов 90% вообще каждый запрос (!) таскаются. Даже при использовании opcode-кеширования на это уходит ~0.02сек на celeron 2.4ghz. На в-два-раза-более-шустром компе двухкратного преимущества в скорости при этом не будет ;). Даже отключением проверки изменений файлов в opcode-кешере проблема не решается.
Как вариант - для production собирать "особенный" билд проекта, впихнув в один файл, например, все зендовские классы которые грузятся каждый запрос. У меня получается 4.5-мб файлик с 12 тысячами строк %). При этом первый его require выходит в те же 0.02сек, а вот последующие (уже собранный из opcode-кеша) - 0.003сек, что уже вовсе не является критичным.
При создании такого зендовского файлика-библиотеки нельзя запихать туда весь зенд - иначе размер файла будет более 80мб и работать с ним нереально. При этом нужно высматривать процент загрузок на запрос, просматривая данные о кешах apd, xcache и тп. Вырезать из всех зендовских файлов комментарии и require_once (там их полно, особенно - на эксепшены). При определённом стечении обстоятельств - работает %).
вверх^
к полной версии
понравилось!
в evernote