И снова извечный вопрос выбора. В наше героическое время PHP-фреймворков – хоть жопой жуй. В планах реализация нового проекта (точнее, первый этап – реализация движка для нескольких новых проектов), соответственно в который раз встает вопрос выбора.
Фреймворки рассматриваются с разных позиций, а именно:
- Легкость создания нового проекта, чтения и поиска документации
- Продуманность объектной модели, возможность расширения
- Потребление памяти
- Скорость
- Роутинг
- Удобство настройки и отладки
Тесты производились на неком “Hello world”-проекте, типичном для MVC фрейморков. Проект включает в себя 1 контроллер, 1 модель, 1 представление, 1 роут. Модель загружается из базы средствами ORM. Поскольку во всех фреймворках скорость выполнения тестового проекта высока, для оценки использовались результаты apache benchmark (ab) на loopback-интерфейсе (127.0.0.1).
Для тестов использовался VDS (1 Гб памяти, бёрст до 1.5 Гб). Процессор: по 666 Мгц от каждого из 4х ядер “старого” Xeon X3350.
Настройки всех фреймворков “по умолчанию”. Для KO3 включен caching (это не кэширование запросов, это кэширование путей для автозагрузки классов. Ближайший аналог, наверное, prod режим в Symfony2). Для Symfony2 включен prod режим, отключен дебаг.
Пост писался 5 июля 2010, но так и не увидел свет в день своего рождения. Публикую спустя месяц.
Продолжить чтение "PHP фреймворки: сравнение Yii, Kohana (KO3), CodeIgniter (CI), OnPHP, Symfony2"