Очереди в Laravel (Queues/Jobs) - зачем они нужны и когда их следует применять
❗️❗️❗️как делать сложные сайты на laravel? Это просто с cutcode!
Поддерживай мой проект - cutcode.ru/
Угостить меня кофе - buymeacoffee.com/cutcode
🤖🤖🤖Мой помощник Тэйлор готов выдать тебе подарок. Забирать тут - cutcode.ru/cha...
------------------------------------------------------------------------------------------------
Когда я только начал знакомство с Laravel, меня он настолько вдохновил что я прям зачитывался документацией. Хотел вникнуть во все возможности этого фреймворка. И дойдя до раздела очередей я как бы сразу понял как с ними работать, но в целом там нет ничего сложного, но при этом когда начал разрабатывать уже проекты на Laravel, делая их один за другим, я ни в одном из них не применял очереди. Потому что просто не находил момента где их следовало бы применить. И даже если уже внедрялся в какой-либо проект в команду, где использовались очереди, я как бы понимал как с ними работать они меня никак не смущали, но при этом каждый мой новый проект, либо какие-то задачи, где стоило бы применить очереди, я их избегал. Потому что не понимал тех моментов, какие задачи нуждаются в этих очередях. И поэтому для начала мы об этом поговорим.
Итак, когда следует применять очереди. Скажем так любые события в вашем скрипте которые заставляют пользователя ждать и это ожидание можно было бы сократить за счет очередей это как раз то место.
Всегда в разработке обращайте внимание на производительность и работайте над оптимизацией. Как пример регистрация пользователя. Часто при регистрации в обработчике также присутствует отправка email уведомления с текстом "добро пожаловать". И это отправка занимает некоторое время так как происходит коннект с почтовым сервером и сама отправка. Пользователь нажимает на кнопку зарегистрироваться и при этом ждет 3-4 секунды, а то и более, пока форму обработается и произойдет загрузка. Если вы бы эту отправку добавили в очереди то пользователь когда нажал бы на кнопку зарегистрироваться у него вы произошла мгновенная загрузка, а в фоновом режиме уже бы произошла отправка email уведомления вашим сервером. Если взять более нагруженный процесс, то эта обработка файла от пользователя. Скажем пользователь загружает товары на ваш сайт через excel файл и тем самым добавляет товары. Если вы также организуйте мгновенно считывание файлов, то этот процесс займет очень много времени, даже если товаров будет немного, то процесс будет не быстрым. А в противном случае браузер просто уйдет в тайм-аут. И очередь здесь как раз бы сделала загрузку мгновенной, а добавление товаров бы произошло по мере выполнения задачи в очереди. Я надеюсь эти примеры дали понимания когда нужно применять очереди.
------------------------------------------------------------------------------------------------
📹 делитесь этим видео с друзьями:
• Как установить Laravel...
🔔 подпишитесь на RU-vid-канал: / @cutcoderu
Как использовать очереди (queues) в Laravel
-------------------------------------------------------------------------------------------------
🔗 наш сайт: cutcode.ru/
📷 наш instagram: / cutcoderu
22 авг 2024