Pull to refresh

DooPHP — молодой и очень высокопроизводительный PHP фреймворк!

Reading time4 min
Views4.4K
DooPHP
Doo фреймворк — один из быстрейших, если не самый быстрый из доступных PHP фреймворков. Он помогает разработчикам на всех стадиях создания web 2.0 сайтов.
Вольный перевод вводного текста и диаграммы тестов производительности.

Немного истории


Наверно вы спрашиваете себя — зачем нужен ещё один PHP5 фреймворк? Ну… Я использовал и тестировал множество фреймворков основанных на MVC-паттерне последние несколько лет, такие как Ruby on Rails, CodeIgniter, CakePHP, Qcodo, Akelos, Fusephp, Qeephp, Recess и Yii. Возможно у меня проблемы, но мне никогда не нравилось, как другие фреймворки работают в каждодневном использовании. Да, я признаюсь, что мне нравится одна или две фичи в них, но я всегда стремился сделать что-то своё.
И вот, после 1–2 месяцев работы, я представляю вам DOOPHP. Это высокопроизводительный PHP фреймворк, основанный на MVC-паттерне, простой в использовании, без усложнения рабочего процесса или синтаксиса. Фреймворк Doo возможно самый быстрый из доступных фреймворков с открытым исходным кодом, вы можете ознакомиться с тестами произодительности (немного ниже) для сравнения. Фреймворк от 3 до 12 раз быстрее, чем другие!
DooPHP старается быть настолько лёгким, насколько возможно и использует минимальный объема кода. Например, URI роутер — всего 197 линий кода, однако он поддерживает авто-маршрутизацию, RESTful запросы, перенаправление, практически-идентичные-роуты, имена расширений и так далее (файл стал длинной в 421 линию после документирования)! В процессе разработки, я делал тесты возможных подходов при построении модуля и выбирал самые быстрые для Doo.
Помимо того, что DooPHP очень быстр, он так-же имеет достаточно много возможностей. DooPHP поддерживает некоторые библиотеки, часто используемые при разработке сайтов, такие как MVC-паттерн, RESTful API, REST-клиент, URI маршрутизацию, инструменты ORM для баз данных, генератор моделей, сжатую HTTP аутентификацию, гибкий и компилируемый шаблонизатор, логирование и профилирование, и многое другое.
DooPHP на 100% E_STRICT совместим и отлично работает в самых разнообразных средах. Он был протестирован на серверах Apache 2.x/1.x, Cherokee, lighttpd, в режиме CGI/FastCGI, а так-же используя Mod_php (на апаче). Он работает в операционных системах Windows и Linux.
DooPHP ничего не требует, кроме наличия PHP. Он хорошо работает на шаред-хостингах! (сайт разработчика размещён на шаред-хостинге, ввиду отсутствия средств)
DOOPHP значит Do OOP in PHP (Делай ООП в PHP), или иногда DOOOPINPHP.

Тесты производительности


Бенчмарк
Оригинальный тест echo 'Hello world'
Тест шаблонизатора Hello world с использованием шаблона
Тест базы данных Настройка DB, Doo: db ()→find ('User'); 88 найденных записей
Тест кэшированной конфигурации Файлы конфигурации кэшированны с помощью apc_store и запущены помощью скрипта deploy. Echo 'Hello World'
Тест блога DooPHP Тест производительности страницы блога на сайте DooPHP

Для честности, тесты были сделаны на одном компьютере, под одной операционной системой, сервером и PHP в режиме FastCGI.
  • Операционная система: Ubuntu Desktop 9.01
  • Веб-сервер: Cherokee web server 0.99.16
  • PHP: 5.2.9, режим FastCGI, все, не критичные расширения были отключены
  • CPU: Intel Dual 2 Core 2.8 Ghz
  • Оперативная память: 2GB DDR2 800Mhz
  • Жёсткий диск: 120GB 7200 RPM SATA HDD

Протестированы фреймворки последних версий на 12 Июля 2009 года, CodeIgniter 1.7.1, Yii 1.1 dev, CakePHP 1.2.3, QeePHP 2.1
Все тесты были проведены без кэширования данных. Каждый фреймворк был протестирован 10 раз и использованы средние результаты каждого теста. Значения RPS (запросов в секунду) были получены с использованием инструмента ApacheBench и командой «ab -t 30 -c 10 URL» (т.е. 10 уровень параллельности, исполнение теста 30 секунд).
И последнее, но достаточно важное замечание, DooPHP выпущен под новой BSD лицензией — это значит, что он бесплатен для личного или коммерческого использования.

К недостаткам можно отнести очень скромную документацию на данный момент, хотя есть полное описание API + в архиве с фреймворком поставляется несколько демо-проектов, которые вполне годятся для быстрого старта.

Если вышеперечисленные недостатки вас не смущают, а тесты производительности впечатлили — добро пожаловать на сайт doophp.com

Это мой первый пост, недолго пролежавший в песочнице — благодарствую приветливым хабрачеловекам за хабраинвайт!
И спасибо за карму, перенёс в тематический блог.
Tags:
Hubs:
+35
Comments71

Articles