Не очень понимаю что значит термин "микрофреймворк", если минимальное приложение тянет десятки компонет и весит от 15Мб. Чем такой микро отличается от не-микро? В версии 5.2 Тейлор конкретизировал для чего предназначен Люмен: "Only Stateless APIs". То есть эта штука должна быть сервисом (или "микро" сервисом, лол), частью чего-то бо́льшего. Например для обслуживания приложений с богатой клиентской частью — Angular, React и т.п. Раз так, из Lumen выкинут балласт. Никаких сессий и шаблонов. По умолчанию не подключены даже Eloquent и фасады ))) Опаньки! То есть самых попсовых плюшек ларавеля нет, хотя подключить можно. Но видимо Тейлор считает это лишним жиром. Роутер FastRoute от Nikita Popov. no comment. Загрузка конфигурации тоже изменилась, нет папки config, якобы достаточно править .env. Это конечно ложь, где-то что-то придется тупо захардкодить. В целом, как мне показалось, штука годная. Надо брать! https://lumen.laravel.com/docs/5.2/releases
Взять обтрясти любой ZF, ларавел или Yii и получится такой же мини-фреймворк. Тут уже нечего изобретать.
Из https://github.com/laravel/lumen-framework/blob/5.2/composer.json#L17 Код (PHP): "require": { "php": ">=5.5.9", "illuminate/auth": "5.2.*", "illuminate/broadcasting": "5.2.*", "illuminate/bus": "5.2.*", "illuminate/cache": "5.2.*", "illuminate/config": "5.2.*", "illuminate/container": "5.2.*", "illuminate/contracts": "5.2.*", "illuminate/database": "5.2.*", "illuminate/encryption": "5.2.*", "illuminate/events": "5.2.*", "illuminate/filesystem": "5.2.*", "illuminate/hashing": "5.2.*", "illuminate/http": "5.2.*", "illuminate/pagination": "5.2.*", "illuminate/pipeline": "5.2.*", "illuminate/queue": "5.2.*", "illuminate/support": "5.2.*", "illuminate/translation": "5.2.*", "illuminate/validation": "~5.2.7", "illuminate/view": "5.2.*", "monolog/monolog": "~1.11", "mtdowling/cron-expression": "~1.0", "nikic/fast-route": "0.7.*", "paragonie/random_compat": "~1.1", "symfony/http-kernel": "2.8.*|3.0.*", "symfony/http-foundation": "2.8.*|3.0.*", "symfony/polyfill-php56": "~1.0" }, В него входит немаленький кусок большого Ларавеля, я бы так сказал )))
Смотришь вот на эти все творения и не понимаешь: то ли у людей лишних 15 метров нет на сервере, то ли автолоадер у них не работает, то ли лень статику отдать там где фреймворк отъедает на свой чудовищный оверхед лишниие полмегабайта памяти или сотые доли секунды.
VLK, Laravel проще установить, легко изучить его исходник и понять, как он работает, скорость, которая главное преимущество Falcon, не так принципиальна во многих случаях, к тому же в большинстве случаев причиной тормозов будет не php, а кривость алгоритмов. Каждый инструмент - когда он нужен.
выходит что у Falcon сомнительное будущее? печально. Добавлено спустя 34 секунды: PS помимо скорости он еще и ресурса должен жрать меньше, на много меньше.
Да какого ресурса то? На php7 ZF переписанный в полтора раза быстрее работает. Кого волнует разница в 1-2 мегабайта и сотые доли секунды времени. Сейчас время программиста дороже стоит чем экономия на этих спичках.
Скорость вторична. Где важна скорость, там можно либо на голом пхп, или вообще не на пхп, либо кешировать.
Это с чем сравнивать. Форум fluxbb, например, потребляет порядка 400кб оперативы. пруф см. внизу Это конечно разговоры в пользу бедных. Если сравнивать, то надо реализовать одну и ту же задачу посложнее хелловорлд двумя разными инструментами. Типа бложек с заданными условиями запилить. Как здесь: https://github.com/Grafikart/BlogMVC (здесь есть блог на Laravel4, например) Лично мне в лом писать блог на Lumen, а взглянуть на чужой было бы интересно. Смелые есть? Добавлено спустя 2 минуты 9 секунд: это на какой запрос? вышеупомянутый блог в дебаг-режиме показывает потребление оперативки порядка 4.5Мб на страницу. я думаю это типичный показатель. сколько мб занимают файлы на диске это вообще никого не должно парить, сейчас хостинги гигами измеряются, если не анлим.
Так: сайт отъел 30 метров. Переходим на Falcon, господа разработчики? Сейчас стандартные модули серверной памяти идут по 32гб на плашку. О чем мы речь ведём вообще? Там где критичные узкие места - рефакторим, отдаем статикой с мемкеша или вообще всё из памяти раздаем и нет проблем никаких. Вы же не звезды в дальних галактиках вычисляете по потоку данных с телескопа, а рендерите сраную страничку для интернет-магазина. Выдумываете проблемы, серьёзно. Если это обработка запросов на стороне СУБД, так тем более с фалконом или люменом проблемы не исчезнут никуда. Ежели это-таки демон какой-то на пыхе, ну пишут ребята многопоточные херни иногда на пыхе даже на средних по трафику соцсетях (судя по материалам конференций), но там же и железки соответствующие под это дело выделяются. И почему пишут то? Дешевле иной раз память доткнуть чем код мультиязычный потом поддерживать и развивать.
VLK, чисто теоретически Falcon будет строить примерно такие же структуры в памяти, как и Laravel, поскольку вы от его классов можете наследоваться, работать с объектами этих классов на php, так что не думаю, что он будет меньше занимать