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
820
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
370
エンジニアのキャリア論
bumptakayuki
1
210
地方カンファレンス主催のススメ
bumptakayuki
1
220
Laravelで敢えて試す脆弱性のある書き方
bumptakayuki
2
1.1k
地方でのPHPエンジニア採用って実際どうなの?
bumptakayuki
0
680
沖縄観光、名物を一挙紹介!
bumptakayuki
2
680
Laravel ShiftでLaravelのバージョンアップしてみた話
bumptakayuki
1
2.8k
flutterでイベントアプリを作ってみた
bumptakayuki
0
160
オフショア開発の辛みと学んだ事
bumptakayuki
0
400
Other Decks in Programming
See All in Programming
明日から始めるリファクタリング
ryounasso
0
140
Writing Better Go: Lessons from 10 Code Reviews
konradreiche
0
1.1k
大規模アプリのDIフレームワーク刷新戦略 ~過去最大規模の並行開発を止めずにアプリ全体に導入するまで~
mot_techtalk
1
440
uniqueパッケージの内部実装を支えるweak pointerの話
magavel
0
990
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
190
育てるアーキテクチャ:戦い抜くPythonマイクロサービスの設計と進化戦略
fujidomoe
1
170
Leading Effective Engineering Teams in the AI Era
addyosmani
2
320
コードとあなたと私の距離 / The Distance Between Code, You, and I
hiro_y
0
160
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
820
そのpreloadは必要?見過ごされたpreloadが技術的負債として爆発した日
mugitti9
2
3.3k
NixOS + Kubernetesで構築する自宅サーバーのすべて
ichi_h3
0
700
ALL CODE BASE ARE BELONG TO STUDY
uzulla
13
1.7k
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1032
470k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Docker and Python
trallard
46
3.6k
Become a Pro
speakerdeck
PRO
29
5.5k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Why Our Code Smells
bkeepers
PRO
339
57k
Producing Creativity
orderedlist
PRO
347
40k
A better future with KSS
kneath
239
18k
BBQ
matthewcrist
89
9.8k
Speed Design
sergeychernyshev
32
1.2k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
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ΧϯϑΝϨϯεԭೄ։࠵͠·͢ʂ