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 Job Queueで バッチ運用した話
Search
Takayuki
June 07, 2019
Programming
2
650
Laravel Job Queueで バッチ運用した話
Laravel Job Queueでバッチ運用した話
Takayuki
June 07, 2019
Tweet
Share
More Decks by Takayuki
See All by Takayuki
地方カンファレンス主催のススメ
bumptakayuki
1
110
Laravelで敢えて試す脆弱性のある書き方
bumptakayuki
1
370
地方でのPHPエンジニア採用って実際どうなの?
bumptakayuki
0
390
沖縄観光、名物を一挙紹介!
bumptakayuki
2
400
Laravel ShiftでLaravelのバージョンアップしてみた話
bumptakayuki
1
1.1k
flutterでイベントアプリを作ってみた
bumptakayuki
0
91
オフショア開発の辛みと学んだ事
bumptakayuki
0
310
ChatGPTにStripeのサンプルコードを書かせてみた
bumptakayuki
1
130
ChatGPTに記事を書かせてみた
bumptakayuki
1
200
Other Decks in Programming
See All in Programming
Ruby Function Composition
bkuhlmann
1
340
VS Code をプロダクトにどう取り込むか
onomax
1
640
初心者のためのRubyKaigi入門/RubyKaigi Introduction
a_matsuda
8
1.4k
Snowflakeで眠ったデータを起こそう!
estie
0
140
0→1と1→10の狭間で Javaという技術選定を振り返る/Reflecting on the Decision to Choose Java Between Scaling from 0 to 1 and 1 to 10
jaguar_imo
2
400
FigmaとPHPで作る1ミリたりとも表示崩れしない最強の帳票印刷ソリューション
ttskch
43
19k
Milestoner
bkuhlmann
1
410
Anthropic Cookbook のおすすめレシピ
schroneko
7
1.1k
CDKコントリビュートの最初の壁を越えよう! -簡単issueの見つけ方-
badmintoncryer
3
180
Ruby GitHub Packages
bkuhlmann
0
640
Apache Hive 4 on Treasure Data
ryukobayashi
1
410
Deep Dive into React Stream/Serialize
mugi_uno
3
560
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
41
4.4k
A better future with KSS
kneath
231
16k
Making the Leap to Tech Lead
cromwellryan
125
8.5k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
33
6k
Teambox: Starting and Learning
jrom
128
8.4k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
Typedesign – Prime Four
hannesfritz
36
2.1k
Building Better People: How to give real-time feedback that sticks.
wjessup
356
18k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
323
20k
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
398
65k
Clear Off the Table
cherdarchuk
85
310k
Transcript
Laravel Job QueueͰ όονӡ༻ͨ͠ Laravel Job QueueͰ όονӡ༻ͨ͠
3 όονӡ༻ͨ͠ Agenda 2 Job Queueͱ 1 ࣗݾհ
1 ࣗݾհ
4 ࣗݾհ ◆໊લ ླ ೭(Suzuki Takayuki) ◆ࣗݾհ ɾ1990ɺਆಸݝੜ·Εɻ ɾࣾձਓʹͳ͔ͬͯΒɺϓϩάϥϛϯάΛ࢝ΊΔɻ ɾ2015ʹϑϧεϐʔυʹೖࣾ͠ɺ2017ʹϑϦʔϥ
ϯεΛͬͨޙʹ201711݄ʹԭೄͰىۀɻ ◆झຯ ίεϓϨɺԻָϥΠϒɺϚϥιϯେձʹग़Δɺٿ؍ ઓ ◆Twitter @kanbo0605
Copyright Re:Build.inc All Rights Reserved. 1.ձࣾհ ◆ձ໊ࣾ גࣜձࣾRe:Build ◆ॅॴ ԭೄݝԭೄࢢதԝ̍ஸ̍̒−̕
◆ࣄۀ༰ ɾࣗࣾWEBαʔϏεͷاըɾ։ൃɻ ɾडୗ։ൃ ◆ࣾһ 5໊ ◆ΤϯδχΞͷಇ͖ํ ϦϞʔτϫʔΫՄೳͳࣗ༝ͳಇ͖ํΛਪͯ͠·͢ʂ
6 ࣗࣾWebαʔϏεͷ։ൃ ɾαʔϏε໊ Tadoru ɾγεςϜ֓ཁ Ϋϥυιʔγϯά ΫϨδοτܾࡁ ͳͲ ɾ͍ͬͯΔٕज़ ݴޠ
: PHP,JavaScript ϑϨʔϜϫʔΫ: laravel5,Nuxt.jsͳͲ
2 Job Queueͱ
8 2 Job Queueͱ δϣϒΩϡʔͱδϣϒΛΩϡʔͰཧ͢ ΔͷͰ͢ɻ ΩϡʔͱFIFO(First In First Out)Λ࣮ݱ
͢ΔσʔλߏͰ͢ɻ Ωϡʔʹొ͞ΕͨϞϊɺΩϡʔʹొ ͨ͠ॱʹॲཧ͞Ε·͢ɻ http://tech.voyagegroup.com/archives/495474.html
9
1 0
11
3 όονӡ༻ͨ͠
1 3 γεςϜͷػೳཁ݅ ɾຖɺεΫϨΠϐϯάॲཧΛ࣮ߦ ɾεΫϨΠϐϯάͨ݁͠ՌΛGoogleεϓϨουγʔτʹॻ͖ࠐΉ ɾେྔͷॲཧ͕ΔͷͰɺPHPϝϞϦΤϥʔʹͳΔՄೳੑ͕ߴ͍ ɾεϓϨουγʔτͷ݁ՌΛຖɺόοΫΞοϓ͢Δ ɾεϓϨουγʔτͷ݁ՌΛຖɺϝʔϧͰૹΔ
1 4 શମߏ εΫϨΠϐϯά αʔόαΠυ LaravelͷίϚϯ υΛ࣮ߦ औಘͨ͠σʔλΛ εϓϨουγʔτʹอଘ HTML
DOM Perser αΠτ εϓϨουγʔτ
cronͰຖே9࣌ʹ όον࣮ߦ Google ϫʔΧʔͰॱ࣮࣍ߦ εΫϨΠϐϯά ॲཧ GASͷAPIΛ࣮ߦ εΫϨΠϐϯά ͨ͠ใΛGASͷ ύϥϝʔλʹ֨ೲ
Job εΫϨΠϐϯά ॲཧ GASͷAPIΛ࣮ߦ εΫϨΠϐϯά ͨ͠ใΛGASͷ ύϥϝʔλʹ֨ೲ Job Queue εΫϨΠϐϯά ॲཧ GASͷAPIΛ࣮ߦ εΫϨΠϐϯά ͨ͠ใΛGASͷ ύϥϝʔλʹ֨ೲ Job ϫʔΧʔ ࣮ߦ݁Ռͷ εςʔλε Λฦ٫ GASͷAPI Λ࣮ߦ εϓϨου γʔτॻ͖ ग़͠ Supervisor ϫʔΧʔ͕ࢮΜͩΒ ্ཱͪ͛͢ શମߏ δϣϒΛ3ͭ࡞͠ ͨ߹
1 6 ࣮ͨ͠༰ ᶃεέδϡʔϥͷઃఆ ᶄόονίϚϯυΫϥεͷ࡞ ᶅδϣϒΩϡʔͷΈΛ࣮ ᶆGASͰεϓϨουγʔτॻ͖ࠐΈͷॲཧΛ࣮ ᶇsupervisorͷઃఆ
1 7 ᶃεέδϡʔϥͷઃఆ Kernel.phpʹே9࣌ͰόονΛಈ ͘Α͏ʹઃఆ
1 8 ᶄόονίϚϯυΫϥεͷ࡞ ίϚϯυͰͷॲཧ ɾຊͷδϣϒΩϡʔΛ٧ΊΔ ɾલͷδϣϒͷ࣮ߦ݁ՌΛϝʔ ϧͰૹΔ
1 9 ᶅδϣϒΩϡʔͷΈΛ࣮
2 0 ᶆGASͰεϓϨουγʔτॻ͖ࠐΈͷॲཧΛ࣮ PHP͔ΒύϥϝʔλΛऔಘ
2 1 ᶆGASͰεϓϨουγʔτॻ͖ࠐΈͷॲཧΛ࣮ ExcelϑΝΠϧΛ࡞ͯ͠ɺϝʔϧૹ৴
2 2 ᶆGASͰεϓϨουγʔτॻ͖ࠐΈͷॲཧΛ࣮ ExcelϑΝΠϧΛ࡞ͯ͠ɺGoogleυϥΠϒʹόοΫΞοϓ
2 3 ᶇsupervisorͷઃఆ
2 4 ࠂ 10/12 PHPΧϯϑΝϨϯεԭೄ։࠵͠·͢ʂ