Laravel World
8.47K subscribers
1.25K photos
25 videos
9 files
2.08K links
Laravel & PHP news
Download Telegram
Релиз PHP 8.3.12, 8.2.24 и 8.1.30
Исправления багов, в том числе четырех уязвимостей.
https://www.php.net/ChangeLog-8.php#8.3.12
12
🚀 Прокачайте свои навыки по API на Laravel с новым курсом от CutCode!

Привет, разработчики!

Завтра на CutCode станет доступен новый курс "Изучение продвинутых методик Laravel. Часть 2. API".

🔥 Что будет на курсе:
1. Глубокое погружение в мир RESTful API: Подробный разбор теории понятным языком и практика на реальных проектах.
2. Современные подходы: Разберем Specification First, API First и Code First. Их особенности и отличия.
3. Автоматизация и кодогенерация: Научимся генерировать документацию и структуру API.
4. Безопасность прежде всего: Разберем JWT, Sanctum и другие методы аутентификации.
5. Тестирование API: Взглянем на подход TDD - как грамотно создавать API через тесты.
6. Профессиональная отладка: Изучим современные инструменты для эффективного дебагинга.

👨‍🏫 Кому подойдет курс:
- Разработчикам, стремящимся создавать масштабируемые и гибкие решения
- Тем, кто хочет повысить свою ценность на рынке труда

📅 Не пропустите прямой эфир!
Хотите узнать больше? Присоединяйтесь к прямому эфиру 1 октября в 20:00 (мск) на YouTube-канале CutCode. Там расскажут подробности о курсе и ответы на все ваши вопросы!

🔗 Ссылка на трансляцию: https://www.youtube.com/live/05JpWyW4b7s

💡 Специальное предложение: После эфира стартуют продажи курса со скидкой в течение 2 дней.

Поднимите ваши навыки разработки API на новый уровень!

#Laravel #API #CutCode
22
Релиз Laravel 11.26
https://github.com/laravel/framework/releases/tag/v11.26.0

+релизы:
Dusk v8.2.7
Installer v5.9.0
Lumen v11.0.1
Octane v2.5.7
Pennant v1.12.0
Prompts v0.3.0
Reverb v1.4.0
Sail v1.34.0
Sanctum v4.0.3
Scout v10.11.4
8
Forwarded from The Dragon Code News (Andrey Helldar)
Laravel Octane для тех, кто хочет быстро вкатиться, но не знает с чего начать

Возникла необходимость запустить вышеупомянутый сервис с RoadRunner на одном из проектов, и чтобы не ходить вокруг да около, прилагаю процесс в "сухом" виде:

При разработке под Windows нужно обязательно войти в подсистему Linux (wsl или в контейнер виртуализации), так как под самим Windows запустить RoadRunner можно, но вот Laravel Octane - нет. Причина в использовании функций сигналов, отсутствующих в Windows. Дальше для всех одинаково.



1. Устанавливаем зависимости:

composer require laravel/octane spiral/roadrunner spiral/roadrunner-cli spiral/roadrunner-http


2. Выполняем консольную команду php artisan octane:install выбирая следующие пункты:
2.1. Which app? roadrunner
2.2. Download binary? Yes

Всё. Октан готов к работе. Можете запускать консольную команду php artisan octane:start --watch и наслаждаться им.

Но есть один нюанс, во всяком случае под Windows. Запуская октан в wsl, он не будет сохранять состояние приложения и при каждом обновлении страницы будет его заново инициализировать. Решение очень простое - нужно указать количество воркеров для работы, например, один:

php artisan octane:start --worker=1


Всё. Теперь октан будет гарантированно запоминать состояние. Но есть, опять же, нюанс - если к этой команде добавить параметр --watch, то она упадёт.

Для сравнения, загрузка страницы со списком товаров из базы при старте через artisan serve и с БД в докер-контейнере, занимает у меня около 150-300 мс. Сервис, запущенный из wsl отдаёт данные за 5-7 секунд. Laravel Octane справляется за 41 мс.

Также можно дополнить блок scripts в файле composer.json:

{
"scripts": {
// ...
"post-install-cmd": [
"@roadrunner"
],
"post-update-cmd": [
"@php artisan vendor:publish --tag=laravel-assets --ansi --force",
"@php artisan vendor:publish --tag=telescope-assets --ansi --force",
"@roadrunner"
],
"octane": [
"Composer\\Config::disableProcessTimeout",
"@php artisan octane:start --watch --workers=1"
],
"roadrunner": [
"rm -f rr",
"@php vendor/bin/rr get-binary -o linux"
]
}
}


После этого, при вызовах команд composer install и composer update октан будет автоматически обновляться.

Учтите, что обновление происходит путём скачивания zip архива при помощи curl без пробрасывания авторизационного токена, установленного в Composer, поэтому чревато схватить ошибку 403 API rate limit exceeded.


И вторая команда - composer octane вместо запуска самого октана.

Всё 🙂
64
Релиз PostgreSQL 17
Тесты показывают ускорение на 20-30% В РЕАЛЬНЫХ ПРИЛОЖЕНИЯХ для запросов, используемых, например, при жадной загрузке в Laravel.
83
Гибкое кэширование в Laravel — это очень просто
В Laravel 11 появилась новая функция кэширования, призванная изменить подход к обработке дорогостоящих операций с данными. Новый метод Cache::flexible() реализует паттерн, позволяющий обслуживать кэшированные данные, обновляя их в фоновом режиме, предлагая разумное решение извечной проблемы баланса между свежестью данных и производительностью приложения. В статье мы рассмотрим эту функцию, начав с основ и постепенно погружаясь в более сложные сценарии использования.
https://www.dev-notes.ru/articles/laravel/flexible-caching-in-laravel/
100
Бесплатный видеокурс по созданию API на Laravel. 24 урока на английском языке.
https://apiacademy.treblle.com/laravel-api-course/write-operations
98
Как Uber обновлял MySQL до версии 8.0
Рассказывается о мотивах, проблемах и их решениях, связанные с этим масштабным процессом обновления.
https://www.uber.com/en-JO/blog/upgrading-ubers-mysql-fleet/
30
Автоматизация резервного копирования баз данных c Laravel
https://www.dev-notes.ru/articles/laravel/automating-database-backups-in-laravel/
2118
Начиная с Laravel 10 с помощью метода toRawSql() можно получить сырой SQL со всеми подставленными значениями
159
Конфигурирование middleware в Laravel 11
https://www.dev-notes.ru/articles/laravel/laravel-11-middleware-configuration/
41