Выбор быстрейшего php фреймворка?

Веду разработку своего php-фреймворка, главными целями которого является компактность движка, удобство его использования при разработке сайтов на нем, и естественно, скорость отдачи страниц.


Возник вопрос: Насколько быстро генерируется страница с блоком новостей, меню и неким текстовым блоком самым быстрым из существующих и знакомого вам PHP-фреймворком?


При условиях:
  • Выключен любого рода кеш;
  • Средняя конфигурация компьютера (допустим 1Ghz, 1Gb RAM);
  • Наличие в фреймворке MVC.


Спасибо за внимание.
  • Вопрос задан
  • 4682 просмотра
Пригласить эксперта
Ответы на вопрос 10
Horse
@Horse
От фреймворка не зависит. При отключенном каше — нужно лезьть в БД… Каждый фреймворк по своемому реализовывает разные фичи, и в зависимости от конкретной реализации проекта фреймоврки будут себя по разному вести и выдавть разные скорости… Тут не практичиски, а теоретичиски сравнивать нужно. Например, если фреймворк Х использует garbage collector, а фрейворк Y не использует — Y быстрее X.

В общем, некоректный вопрос, я так думаю.
Ответ написан
Комментировать
Ориентируйтесь на 10-50мс.
Ответ написан
Комментировать
fStrange
@fStrange
не выбирайте быстрый, выбирайте удобный
Ответ написан
AmdY
@AmdY
PHP и прочие вебштучки
твоя главная ошибка — ты ориентируешься на абсолютные значения, а нужно интересоваться относительными цифрами. подключи к своему проекту что-то вроде pear.php.net/package/Benchmark/download,
узнай цифры:
1. Общее время
2. Время отработки одного контроллера(экшина) C (включает MV)
3. Время на запросы к БД (M)
4. Время на обработку шаблона (V)
смотри, что у тебя тянет больше времени и оптимизируй, не обращая внимания на абсолютные значения. Лучше, конечно, использовать xdebug для профайлинга.
Но в любом случае, может получиться так, что тяжёдый фреймворк. при включённом кэше вдруг залетает, а лёгкий прибавит не много.
Ответ написан
dohlik
@dohlik
Не гонитесь за голыми цифрами. Надо искать оптимальную точку пересечения графика «удобство» с графиком «скорость». Можно сделать класс для генерация меню, который будет максимально быстро отрабатывать, но сделать шаг влево-вправо в нем нереально. А можно наоборот.

Сами тесты вообще «в вакууме». Обратиться к БД можно прямым запросом, можно через конструктор запросов, а можно и ORM подкрутить. Скорость падает, но растет удобство.

Я бы посоветовал поковыряться в основных фреймворках (не только быстрых, типа Kohana или YII, но и в монстрах типа ZF), дабы почерпнуть основные идеи, которые Вам покажутся действительно важными. В принципе, так сейчас строятся все новые фреймворки — как результат работы над ошибками других конкурентов.
Ответ написан
Комментировать
akalend
@akalend
программирую
Веду разработку своего php-фреймворка, главными целями которого является компактность движка, удобство его использования при разработке сайтов на нем, и естественно, скорость отдачи страниц.
Каждый фреймворк представляет собой универсальность.
При зарработки универсальных решений — мы что-то теряем. Чем решение универсальней, тем оно менее производительнее. По этому при разработке велосипеда ответь на вопросы:
— какие основные задачи я буду на нем решать
— на каких хостингах он будет крутится
— какие доп фичи я смогу использовать
— что я могу еще подточить под свое решение.

Чем большими фичами я могу манипулировать, тем более производительную систему я смогу сконструировать.

В качестве примера могу посоветовать свой велосипед
Он заточен под определенные технические решения, и его скорость превосходит ZF в 4 раза при отключенном кешировании и акселерировании на олднотипных малоресурсных запросах. С другими фреймворками в силу их незнания я не сравнивал. Основная фишка описана в блоге «Высокая производительность».

В качестве совета могу подсказать: чтоб достичь эффект производительности необходимо разрабатываем систему так, чтоб кол-во обращений к БД было минимальным, а лучше чтоб его не было вообще. Кал-во джоинов сводим к нолю, Не боимся сджоинивать и сортировать на клиенте, не боимся деноморолизации, так как стоимость быстрой отдачи стр дороже, чем стоимость дисков. Ищем альтернативы. Практика показывает, все неуспешные (тормозные) проекты — это плохо спроектированная БД и обращения к ней.
Ответ написан
akalend
@akalend
программирую
Насколько быстро генерируется страница с блоком новостей, меню и неким текстовым блоком самым быстрым из существующих и знакомого вам PHP-фреймворком?
при запросе по ключу — ориентируемся на 20 mc, у меня сама стр формируется за 5мс, остальные 15-20мс на формирование доп блоков.
Ответ написан
MpaK999
@MpaK999
Буду!
Видел недавно такие «синтетические» тесты с FuelPHP framework, делает даже CodeIgniter, но быстрее всех думаю все равно Fat Free Framework ^)
Ответ написан
Mike77
@Mike77
lamp sf2 yii разработчик
zooks
@zooks
Frontend
Yii пишут, что их фреймворк самый быстрый.
www.yiiframework.com/performance
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы