Поддержите проект сделав пожертвование.

Hesko

22 677 Монеток

Новый продукт Laravel Cumulus 🔥🔥🔥

Тейлор несколько часов назад анонсировал новый продукт для Laravel под названием Laravel Cumulus.

После успешной реализации улучшений в таких продуктах, как Pint на основе PHP CS Fixer, и перехода на Pest вместо PhpUnit для написания тестов, мы осознали, что наша экосистема нуждается в дальнейшем совершенствовании.

Это первоапрельская шутка.
Не воспринимайте текст серьёзно. 🤗

Мы обратили внимание на активное использование системой управления исходным кодом многими разработчиками каждый день. Однако, мы поняли, что, несмотря на множество возможностей, GitHub не всегда соответствует требованиям лаконичности.

twitter

Поэтому с гордостью представляем Cumulus – платформу, которая обеспечивает эффективное размещение проектов Laravel и совместную работу над ними вашей командой.

Что делает Cumulus настолько уникальной? Весь ваш код по-прежнему хранится на GitHub, но одновременно интегрируется с Laravel Forge, обеспечивая быструю и безопасную развертку вашего приложения. Благодаря этой интеграции вы получаете удобство и простоту управления процессом разработки, а также гарантированный высокий уровень безопасности и надежности вашего проекта.

Кроме того, Cumulus уже доступен прямо сейчас. Зайдите в ваш аккаунт Laravel Forge и привяжите нужный вам репозиторий.

3

Как сделать сервер artisan многопоточным?

Когда речь заходит о запуске приложения в локальной среде, многие из нас прибегают к удобному инструменту – встроенному веб-серверу, доступному через php -S или artisan serve. Этот инструмент является прекрасным выбором для множества проектов, но он обладает своими особенностями, о которых важно помнить.

Одна из ключевых ограничений встроенного веб-сервера PHP заключается в том, что он оперирует только одним однопоточным процессом. Это значит, что приложение будет отдавать ответы одним за другим, и если будет “тяжёлый” запрос, то следующие после него запросы будут ожидать его выполнения. Это может стать проблемой, особенно если ваше приложение использует технологии, требующие одновременного обслуживания нескольких соединений, такие как SSE (Server-Sent Events).

Однако, не стоит отчаиваться и сразу устанавливать решения типа nginx. У PHP есть решение этой проблемы, которое доступно с версии 7.4.0, выпущенной еще в 2019 году.

Секрет заключается в использовании переменной окружения PHP_CLI_SERVER_WORKERS, которая позволяет указать количество воркеров для веб-сервера PHP.

Для пользователей фреймворка Laravel этот процесс очень прост, требуется только добавить значение в файл .env, например:

PHP_CLI_SERVER_WORKERS=4

APP_NAME="Laravel.su"
APP_ENV=local
APP_KEY=XXX-XXX-XXX

Однако, стоит отметить, что этот метод не будет работать для пользователей Windows. В этом случае вам придется прибегнуть к другим методам оптимизации производительности.

Сейчас (март 2024) переменная PHP_CLI_SERVER_WORKERS попрежнему считается экспериментальной, но я надеюсь, что она лишится этого статуса и будет с нами на постоянной основе.

0