Тёмный
No video :(

Как использовать очереди (Queues/Jobs) в Laravel 

Просто о Laravel. CutCode
Подписаться 14 тыс.
Просмотров 22 тыс.
50% 1

Очереди в 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

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 69   
@CutCodeRu
@CutCodeRu 3 года назад
Друзья, как вам новое оформление видео?
@ilhmpost
@ilhmpost 3 года назад
бомба. как и содержание👍👍👍
@user-jm9eg4hj9z
@user-jm9eg4hj9z 3 года назад
вообще огонь
@CutCodeRu
@CutCodeRu 2 года назад
@@im_fredy поменял уже на nord
@YaroslavlCity
@YaroslavlCity Год назад
При записи видео было бы хорошо немного увеличить размер шрифта применять максимально контрастную тему, заботясь о тех, у кого плохое зрение. Ещё следует учитывать, что верхняя часть всегда закрыта тайтлом видео.
@user-nf1td4hh7y
@user-nf1td4hh7y Год назад
Спасибо, коротко и понятно.
@ДенисДенисов-й4й
@ДенисДенисов-й4й Месяц назад
Спасибо за видео! Очень доступно рассказываете! Хотелось бы узнать как именно реализованы очереди в laravel, т.е. что под капотом) Новое видео в рубрику "Для тех, кто не знал "))
@user-ib9py6bv4t
@user-ib9py6bv4t 3 года назад
Хорошее видео, но очень громкие вставки
@CutCodeRu
@CutCodeRu 3 года назад
Спасибо, исправимся)
@user-nk8wq4sx1x
@user-nk8wq4sx1x 2 месяца назад
Если очереди ускоряют обработку, тогда логично было бы показать как действие работает до их применения и после. В остальном наглядно, полезно, спасибо)
@planchet2013
@planchet2013 Год назад
Спасибо, недавно обучали очередям, ваше видео хорошо освежает память!
@RuslanMavlyanov
@RuslanMavlyanov 23 дня назад
Видео отличное! Только вот хотелось бы, чтобы автор рассказал как это устроено: какую роль играет КРОН, что такое supervisor и как он запускает воркеров. Наверняка автор канала обладает этими бесценными знаниями
@CutCodeRu
@CutCodeRu 23 дня назад
может статья поможет? habr.com/ru/articles/824438/
@RuslanMavlyanov
@RuslanMavlyanov 23 дня назад
@@CutCodeRu Да, спасибо! Хоть это и туториал, но момент с кроном и супервизором раскрыт! 💝 Подписался на Хабр 👍
@user-sr7iz9yk6p
@user-sr7iz9yk6p 2 года назад
Вы - волшебник! Спасибо за быстрое и качественное объяснение этой темы! Вы спасли меня на экзамене! Мне достался билет с добавкой в очередь email-рассылки.
@CutCodeRu
@CutCodeRu 2 года назад
О это очень круто что так помогло, я рад что не зря сделал!
@trvtrv3172
@trvtrv3172 Год назад
Отличный ролик. Уже 4 месяца назад очереди смотрел у другого автора и нИ№"я не понял и не использовал. Тут все понятно ЛАЙК👍
@CutCodeRu
@CutCodeRu Год назад
Это радует!
@pavelmgn
@pavelmgn 2 года назад
Было бы неплохо проставлять типы в свойства и переменные конструктора.
@alexredcross
@alexredcross 3 месяца назад
Все гениальное - просто, спасибо)
@CutCodeRu
@CutCodeRu 3 месяца назад
🙏
@wtfisgoingon101
@wtfisgoingon101 Год назад
Слишком громкие вставки и тихий голос
@Mr.Capone-
@Mr.Capone- 3 года назад
у нас много общего! После понимания пыха я влюбился в ларку...))
@CutCodeRu
@CutCodeRu 3 года назад
Собираем банду фанатов)
@user-rz4uf7yp7b
@user-rz4uf7yp7b 3 года назад
Оформление шикарное!!!!! 👍 отличная работа!!!! Спасибо
@CutCodeRu
@CutCodeRu 3 года назад
Спасибо за комментарий, старался)
@invgreat5608
@invgreat5608 4 месяца назад
Царечек!
@CutCodeRu
@CutCodeRu 3 месяца назад
👨‍💻
@user-yd5sn2fj2t
@user-yd5sn2fj2t Год назад
Спасибо, классный урок!
@CutCodeRu
@CutCodeRu Год назад
👍
@eloquent2200
@eloquent2200 2 года назад
Спасибо, теперь мне понятно
@CutCodeRu
@CutCodeRu 2 года назад
Отлично я рад что помогло!
@user-qe2dd2mr2o
@user-qe2dd2mr2o 10 месяцев назад
Спасибо за видео!
@CutCodeRu
@CutCodeRu 8 месяцев назад
🙏
@TheRedesc
@TheRedesc 2 года назад
Классно коротко-доходчиво. Только не учи джунов экземпляры классов в джобы кидать. Сложные классы могут не восстать из сериализации. Лучше передай данные необходимые для инстанцирования, id например для модели.
@CutCodeRu
@CutCodeRu 2 года назад
Спасибо! Насколько я помню в примере модель и она отлично сериализуется но то что я забыл сказать что на это нужно обратить внимание и нельзя передавать любой класс это конечно недостаток. Уже кто то в комментах сталкивался с этим
@CutCodeRu
@CutCodeRu 2 года назад
Сделаю ремейк когда выйдет ларавел 9)
@pm18studio
@pm18studio 2 года назад
@@CutCodeRu уже вышел))) Ждём ремейк. И по поводу звука, нужно не вставки тише делать, а ваш микрофон громче
@CutCodeRu
@CutCodeRu 2 года назад
Со временем улучшили качество и продолжаем)
@TheKwadriga
@TheKwadriga 2 года назад
Я с laravel никогда не работал, как-то всё время он мимо меня проходил... и у меня есть 2 вопроса по коду: 1. Почему не используется тайпхинтинг скалярных параметров методов и почему не прописаны типы возвращаемых значений? 2. Почему для добавки задачи в очередь используются хелперы или "$this->dispatch()" (откуда контроллер знает что такое "dispatch" и зачем ему вообще что-то об этом знать?), но не используется DI, ведь тут прямо напрашивается использование какого-нибудь сервиса, который бы в виде интерфейса приходил к нам в контроллер через конструктор и о работе которого мы ничего бы не знали, кроме того, что он умеет добавлять задачи в очередь? Это имеет отношение к идеологии самой laravel, или тут какие-то другие причины?
@CutCodeRu
@CutCodeRu 2 года назад
Приветствую! 1) Не так давно в php появилась более ли менее типизация но в laravel еще имеются пробелы с тайпхинтом но и я периодически упускаю этот момент 2) У контроллеров есть trait DispatchesJobs и в нем dispatch, такая концепция у laravel В январе выйдет 9 версия laravel пробелы с тайпхинтом закроют
@kipiwpartner
@kipiwpartner 4 месяца назад
Спасибо!
@CutCodeRu
@CutCodeRu 3 месяца назад
🤗
@LLHagenYou
@LLHagenYou 2 года назад
Звук речи тихий, а эффектов и вставок очень громкий -уши. Содержание огонь)
@CutCodeRu
@CutCodeRu 2 года назад
Был такой грешок но исправились со временем!
@MarttiSyber
@MarttiSyber 2 года назад
Огонь урок!
@CutCodeRu
@CutCodeRu 2 года назад
спасибо за поддержку!
@user-cm2wr3op7w
@user-cm2wr3op7w Год назад
Я бы еще добавил что в PHP 8 свойства можно сразу передать в аргументы конструктора, что сделает не обязательным прописывать их выше и не прописывать в конструкторе $this->user = $user
@CutCodeRu
@CutCodeRu Год назад
Когда я снимал ролик php 8 либо еще не вышел либо я просто еще его не юзал
@domnash100
@domnash100 2 года назад
А можно делать очереди и в них сувать загрузку огромных файлов (2гб+)? Потом при обновлении страниц считывать таблицу с задачами в очередях и выводить соответствующий статус. Или это плохая затея?
@CutCodeRu
@CutCodeRu 2 года назад
Для этого и нужны очереди, добавил в очередь линк на файл и загрузил в фоне! Да на основе очередей можно сделать и статус и процентный прогресс загрузки
@user-do6hk5md9n
@user-do6hk5md9n Год назад
Звук ужас :(
@CutCodeRu
@CutCodeRu Год назад
ролик был выпущен 2 года назад. над качеством работаем, к замечаниям прислушиваемся
@tiertiertiertiertier
@tiertiertiertiertier Год назад
"къюи" xD
@CutCodeRu
@CutCodeRu Год назад
Это точно)
@vitekvk
@vitekvk Год назад
Вопросик. А как на shared хостинге быть? Ведь там никто не даст установить супервайзер.
@CutCodeRu
@CutCodeRu Год назад
Заходите к нам в чат t.me/laravel_chat где точно помогут с подобными вопросами
@sakensatenov
@sakensatenov 2 года назад
ты хоть 1 раз смотрел видео в наушниках???? кровь из ушей гарантировано.....
@CutCodeRu
@CutCodeRu 2 года назад
Нет) не хочу кровь из ушей
@sakensatenov
@sakensatenov 2 года назад
@@CutCodeRu ок
@vsezanyato
@vsezanyato Год назад
очень тихо
@CutCodeRu
@CutCodeRu Год назад
все замечания учтены в новых роликах 😉
@sdsd-ec8rw
@sdsd-ec8rw 10 месяцев назад
ппц. постоянно нужно держать палец на стрелке вправо, чтобы пропускать идиотские вставки разной ...........
@CutCodeRu
@CutCodeRu 8 месяцев назад
в новые ролики вставки не делаем
@jd-chnl
@jd-chnl Год назад
Звук говно. Голос тихий, остальное орет. Материал норм
@CutCodeRu
@CutCodeRu 11 месяцев назад
спасибо за комментарий, развиваемся
Далее
Laravel Events / Observers
15:23
Просмотров 16 тыс.
КТО ЛЮБИТ ГРИБЫ?? #shorts
00:24
Просмотров 1,1 млн
Laravel Queues 101: Example with Sending Emails
8:43