Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Laravel JobQue
Search
Takayuki
January 21, 2018
Technology
1
240
Laravel JobQue
Laravel JobQue
Takayuki
January 21, 2018
Tweet
Share
More Decks by Takayuki
See All by Takayuki
Laravel × Clean Architecture
bumptakayuki
0
330
エンジニアのキャリア論
bumptakayuki
0
200
地方カンファレンス主催のススメ
bumptakayuki
1
210
Laravelで敢えて試す脆弱性のある書き方
bumptakayuki
2
1.1k
地方でのPHPエンジニア採用って実際どうなの?
bumptakayuki
0
680
沖縄観光、名物を一挙紹介!
bumptakayuki
2
670
Laravel ShiftでLaravelのバージョンアップしてみた話
bumptakayuki
1
2.8k
flutterでイベントアプリを作ってみた
bumptakayuki
0
160
オフショア開発の辛みと学んだ事
bumptakayuki
0
400
Other Decks in Technology
See All in Technology
S3アクセス制御の設計ポイント
tommy0124
3
200
生成AI時代のデータ基盤設計〜ペースレイヤリングで実現する高速開発と持続性〜 / Levtech Meetup_Session_2
sansan_randd
1
150
ブロックテーマ時代における、テーマの CSS について考える Toro_Unit / 2025.09.13 @ Shinshu WordPress Meetup
torounit
0
130
まずはマネコンでちゃちゃっと作ってから、それをCDKにしてみよか。
yamada_r
2
110
DevIO2025_継続的なサービス開発のための技術的意思決定のポイント / how-to-tech-decision-makaing-devio2025
nologyance
1
400
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
9
73k
【初心者向け】ローカルLLMの色々な動かし方まとめ
aratako
7
3.5k
Modern Linux
oracle4engineer
PRO
0
100
サラリーマンの小遣いで作るtoCサービス - Cloudflare Workersでスケールする開発戦略
shinaps
2
450
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
4
570
職種の壁を溶かして開発サイクルを高速に回す~情報透明性と職種越境から考えるAIフレンドリーな職種間連携~
daitasu
0
170
「全員プロダクトマネージャー」を実現する、Cursorによる仕様検討の自動運転
applism118
21
11k
Featured
See All Featured
Statistics for Hackers
jakevdp
799
220k
Speed Design
sergeychernyshev
32
1.1k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
It's Worth the Effort
3n
187
28k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Embracing the Ebb and Flow
colly
87
4.8k
Gamification - CAS2011
davidbonilla
81
5.4k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
BBQ
matthewcrist
89
9.8k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
51
5.6k
A Modern Web Designer's Workflow
chriscoyier
696
190k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
Transcript
Laravel JobQue Laravel JobQue
1 JobQueͱ 2 Γ͍ͨ͜ͱɾղઆ Agenda 3 ࣮ԋ
1 JobQueͱ
4 1 JobQueͱ !δϣϒ : ԿΒ͔ͷॲཧ !Ωϡʔ : ઌೖΕઌग़͠ (FIFO)
ͷϦετ ߏΛ࣋ͭɺίϯϐϡʔλͷجຊతͳσʔ λߏͷҰͭ !ϫʔΧʔ : Ωϡʔʹొ͞Εͨδϣϒ Λஞ࣮࣍ߦ͍ͯ͘͠ͷ
5 Ωϡʔͱ !Ωϡʔʢӳ: queueʣɺ͋Δ͍ͪߦ ྻίϯϐϡʔλͷجຊతͳσʔλߏ ͷҰͭɻ !σʔλΛઌೖΕઌग़͠[1]ͷϦετߏ Ͱอ࣋͢ΔͷͰ͋Δɻ !Ωϡʔ͔ΒσʔλΛऔΓग़͢ͱ͖ʹ ɺઌʹೖΕΒΕͨσʔλ͔ΒॱʹऔΓ
ग़͞ΕΔɻΩϡʔʹσʔλΛೖΕΔ͜ͱ ΛΤϯΩϡʔ[2]ɺ !औΓग़͢͜ͱΛσΩϡʔ[3]ͱ͍͏ɻ
6 ͲΜͳ࣌ʹ͏ͷ͔ʁ ͨͱ͑ɺ Web ΞϓϦέʔγϣϯʹ͓͍ͯɺ Ϣʔβʔ͔ΒͷೖྗΛड͚͚ͨޙʹαʔόʔαΠυͰॏ ͍ॲཧΛ͢Δඞཁ͕͋ͬͯɺͦͷॲཧΛδϣϒͱͯ͠ Γग़ͯ͠Ωϡʔʹొ͢ΔΑ͏ʹ͢ΕɺΞϓϦέʔγϣ ϯͦͷॏ͍ॲཧΛඇಉظͰ࣮ߦͰ͖ɺॲཧ͕ྃ͢Δલ ʹϢʔβʔʹϨεϙϯεΛฦ͢͜ͱ͕Ͱ͖·͢ɻ
7 ͲΜͳ࣌ʹ͏ͷ͔ʁ
2 Γ͍ͨ͜ͱɾղઆ
9 Γ͍ͨ͜ͱ ɾؔऀʹେྔͷϝʔϧΛૹ৴͢ΔࡍʹϝϞ ϦϦʔΫͤ͞ͳ͍ɻ ɾϨεϙϯεͪঢ়ଶʹͤͣʹઌʹϨεϙϯε (εςʔλείʔυͳͲ)͚ͩฦ͢ɻ
1 0 ࠓճΔ͜ͱ !ΠϕϯτˍϦεφʔͰϝʔϧૹ৴Λ࣮ !ϦεφʔΛΩϡʔԽͯ͠ඇಉظͰϝʔϧΛૹ৴
11 ѱ͍ྫ ϝʔϧૹ৴ͯ͠ը໘͕ݻ·Δ ʘ(^o^)ʗΦϫλ
1 2 ΠϕϯτϦεφʔͱ !Ϣʔβʔొ࣌ୀձ࣌ͳͲಛఆͷΠϕϯτͷ࣌ʹൃՐ͍ͤͨ͞ ϝιουΛཧ͍ͨ࣌͠ΠϕϯτϦεφʔΛ͏ͱศརͰ͢ɻ !͍ΘΏΔΦϒβʔόʔύλʔϯͱݺΕΔίʔυͷ࣮ํ๏Ͱɺ JavaScriptͰDOMૢ࡞͢Δͱ͖ʹ͓ͳ͡Έͷํ๏Ͱ͢ɻ Ϙλϯ͕ΫϦοΫ͞ΕͨΒ"click"ͱ͍͏Πϕϯτ͕ൃՐͯ͠ɺͦͷ Πϕϯτ͕ൃՐͨ͠Βಛఆͷॲཧ͕ΔΑ͏ʹ͢Δͱ͍͏࣮ํ ๏Ͱ͢ɻ
1 3 ֤σΟϨΫτϦͷઆ໌ !app\Events Πϕϯτ໊ʹΫϥε໊ͱͨ͠ΫϥεΛஔ͘ʢݫີͳ໋໊نଇͳ͍Ͱ͢ʣ !app\Listeners Πϕϯτ͝ͱͷॲཧʢϦεφʔʣͱsubscribeϝιουͷ࣮ʢޙड़ʣ͠ ͨΫϥεΛஔ͘ !app\Providers ΠϕϯτߪಡͰ༻͢ΔϦεφʔΛొ͢ΔΫϥεΛஔ͘
!app\Controllers EventΛݺͼग़͢ίϯτϩʔϥʔ͓ΑͼϝιουΛ༻ҙ͓ͯ͘͠
1 4 ࣮खॱ EventServiceProviderʹΠϕϯτΛ هࡌ ϓϩδΣΫτ࡞͔࣌Β༻ҙ͞Ε͍ͯΔ EventServiceProvider.phpͷ$listen෦ʹ ࿈ྻͷܗࣜͰɺ Πϕϯτ(key) =>
Ϧεφʔ(value)ͷΑ͏ ʹهࡌͯ͠ΠϕϯτͱϦεφʔΛొ͢ Δɻ
1 5 ࣮खॱ
1 6 ࣮खॱ ΠϕϯτϑΝΠϧΛઃఆ !શһʹΒͤΔ ( App\Events\PublicAlertCreated )
1 7 ࣮खॱ ϦεφʔϑΝΠϧΛઃఆ !શһʹΒͤΔ ( App/Listeners/SendPublicAlert.php )
1 8 ࣮खॱ ίϯτϩʔϥͰΠϕϯτൃՐ !શһʹΒͤΔ ( App\Http\Controllers/HomeController.php )
1 9 ͜ͷॲཧͰͷ ొϢʔβશһͷϝʔϧͷૹ৴ॲཧˍ5000ճͷΫΤϦऔಘ͕ऴΘ͔ͬͯΒϨεϙϯε ͕ฦͬͯ͘ΔͷͰɺʮϝʔϧྃ ϝʔϧΛૹΓ·ͨ͠ʂʯͷද͕ࣔදࣔ͞ΕΔͷϘλ ϯΛԡ͔ͯ͠Β͠Β͘ܦ͔ͬͯΒʹͳΔɻ ຊ൪ͷΞϓϦέʔγϣϯͰೋॏߘΛࢭ͢ΔॲཧͳͲ͕ೖ͍ͬͯͯɺϨεϙϯε͕ ฦͬͯ͘Δ·ͰϢʔβʔ͕ϘλϯΛԡͤͳ͍͜ͱ͋ΔͩΖ͏ɻ ૹ৴ྃͷ͓Βͤද͕ࣔදࣔ͞ΕΔ͕࣌ؒɺૹ৴Ϣʔβʔʹґଘ͢Δͱ͍͏ͷϢʔ
βʔʹͱ͔ͬͯΓͮΒ͍ͨΊɺૹ৴Ͱ͖͍ͯͳ͍ͱצҧ͍ͯ͠࿈ͯ͠͠·͏ਓ͍ Δ͔͠Εͳ͍ɻ
2 0 ͦ͜ͰΩϡʔͷొ ͜ͷʮ͋ͱɺͦͬͪͰΑΖ͘͠ʯํࣜͷ͜ͱΛɺΩϡʔͱݺͿɻͪ ߦྻͱ͍͏ҙຯͩɻ ϢʔβʔࣗͷΘΓʹɺখਓͨͪΛྻʹฒͤͯখแΛ32ݸൃૹ͞ ͤΒΕΔɻ͜ͷখਓͷ͜ͱΛϫʔΫδϣϒͱݺͿɻ ΩϡʔΛ͏ʹɺখਓΛฒͤΔͨΊͷςʔϒϧ͕ඞཁͩɻ
2 1 Ωϡʔͷઃఆํ๏
2 2 Ωϡʔͷઃఆํ๏
2 3 Ωϡʔͷઃఆํ๏
2 4 Ωϡʔͷઃఆํ๏
2 5 Ωϡʔͷઃఆํ๏
2 6 ͪߦྻͰ͏·ͬͯ͘͘ΕͯΔ
2 7 ࢀߟจݙ !Laravel5.4ͰΠϕϯτˍΩϡʔΛͬͯϝʔϧΛΩϡʔૹ৴͢Δखॱ http://arm4.hatenablog.com/entry/2017/09/11/183610
2 8 githubʹιʔε্͛·ͨ͠ https://github.com/bumptakayuki/Mailable_Test_Laravel