серверу ~ 40-60 .php файлов • Код фреймворка интерпретируется для каждого запроса заново • Большой аппетит на системные ресурсы • Относительно низкая устойчивость к нагрузкам
файл • HTTP-прокси кеш, например Varnish • Переписать dispatcher под себя • Написать свой MVC • Кешировать все вдоль и поперек • … • Как-то работать с этим всем дальше
для PHP • Уже скомпилирован и не требует интерпретации • Находится в оперативной памяти • Требует минимум файловых операций • Потребляет мало ресурсов • Очень производительный • Не требует от разработчика знаний Си • Бубен нам уже не нужен
HTTP method is GET $router->addGet("/products/edit/{id}", "Products::edit"); // This route only will be matched if the HTTP method is POST $router->addPost("/products/save", "Products::save"); // This route will be matched if the HTTP method is POST or PUT $router->add("/products/update")->via(array("POST", "PUT")); Маршруты для определенных типов HTTP-запросов RESTful applications friendly
Низкая скорость развития фреймворка Решение: • Создание новой версии Phalcon 2.0, которая будет написана на Zephir – мощный и простой язык понятный любому PHP-разработчику
must be declared */ var fruits; int i = 0, length; /* Create PHP array */ let myArray = ["hello", 0, 100.25, false, null]; /* count the array into a 'int' variable */ let length = count(myArray); /* Print value types */ while i < length { echo typeof myArray[i], "\n"; let i++; } return fruits; } }
фреймворки • Phalcon – это очень быстрый и богатый функционалом фреймворк • На нем можно смело разрабатывать Production приложения • Очень большие перспективы развития