«Laravel 9 будет больше похож на минорное обновление.
Обязательство выпускать только один мажор в год подтолкнуло нас к выпуску множества улучшений в виде минорных релизов, не дожидаясь следующей мажорной версии.
Laravel 9 будет достаточно скучным релизом, необходимым для Breaking Changes.» — Тейлор, создатель Laravel.
Laravel 9 выйдет 25 января 2022.
Обязательство выпускать только один мажор в год подтолкнуло нас к выпуску множества улучшений в виде минорных релизов, не дожидаясь следующей мажорной версии.
Laravel 9 будет достаточно скучным релизом, необходимым для Breaking Changes.» — Тейлор, создатель Laravel.
Laravel 9 выйдет 25 января 2022.
Практически пошаговая инструкция с наглядными примерами кода: «Как протестировать API своего проекта на Laravel?» http://amp.gs/jmmQD
Выход Laravel Nova 4.0 ожидается в первом квартале 2022. Источник скриншота телеграм чат https://t.me/LaravelNovaRu
PhpStorm TIP: если в проекте есть описание API в формате OpenAPI, то при работе со встроенным HTTP client будет работать автодополнение API путей.
Подробнее про HTTP client и OpenAPI в PhpStorm: http://amp.gs/jmxU4
Подробнее про HTTP client и OpenAPI в PhpStorm: http://amp.gs/jmxU4
Для аудиалов: YouTube канал Listen IT — автор пересказывает статьи на тему IT. Получается хорошо! https://youtube.com/c/ListenIT_channel
Forwarded from PHP of By (Community Org)
Spiral Ecosystem News #2
Всем привет!
После каждого релиза R&D команда Spiral собирается, чтобы обсудить новые фичи, вошедшие в релизы их проектов, а также последние новости по Roadrunner, Cycle ORM и Spiral Framework.
Подключайтесь во вторник, 25 января в 19.00 (+3) послушать и готовьте вопросы :)
Вопросы можно задать по этой ссылке (можно анонимно): https://docs.google.com/forms/d/1G4jqaWhIFdiFB6jJD139vx4w8a_CG4SylUNT-UVWIPE
Ссылка на трансляцию YouTube: https://www.youtube.com/watch?v=VIoGqpn3eyc
Всем привет!
После каждого релиза R&D команда Spiral собирается, чтобы обсудить новые фичи, вошедшие в релизы их проектов, а также последние новости по Roadrunner, Cycle ORM и Spiral Framework.
Подключайтесь во вторник, 25 января в 19.00 (+3) послушать и готовьте вопросы :)
Вопросы можно задать по этой ссылке (можно анонимно): https://docs.google.com/forms/d/1G4jqaWhIFdiFB6jJD139vx4w8a_CG4SylUNT-UVWIPE
Ссылка на трансляцию YouTube: https://www.youtube.com/watch?v=VIoGqpn3eyc
Конференция Laracon Online обычно платная, я даже пару раз покупал билет. Но ближайшая Laracon Online Winter 9 февраля 2022 будет бесплатной! Возможны анонсы: некий секретный проект Тейлора, Nova 4.0? И, конечно, Laravel 9, но там всё уже понятно. http://amp.gs/jm7sV
Forwarded from Cross Join - канал о разработке (Anton Okolelov)
На Хабре появилась очередная статья о том, как php пытаются натянуть на хайлоад, используя для этого костыли swoole.
Статья потрясающая, ведь в ней перечислены все минусы этого подхода по сравнению с Go, Node и т.д., а выводы сделаны противоположные здравому смыслу.
В статье api, которое пишет в базу, нагрузка всего 300rps.
1) Приложение жрет 2 гига памяти и 8 ядер cpu. Ну хз, Go сожрало бы в несколько раз меньше. У меня микросервисы обычно потребляют в разы меньше при гораздо большей нагрузке. Хотя, конечно, зависит от конкретики приложения.
2) раздел "простота инфраструктуры", цитирую:
"...внутри контейнера будет всего 11 процессов: 1 tini (supervisor)+entrypoint, 1 master процесс, 1 manager процесс и 8 worker процессов."
Вы чо, ребят? Какая тут простота? Особенно учитывая, что они зачем-то перезапускают процессы воркеров раз в час.
Image весит всего 120 мегабайт. Ну неплохо, но если это так важно, то в Go можно оставить вообще один бинарник (FROM scratch), и он будет весить по сути вообще около нуля.
3) чтобы добиться постоянного соединения к бд и редису, пришлось написать несколько оберток к библиотекам и драйвер к doctrine.
4) 4ms уходит на обработку запроса без логики (пустой запрос или даже 404). Сорян, но это очень много.
5) в течение месяца после выкатки они вылавливали странные ситуации. Что-то там текло при коннекте к посгресу и тд.
Итог) Вывод делают такой: php закапывать рано, все норм.
Блин. Если бы в статье был упор на удобство написания кода, то я бы это купил и пошарил бы везде. Синтаксис php во многом удобнее. Но статья про хайлоад и производительность, блин.
Отдельно хочу заметить, что описанное в статье могла намутить только команда прокачанных php-синьоров, которые готовы ловить и фиксить необычные проблемы. А на Go с задачей "highload api, которое лезет в базу" справился бы начинающий по стандартному мануалу. И у него не возникло бы ни одной серьёзной проблемы.
Статья потрясающая, ведь в ней перечислены все минусы этого подхода по сравнению с Go, Node и т.д., а выводы сделаны противоположные здравому смыслу.
В статье api, которое пишет в базу, нагрузка всего 300rps.
1) Приложение жрет 2 гига памяти и 8 ядер cpu. Ну хз, Go сожрало бы в несколько раз меньше. У меня микросервисы обычно потребляют в разы меньше при гораздо большей нагрузке. Хотя, конечно, зависит от конкретики приложения.
2) раздел "простота инфраструктуры", цитирую:
"...внутри контейнера будет всего 11 процессов: 1 tini (supervisor)+entrypoint, 1 master процесс, 1 manager процесс и 8 worker процессов."
Вы чо, ребят? Какая тут простота? Особенно учитывая, что они зачем-то перезапускают процессы воркеров раз в час.
Image весит всего 120 мегабайт. Ну неплохо, но если это так важно, то в Go можно оставить вообще один бинарник (FROM scratch), и он будет весить по сути вообще около нуля.
3) чтобы добиться постоянного соединения к бд и редису, пришлось написать несколько оберток к библиотекам и драйвер к doctrine.
4) 4ms уходит на обработку запроса без логики (пустой запрос или даже 404). Сорян, но это очень много.
5) в течение месяца после выкатки они вылавливали странные ситуации. Что-то там текло при коннекте к посгресу и тд.
Итог) Вывод делают такой: php закапывать рано, все норм.
Блин. Если бы в статье был упор на удобство написания кода, то я бы это купил и пошарил бы везде. Синтаксис php во многом удобнее. Но статья про хайлоад и производительность, блин.
Отдельно хочу заметить, что описанное в статье могла намутить только команда прокачанных php-синьоров, которые готовы ловить и фиксить необычные проблемы. А на Go с задачей "highload api, которое лезет в базу" справился бы начинающий по стандартному мануалу. И у него не возникло бы ни одной серьёзной проблемы.
Хабр
PHP на стероидах: Swoole in production
Представьте себе ситуацию, большой маркетплейс, 60 тыс. посетителей в сутки (600 тыс. просмотров) и это только веб, а с мобильного приложения, плюс еще 100 тыс. уникальных посетителей. С точки зрения...
Что нового в OpenAPI 3.1 (2021)? Часовое видео с интересными инсайдами и ответами на живые вопросы пользователей: https://youtu.be/Sflpzh_cAcA
YouTube
Introducing OpenAPI Version 3.1
Join OpenAPI contributors, Darrel Miller and Ron Ratovsky, for an up close look at the new features in OpenAPI Version 3.1.
А, тем временем, конференция PHP Russia продолжает собирать заявки на этот год: https://cfp.phprussia.ru/.
Особо интересно:
- Облака и Lambda если это у вас было в проде.
- Архитектура и масштабируемость. Но скорее всего не "как запихать всё в Docker" потому как по этой теме заявок и так прилетает норм и некоторые из них очень сильные.
- Подводные камни хайповых решений. Это всегда нормуль. Как сделать просто там, где все делают зачем-то слишком сложно.
- Системная борьба с legacy. Но не просто так "мы боролись и перебороли", а что-то типа паттернов аля anti-corruption layer и других.
- Асинхронные приложения и параллельная обработка: конвейеры, очереди, шины.
- API: REST, SOAP и другие. Тут начиная с протоколов типа gRPC и binn и заканчивая разворачиванием приложений по спеке OpenAPI. Широкая тема.
Но! Если вдруг у вас тема не вписывается в темы выше и даже в темы на сайте CFP + она всё-таки про PHP или на PHP — подавайте обязательно. Мы обожаем сюрпризы.
Особо интересно:
- Облака и Lambda если это у вас было в проде.
- Архитектура и масштабируемость. Но скорее всего не "как запихать всё в Docker" потому как по этой теме заявок и так прилетает норм и некоторые из них очень сильные.
- Подводные камни хайповых решений. Это всегда нормуль. Как сделать просто там, где все делают зачем-то слишком сложно.
- Системная борьба с legacy. Но не просто так "мы боролись и перебороли", а что-то типа паттернов аля anti-corruption layer и других.
- Асинхронные приложения и параллельная обработка: конвейеры, очереди, шины.
- API: REST, SOAP и другие. Тут начиная с протоколов типа gRPC и binn и заканчивая разворачиванием приложений по спеке OpenAPI. Широкая тема.
Но! Если вдруг у вас тема не вписывается в темы выше и даже в темы на сайте CFP + она всё-таки про PHP или на PHP — подавайте обязательно. Мы обожаем сюрпризы.
cfp.phprussia.ru
PHP Russia 2025
Подайте доклад на конференцию PHP Russia
👍2
Doctrine DBAL 2 уйдёт в закат в конце 2022 года, всем DBAL 3! http://amp.gs/jm9d7
www.doctrine-project.org
Sunsetting Doctrine DBAL 2 - Doctrine: PHP Open Source Project
The Doctrine Project is an open-source PHP project that is home to home to several PHP libraries primarily focused on database storage and object mapping. The core projects are the Object Relational Mapper (ORM) and the Database Abstraction Layer (DBAL) it…
2 марта 2022 смотрите во всех онлайн-кинотеатрах: документальный фильм Laravel Origins! А пока трейлер: https://youtu.be/mH7cgoX3K0g
YouTube
Laravel Origins: The Documentary (Trailer)
🎥 More tech documentaries coming out soon, subscribe to be notified!
🥳 Laravel Origins is now live: https://youtu.be/127ng7botO4
Featuring Laravel creator Taylor Otwell and many others who’ve contributed to making Laravel the technology and community that…
🥳 Laravel Origins is now live: https://youtu.be/127ng7botO4
Featuring Laravel creator Taylor Otwell and many others who’ve contributed to making Laravel the technology and community that…
Читаю канал Хроники Yii3 (http://amp.gs/jmAxL), вижу пост «Исправили проблемы работы с PHP 8.1 в пакетах…», в нём ссылки на PR — пошел, посмотрел, узнал для себя что-то новое! Полезно иногда подсматривать в коммиты популярных библиотек и фреймворков.
👍1
В продолжение предыдущего поста, хорошая статья по теме что такое «A tentative return types» и атрибут #[ReturnTypeWillChange] в PHP 8.1: http://amp.gs/jmACh
PHP.Watch
PHP 8.1: Return types in PHP built-in class methods and deprecation notices
👍1
Рубрика библиотека дня: http://amp.gs/jmJuM — мемоизация результата выполнения функции или метода. Рекомендую посмотреть исходный код, его не много.
Рубрика библиотека дня: PHP Clean Architecture.
Инструмент для автоматизации контроля над качеством архитектуры приложений написанных на PHP, а также упрощения анализа и визуализации некоторых метрик.
Идея его создания была навеяна книгой «Чистая Архитектура» (Роберта Мартина).
Отчет визуализирует текущее состояние системы, наглядно отображает взаимосвязи между компонентами, их силу, удалённость компонентов от главной последовательности, а также подсвечивает обнаруженные, на основе конфига, нежелательные зависимости и прочие архитектурные проблемы.
В случае нарушения кодом ограничений, заданных конфигом, информирует об обнаруженных проблемах и завершает выполнение с ошибкой. Рекоммендуется добавить запуск этой команды в процес CI.
http://amp.gs/jm3Ta
Инструмент для автоматизации контроля над качеством архитектуры приложений написанных на PHP, а также упрощения анализа и визуализации некоторых метрик.
Идея его создания была навеяна книгой «Чистая Архитектура» (Роберта Мартина).
Отчет визуализирует текущее состояние системы, наглядно отображает взаимосвязи между компонентами, их силу, удалённость компонентов от главной последовательности, а также подсвечивает обнаруженные, на основе конфига, нежелательные зависимости и прочие архитектурные проблемы.
В случае нарушения кодом ограничений, заданных конфигом, информирует об обнаруженных проблемах и завершает выполнение с ошибкой. Рекоммендуется добавить запуск этой команды в процес CI.
http://amp.gs/jm3Ta
Подводим итоги 2021 года в PHP-сообществе, живая трансляция на YouTube 12 февраля 11:00 Мск/Минск/Киев
http://amp.gs/jmLz4
http://amp.gs/jmLz4
phpcommunity.ru
2021 год в русскоговорящем PHP-сообществе (опрос и стрим)
Обсуждение событий года, личностей и важных решений + много данных