Как задержать задачи и listener'ы в Laravel в транзакциях базы данных
В Laravel есть механизмы, позволяющие запускать отложенные задачи и слушателей, используя очереди. Однако, если задачи и слушатели запускаются внутри транзакции базы данных, они могут выполниться раньше, чем завершится транзакция, что может привести к непредсказуемым результатам.
Статья предлагает решение этой проблемы, используя отложенный запуск задач и слушателей с помощью Laravel Queues. Для этого автор использует две различные очереди и специальный драйвер базы данных, который позволяет обеспечить атомарность транзакции и выполнение отложенных задач только после ее завершения.
В статье представлен подробный код и инструкции, которые позволяют настроить и использовать этот подход в своих проектах на Laravel.
https://arunas.dev/how-to-delay-laravel-jobs-and-listeners-within-database-transactions/
В Laravel есть механизмы, позволяющие запускать отложенные задачи и слушателей, используя очереди. Однако, если задачи и слушатели запускаются внутри транзакции базы данных, они могут выполниться раньше, чем завершится транзакция, что может привести к непредсказуемым результатам.
Статья предлагает решение этой проблемы, используя отложенный запуск задач и слушателей с помощью Laravel Queues. Для этого автор использует две различные очереди и специальный драйвер базы данных, который позволяет обеспечить атомарность транзакции и выполнение отложенных задач только после ее завершения.
В статье представлен подробный код и инструкции, которые позволяют настроить и использовать этот подход в своих проектах на Laravel.
https://arunas.dev/how-to-delay-laravel-jobs-and-listeners-within-database-transactions/
Arunas codes
How to delay Laravel jobs/listeners within DB transactions
If you have jobs and listeners being fired within database transactions, it can lead to data inconsistencies if the transaction rolls back. Learn how to properly handle them here.
👍4
Forwarded from Библиотека программиста | программирование, кодинг, разработка
📦⚙️ 9 лучших практик по работе с микросервисами
Микросервисы позволяют разрабатывать приложения в виде набора слабосвязанных сервисов, которые взаимодействуют через API, что упрощает разработку, поддержку и масштабирование приложений. Однако с этой архитектурой связаны определенные сложности. В этой статье мы обсудим лучшие практики, которые помогут вам построить более эффективную экосистему микросервисов с меньшим количеством архитектурных недочетов.
🔗 Основной сайт
🔗 Зеркало
Микросервисы позволяют разрабатывать приложения в виде набора слабосвязанных сервисов, которые взаимодействуют через API, что упрощает разработку, поддержку и масштабирование приложений. Однако с этой архитектурой связаны определенные сложности. В этой статье мы обсудим лучшие практики, которые помогут вам построить более эффективную экосистему микросервисов с меньшим количеством архитектурных недочетов.
🔗 Основной сайт
🔗 Зеркало
❤4🍌1
Компиляция быстрых .exe консольных приложений с помощью PHP 8.1, почему бы и нет?
https://habr.com/ru/articles/727774/
https://habr.com/ru/articles/727774/
❤6😁6
Используйте компонент Symfony Dumper для улучшения ваших дампов
Статья начинается с обзора стандартных средств PHP для вывода информации о переменных (vardump(), printr() и других) и указывает на их ограничения. Затем авторы переходят к компоненту VarDumper и показывают, как его использовать для улучшения отображения данных, включая подсветку синтаксиса, коллапсирование и раскрытие объектов и массивов, а также вывод стека вызовов функций.
Статья также описывает возможность создания своих собственных затемненных или скрытых значений, чтобы сохранить конфиденциальность при отладке. Она также упоминает о возможности настройки VarDumper для использования с другими инструментами и библиотеками PHP.
https://jolicode.com/blog/leverage-symfony-vardumper-component-to-enhance-your-dumps
Статья начинается с обзора стандартных средств PHP для вывода информации о переменных (vardump(), printr() и других) и указывает на их ограничения. Затем авторы переходят к компоненту VarDumper и показывают, как его использовать для улучшения отображения данных, включая подсветку синтаксиса, коллапсирование и раскрытие объектов и массивов, а также вывод стека вызовов функций.
Статья также описывает возможность создания своих собственных затемненных или скрытых значений, чтобы сохранить конфиденциальность при отладке. Она также упоминает о возможности настройки VarDumper для использования с другими инструментами и библиотеками PHP.
https://jolicode.com/blog/leverage-symfony-vardumper-component-to-enhance-your-dumps
JoliCode
Leverage Symfony VarDumper Component to Enhance your Dumps
Symfony’s VarDumper Component is a game changer when it comes to debugging. It allows us to dump variables in a clean and efficient way. We hope you already use it in your projects. If not,
👍4❤2
Видео: История PHP, визуализированная с помощью Gource
Gource - это программное обеспечение для визуализации истории разработки проекта. Оно использует информацию из систем контроля версий (например, Git, Mercurial или SVN) и создает анимацию, которая показывает, как изменялся код проекта со временем.
Gource визуализирует дерево файлов проекта в виде 3D-модели, где каждый файл представлен как узел дерева, а коммиты отображаются как изменения, которые происходят в этой модели. Он также позволяет пользователю настраивать многие аспекты визуализации, такие как скорость анимации, цвета, размер узлов и т.д.
Таким образом, получилось интересное видео, в которое можно залипнуть на пару минут
https://youtu.be/yLsUwIhg_k4
Gource - это программное обеспечение для визуализации истории разработки проекта. Оно использует информацию из систем контроля версий (например, Git, Mercurial или SVN) и создает анимацию, которая показывает, как изменялся код проекта со временем.
Gource визуализирует дерево файлов проекта в виде 3D-модели, где каждый файл представлен как узел дерева, а коммиты отображаются как изменения, которые происходят в этой модели. Он также позволяет пользователю настраивать многие аспекты визуализации, такие как скорость анимации, цвета, размер узлов и т.д.
Таким образом, получилось интересное видео, в которое можно залипнуть на пару минут
https://youtu.be/yLsUwIhg_k4
YouTube
The PHP Project visualized with Gource
I visualized the PHP Project (https://github.com/php/php-src) with Gource (https://gource.io/)
❤2🤯2
Forwarded from PHP jobs — вакансии по PHP, Symfony, Laravel
👔 Senior PHP Developer
⛳️ Streamparts
💼🥁 Работа в офисе
💵 от 250 000 рублей
Подробнее: https://proglib.io/vacancies/senior-php-developer-streamparts-fcd242cf-2023-04-11
⛳️ Streamparts
💼🥁 Работа в офисе
💵 от 250 000 рублей
Подробнее: https://proglib.io/vacancies/senior-php-developer-streamparts-fcd242cf-2023-04-11
❤7😁5🔥1
PHP Builder
Трейт для автоматического создания шаблона Builder с гибким интерфейсом для любого класса.
https://github.com/szogyenyid/php-builder
Трейт для автоматического создания шаблона Builder с гибким интерфейсом для любого класса.
https://github.com/szogyenyid/php-builder
GitHub
GitHub - szogyenyid/php-builder: A PHP trait to automagically create a Builder for any class - with no dependencies
A PHP trait to automagically create a Builder for any class - with no dependencies - szogyenyid/php-builder
🍌7❤3🌚2👍1
Как вы организуете свой код на PHP для повторного использования и расширяемости?⬇️⬇️⬇️
👍4❤1
Парсер Nginx с PHP и Bison
Автор предлагает использовать средства Bison для создания грамматики языка логов Nginx и генерации парсера для этого языка. Затем этот парсер можно использовать в PHP для обработки логов и вывода нужной информации.
Статья содержит пример кода на Bison, который описывает грамматику языка логов Nginx. Также приводится пример кода на PHP, в котором используется созданный с помощью Bison парсер для обработки логов Nginx и вывода нужной информации на экран.
https://dev.to/mrsuh/nginx-parser-with-php-and-bison-1k5
Автор предлагает использовать средства Bison для создания грамматики языка логов Nginx и генерации парсера для этого языка. Затем этот парсер можно использовать в PHP для обработки логов и вывода нужной информации.
Статья содержит пример кода на Bison, который описывает грамматику языка логов Nginx. Также приводится пример кода на PHP, в котором используется созданный с помощью Bison парсер для обработки логов Nginx и вывода нужной информации на экран.
https://dev.to/mrsuh/nginx-parser-with-php-and-bison-1k5
DEV Community
Nginx parser with PHP and Bison
Read this post if you don't know what Bison is. Today I'll try to parse Nginx config into AST. I...
👍4❤1
OpenApiGenerator — или как мы генерируем документацию для 3k сервисов API на PHP без погружения в openapi
https://habr.com/ru/articles/721650/
https://habr.com/ru/articles/721650/
Хабр
OpenApiGenerator — или как мы генерируем документацию для 3k сервисов API на PHP без погружения в openapi
Вначале мы делали документацию в Word, потом в Google Docs, потом в Confluence, потом была попытка написать openapi-спецификацию для API вручную, но увидев сколько всего там нужно было писать -...
😁4⚡1👍1🍌1
10 команд для добавления базы данных в Symfony
Данная статья рассказывает о 10 шагах для добавления базы данных в Symfony проект.
Автор пошагово рассматривает процесс добавления базы данных в Symfony и предоставляет соответсвующий список команд
Путем выполнения этих шагов в Symfony можно создать базу данных и начать использовать ее в приложении. Комментарии в статье описывают каждую команду и шаг, а также дают дополнительные объяснения для читателя.
https://faun.pub/10-commands-to-add-a-database-to-symfony-b4e3cdfa5fd2
Данная статья рассказывает о 10 шагах для добавления базы данных в Symfony проект.
Автор пошагово рассматривает процесс добавления базы данных в Symfony и предоставляет соответсвующий список команд
Путем выполнения этих шагов в Symfony можно создать базу данных и начать использовать ее в приложении. Комментарии в статье описывают каждую команду и шаг, а также дают дополнительные объяснения для читателя.
https://faun.pub/10-commands-to-add-a-database-to-symfony-b4e3cdfa5fd2
Medium
10 Commands to Add a Database to Symfony
The Beginner-friendly tutorial about Doctrine
🍌7❤3👍2👏1🌚1
Прессуем WordPress
Со слов автора:
"Основные цели моего доклада — обзор и структурирование базовых представлений о CMS WordPress и восполнение недостающих фрагментов информации. Также я рассказываю о малоизвестных опциях, способах атаки на данную систему управления контентом и необходимом для этого инструментарии."
https://habr.com/ru/articles/728294/
Со слов автора:
"Основные цели моего доклада — обзор и структурирование базовых представлений о CMS WordPress и восполнение недостающих фрагментов информации. Также я рассказываю о малоизвестных опциях, способах атаки на данную систему управления контентом и необходимом для этого инструментарии."
https://habr.com/ru/articles/728294/
Хабр
Прессуем WordPress
Аккумулируем базовые знания, методы атак и нюансы самой популярной open-source CMS в рамках одного доклада. 9 декабря 2022 года я выступил на митапе «Клуба неанонимных багхантеров» от BI.ZONE . Там я...
👌5
Оптимизация Flare
Flare - это инструмент для отладки и мониторинга приложений на основе Laravel. Он предоставляет инструменты для отслеживания ошибок, профилирования запросов, отображения статистики использования ресурсов сервера и многого другого. Flare также интегрируется с другими инструментами для упрощения отладки, такими как интеграция с Slack для оповещения и интеграция с Sentry для отслеживания ошибок в более широком масштабе.
Эта статья рассказывает о способах оптимизации производительности веб-приложений на платформе Flare. В статье описываются основные причины медленной работы приложений и предоставляются рекомендации по оптимизации кода, использованию кэширования, асинхронных запросов и других техник для увеличения скорости и эффективности работы приложения. Также в статье приводятся примеры кода и инструкции по настройке Flare для оптимальной производительности.
https://flareapp.io/blog/49-optimizing-flare
Flare - это инструмент для отладки и мониторинга приложений на основе Laravel. Он предоставляет инструменты для отслеживания ошибок, профилирования запросов, отображения статистики использования ресурсов сервера и многого другого. Flare также интегрируется с другими инструментами для упрощения отладки, такими как интеграция с Slack для оповещения и интеграция с Sentry для отслеживания ошибок в более широком масштабе.
Эта статья рассказывает о способах оптимизации производительности веб-приложений на платформе Flare. В статье описываются основные причины медленной работы приложений и предоставляются рекомендации по оптимизации кода, использованию кэширования, асинхронных запросов и других техник для увеличения скорости и эффективности работы приложения. Также в статье приводятся примеры кода и инструкции по настройке Flare для оптимальной производительности.
https://flareapp.io/blog/49-optimizing-flare
Flare
Optimizing Flare - Blog
<p>We're redesigning Flare, but our application became really slow. Let's find out why and fix it!</p>
❤2👍2
#ищу_команду
Ищите единомышленников, делайте коллабы, создавайте новые проекты. В комментариях под постом укажите #язык, #библиотеку и/или #стек, который вас интересует и опишите общую концепцию проекта.
Ищите единомышленников, делайте коллабы, создавайте новые проекты. В комментариях под постом укажите #язык, #библиотеку и/или #стек, который вас интересует и опишите общую концепцию проекта.
❤10
Индексировать документ в Elasticsearch
Статья рассказывает о том, как индексировать документы в Elasticsearch с помощью библиотеки Elasticsearch-PHP. В статье описывается, что такое индексация, как использовать Elasticsearch-PHP для отправки запросов к Elasticsearch и добавления документов в индекс, и приводятся примеры кода. Статья также содержит ряд полезных советов и рекомендаций по работе с Elasticsearch
https://www.mon-code.net/post/169/index-document-in-elasticsearch-using-php-library-elasticsearch-php
Статья рассказывает о том, как индексировать документы в Elasticsearch с помощью библиотеки Elasticsearch-PHP. В статье описывается, что такое индексация, как использовать Elasticsearch-PHP для отправки запросов к Elasticsearch и добавления документов в индекс, и приводятся примеры кода. Статья также содержит ряд полезных советов и рекомендаций по работе с Elasticsearch
https://www.mon-code.net/post/169/index-document-in-elasticsearch-using-php-library-elasticsearch-php
mon-code
Index document in Elasticsearch using PHP library: elasticsearch-php
Post talking about indexing document in Elasticsearch using elasticsearch-php library in symfony application context
👍4❤2
Данная статья описывает, как использовать библиотеку Python Social Networking Services Scraper (PSNSS) для получения твитов в Laravel приложении. PSNSS позволяет получать данные из различных социальных сетей, в том числе из Twitter.
В статье рассматривается установка и настройка PSNSS, а также примеры кода для получения твитов по определенному хэштегу или имени пользователя Twitter. Также автор предоставляет советы по улучшению производительности и защите приложения от ошибок.
Статья может быть полезна для разработчиков, которые работают с Laravel и хотят добавить возможность получения твитов в свое приложение. Она также может быть интересна для тех, кто интересуется интеграцией Python и PHP.
https://hendrikprinsza.medium.com/fetching-tweets-in-laravel-with-pythons-social-networking-services-scraper-c53db78c014e
В статье рассматривается установка и настройка PSNSS, а также примеры кода для получения твитов по определенному хэштегу или имени пользователя Twitter. Также автор предоставляет советы по улучшению производительности и защите приложения от ошибок.
Статья может быть полезна для разработчиков, которые работают с Laravel и хотят добавить возможность получения твитов в свое приложение. Она также может быть интересна для тех, кто интересуется интеграцией Python и PHP.
https://hendrikprinsza.medium.com/fetching-tweets-in-laravel-with-pythons-social-networking-services-scraper-c53db78c014e
Medium
Fetching Tweets in Laravel With Python’s Social Networking Services Scraper
How to fetch data from Twitter without paying for a Twitter developer account
❤2
Как модерировать видеоконтент (сканировать неприемлемый контент) в PHP
Статья описывает, как использовать Cloudmersive API для модерации видео-контента и сканирования его на наличие несоответствующего контента (NSFW) в PHP приложении. Cloudmersive API предоставляет сервисы для анализа и классификации контента, в том числе для сканирования видео на наличие NSFW материалов.
Также описывает установку и настройку Cloudmersive API, а также демонстрирует примеры кода для отправки видео на анализ и получения результатов. Кроме того, автор предоставляет советы по использованию этого сервиса для модерации контента в реальном времени и оптимизации производительности приложения.
https://cloudmersive.medium.com/how-to-moderate-video-content-scan-for-nsfw-content-in-php-86f9d7a2acd9
Статья описывает, как использовать Cloudmersive API для модерации видео-контента и сканирования его на наличие несоответствующего контента (NSFW) в PHP приложении. Cloudmersive API предоставляет сервисы для анализа и классификации контента, в том числе для сканирования видео на наличие NSFW материалов.
Также описывает установку и настройку Cloudmersive API, а также демонстрирует примеры кода для отправки видео на анализ и получения результатов. Кроме того, автор предоставляет советы по использованию этого сервиса для модерации контента в реальном времени и оптимизации производительности приложения.
https://cloudmersive.medium.com/how-to-moderate-video-content-scan-for-nsfw-content-in-php-86f9d7a2acd9
Medium
How to Moderate Video Content (Scan for NSFW Content) in PHP
Implement NSFW content moderation for your video uploads with a free-to-use API. Use ready-to-run PHP code examples to get started.
❤5