Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Laravel Queue と仲良くなろう
Search
Satoshi Nishino
February 04, 2026
Programming
66
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Laravel Queue と仲良くなろう
2026/02/04 Fukuoka.php++ Vol.1 登壇資料
Satoshi Nishino
February 04, 2026
More Decks by Satoshi Nishino
See All by Satoshi Nishino
ガーデニングによる継続的バージョンアップ
fingerease
0
9
初めての個人開発で得た学び
fingerease
0
85
Other Decks in Programming
See All in Programming
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
7.3k
動作中のプログラムの中身をリアルタイムに覗く / Realtime Debugger for CSharp with Roslyn
prota
0
260
選挙速報を多くのユーザーへ 届ける Live Activities 設計
hamayokokuririn
0
140
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
190
AI Agent時代のリアーキテクチャ戦略と実践
hokaccha
9
4.7k
MVNOの申込からeSIM開通までをiOSアプリでつなぐ- 本人確認・MNP・通信事業者基盤をまたぐ実装
satotakeshi
0
420
TiDB Cloudのカスタムコントローラーによるオートスケール対応
takaidohigasi
0
120
マイコン向けの軽量Ruby「PicoRuby」で各種デバイスを制御するネイティブアプリの実現手法
bash0c7
0
410
wkhtmltopdfの次どうするか問題2026
willnet
2
1.2k
Intent as Code
shoppingjaws
6
1k
『寄り添うラジオ』をAIで作る 体験価値から逆算した、会話しないUXと品質設計
theoriatec2024
3
180
JPUG勉強会 OSSデータベースの内部構造を理解しよう(第2回)
oga5
0
250
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
410
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
460
Balancing Empowerment & Direction
lara
6
1.3k
Optimizing for Happiness
mojombo
378
71k
Automating Front-end Workflow
addyosmani
1369
210k
A designer walks into a library…
pauljervisheath
211
25k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Code Review Best Practice
trishagee
74
20k
Building a Scalable Design System with Sketch
lauravandoore
464
34k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
450
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
610
Transcript
Laravel Queueと仲良くなろう 2026/02/04 Fukuoka.php++ Vol.1
キューを利用する場面 - 計算量の多い処理 - 遅延実行が必要な処理 - LLMを利用した処理 - …etc 一方で、キューにはワーカープロセスの常駐が必要になるため、
実行タイミングが明確なスケジュール駆動の場合はリソース効率が悪くなる ※ただし、失敗時のリトライ処理のためにあえてキューを利用する場合もある = 実行タイミングが不明なイベント駆動での利用に適している
実際の起動コマンド
--timeout 起動オプションでのデフォルト値は7200としていたが、 もっと短くても良さそう(ジョブごとに設定している場合もあります) ジョブの処理に不具合があった場合にタイムアウトまで待たされる場合があり、 長いことによってキューが詰まる原因になる backoff, triesも必要に応じてジョブ側で個別に設定
--queue ジョブに優先度をつけられるので便利。 ex. - ユーザーによる予約実行処理(時間の厳密さが必要): high - ユーザーによる予約実行処理(時間の厳密さが不要): default -
ユーザーによるデータ更新のCRM連携: low
ワーカー数 少なすぎるとキューが詰まりやすくなるので、 ジョブごとの実行時間・積まれているジョブ数を監視しつつ調整すべき 弊サービスでは3にしてます
キューワーカーの起動方式 - queue:listen - コードの更新を手動でのプロセス再起動なしで適用できる - 開発環境での利用に適している - パフォーマンス❌ -
queue:work - 常駐プロセスのため、変更後はキューワーカーの再起動が必要 - 本番環境での利用に適している - パフォーマンス⭕ - 弊サービスでは以前はqueue:listenで起動していたため、queue:workへの切り替えを行った - 開発環境では --max-jobs=1 にすることで、擬似的にqueue:listenにしました
CPU使用率の変化
とあるバッチ処理の実行時間変化 Before After
ジョブ実装で便利なテクニック
shouldBeUnique
ジョブのバッチ実行
ジョブのバッチ実行 複数のジョブをバルク実行してその結果を通知とかする場合に便利そう (次の機能開発で使ってみることを検討中)
onQueue こっちより
onQueue こっちの方がいいね
ご清聴ありがとうございました Xやってます @fingerEase24