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
800
Laravel Job Queueで バッチ運用した話
Laravel Job Queueでバッチ運用した話
Takayuki
June 07, 2019
Tweet
Share
More Decks by Takayuki
See All by Takayuki
Laravel × Clean Architecture
bumptakayuki
0
250
エンジニアのキャリア論
bumptakayuki
0
180
地方カンファレンス主催のススメ
bumptakayuki
1
200
Laravelで敢えて試す脆弱性のある書き方
bumptakayuki
2
1k
地方でのPHPエンジニア採用って実際どうなの?
bumptakayuki
0
640
沖縄観光、名物を一挙紹介!
bumptakayuki
2
640
Laravel ShiftでLaravelのバージョンアップしてみた話
bumptakayuki
1
2.5k
flutterでイベントアプリを作ってみた
bumptakayuki
0
160
オフショア開発の辛みと学んだ事
bumptakayuki
0
390
Other Decks in Programming
See All in Programming
エラーって何種類あるの?
kajitack
5
260
CursorはMCPを使った方が良いぞ
taigakono
0
130
Create a website using Spatial Web
akkeylab
0
290
イベントストーミングから始めるドメイン駆動設計
jgeem
4
870
Select API from Kotlin Coroutine
jmatsu
1
180
XSLTで作るBrainfuck処理系
makki_d
0
210
Team topologies and the microservice architecture: a synergistic relationship
cer
PRO
0
910
エンジニア向け採用ピッチ資料
inusan
0
140
A comprehensive view of refactoring
marabesi
0
970
複数アプリケーションを育てていくための共通化戦略
irof
10
4k
アンドパッドの Go 勉強会「 gopher 会」とその内容の紹介
andpad
0
250
GoのGenericsによるslice操作との付き合い方
syumai
2
670
Featured
See All Featured
A better future with KSS
kneath
239
17k
4 Signs Your Business is Dying
shpigford
184
22k
The Cost Of JavaScript in 2023
addyosmani
51
8.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Balancing Empowerment & Direction
lara
1
340
Designing for Performance
lara
609
69k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.4k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
920
Being A Developer After 40
akosma
90
590k
How to Ace a Technical Interview
jacobian
277
23k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Faster Mobile Websites
deanohume
307
31k
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ΧϯϑΝϨϯεԭೄ։࠵͠·͢ʂ