Пятиминутка PHP
2.87K subscribers
334 photos
26 videos
826 links
Подкаст о PHP, DBA, архитектуре, DevOps. Авторское мнение о современных трендах в веб-разработке и интересные беседы с гостями. Темы про СУБД, Linux, DevOps

Автор: @petrmyazin
Download Telegram
Best practice: не использовать группы с префиксом, а писать полный путь явно
Одна кодовая база на несколько серверов, например api и web: в этом случае роуты можно регистрировать по условию if/else
Финальный слайд, аналогично прошлому докладу, автор продаёт свою книгу о недокументированных секретах Laravel! https://laravelsecrets.com
В целом доклад про роутинг опять оказался пересказом документации, но со слайдами показывающими исходники Laravel, как это всё внутри запускается. Плюс пара советов Best Practice в конце.
Переходим, видимо, к самому интересному на сегодня: Laravel Update
TAYLOR OTWELL

Laravel. What else?
Скриншот рабочего стола Тейлора:
- он не использует https для локального домена laravel.test
- можно попробовать угадать какими приложениями он пользуется по иконкам в доке
Не смотря на то, что цикл выпуска мажерных версий Laravel теперь 1 год (раньше было 6 месяцев), минорный версии и патч релизы выходят каждый вторник!
Laravel 9 выйдет в сентябре 2021
Сначала обзор новинок в Laravel за последние пол года. Sail - инфраструктура для локальной разработки с помощью Docker https://laravel.com/docs/8.x/sail
Для Laravel Breeze теперь есть поддержка Inetrtia https://laravel.com/docs/8.x/starter-kits#laravel-breeze
Новый casts в Eloquent: AsArrayObject::class - лишен некоторых ограничений классического варианта casts array
Ещё один новый casts в Eloquent: AsCollection:🏛
Fluent интерфейс для тестирования с помощью assertJson
Полезная фича с точки зрения безопасности: fluent интерфейс при тестировании json по умолчанию проверяет, что в json структуре нет никаких лишних полей. Например: разработчик добавил поле в модель и теперь это поле "утекает" - тесты упадут, т.к. появислось неожиданное поле!
artisan test --parallel повзоляет запускать тесты в параллельно, экономя время
Можно тротлить (throttle) повторы запуска job с условием when исключение определённого типа
Переходим к Laravel Octane! Тейлор говорит, что долго думал, что бы такое замутить, чатился с людьми, искал идеи…
В итоге Тейлор пришел к выводу, что все любят СКОРОСТЬ. Любое улучшение связанное с производительностью зайдёт на ура.
php-fpm архитектура shared nothing реально удобна для разработчика. С друго стороны swoole и Road Runner тоже классные инструменты. И не стоит бояться утечек памяти. Утечки у нас и так уже могут случаться в обработчиках очередей.
Последние несколько недель Тейлор занимался тюнингом Laravel, чтобы фреймворк надёжно работал под такими application серверами как Swoole и Road Runner