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
技術基盤/SREの視点で取り組む、サービスの成長を継続し、加速させるためのPHPアプリケーション改善
Search
Arakaki Yuji
October 12, 2019
Programming
0
1.3k
技術基盤/SREの視点で取り組む、サービスの成長を継続し、加速させるためのPHPアプリケーション改善
Arakaki Yuji
October 12, 2019
Tweet
Share
More Decks by Arakaki Yuji
See All by Arakaki Yuji
私の選ぶ開発環境: Raycast, Vivaldi, Warp, Emacsを活用したワークフロー
ug
0
950
2週間に一度からリリースを日々の当たり前にするエンジニアリングマネジメント
ug
0
1.2k
レガシーフレームワークからの移行
ug
0
360
データ指向プログラミング(仮)のススメ
ug
1
470
プログラミング言語に依存しない、質の高いコードを書く技術
ug
0
2.1k
Issues About frontend development
ug
0
2.5k
Azure web app is good
ug
0
390
sponser session by payke in hackers champloo 2019
ug
0
610
introduction about MySQL
ug
0
150
Other Decks in Programming
See All in Programming
データサイエンスのフルサイクル開発を実現する機械学習パイプライン
xcnkx
2
500
標準ライブラリの動向とイテレータのパフォーマンス
makki_d
3
200
タイミーにおけるデータの利用シーンと データ基盤の挑戦
marufeuille
4
3.2k
CSC509 Lecture 03
javiergs
PRO
0
140
複数プロダクトの技術改善・クラウド移行に向き合うチームのフレキシブルなペア・モブプログラミングの実践 / Flexible Pair Programming And Mob Programming
honyanya
0
210
推しの夫に恋のGPS「ときメーター」#M5Stack #IoT #M5JPTour2024
riyu
0
230
コードレビューと私の過去と未来
jxmtst
0
260
Remix × Cloudflare Pages × Sentry 奮闘記 / remix-pages-sentry
nkzn
1
400
NEWTにおけるiOS18対応の進め方
ryu1sazae
0
230
선언형 UI를 학습할 때 알아둬야하는 키워드들
l2hyunwoo
0
140
AWS認定資格を受験するにあたり、気づいたこと・実践していたことのまとめ
satoshi256kbyte
1
120
Cloud Adoption Frameworkにみる組織とクラウド導入戦略(縮小版)
tomokusaba
1
180
Featured
See All Featured
Statistics for Hackers
jakevdp
796
220k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
249
21k
Bash Introduction
62gerente
608
210k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
167
49k
4 Signs Your Business is Dying
shpigford
180
21k
Build The Right Thing And Hit Your Dates
maggiecrowley
31
2.3k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
The Invisible Side of Design
smashingmag
297
50k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
A designer walks into a library…
pauljervisheath
202
24k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
110
6.9k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
32k
Transcript
©Payke, Inc.All rights reserved. #-(/SRE.' *"0 +,/ PHP
$ & ) Payke #-( %1!
©Payke, Inc.All rights reserved. 2 6)4% • /' 9- (
) • Twitter: @arakaji • 0,&3Payke • .7(2" • ! • CODEBASE & Lagoon !"8* • Java Kueche • JAZUG 15 ($+# :;
©Payke, Inc.All rights reserved. 3 .YN` N` .Y6 LF.YPayke bZ
2014D11I26H -_4\G 5T Af )M/B aH>;+7# % PaykelW$g: / Sd$98lW#! # OKINAWA OFFICEnJYo 904-0115 P]X2cU^Q1-2-15 TOKYO OFFICE 107-0052 K*jR3e<1-9-13 &.=!4F OSAKA OFFICE 541-0042 ?mE?mC(@3,O2-3-16 THE LINKS KITAHAMA/ Forbes 30 Under 30 Asia 2019 #%% "%ik h0 H[ 2019D2I4H 'V1HJ+ 50+ h0
©Payke, Inc.All rights reserved. 4 Payke$ Payke 47/. &&
% /.81 3EHCA G:20)-"%&$ $=D 47/.9 35 '/.*( BF!&&9 400 ')*( AppStore#%% ,?I> 1 + 201752<6;@ 201958<6;@
©Payke, Inc.All rights reserved.
©Payke, Inc.All rights reserved. 6 - • Payke=J:B;6 • 02F1
• $+.',. PHP".)- & • )%(.:B5@D • & (LC/EK3 /E?O8 .!.* • .#GHA>9 <N7M 4I
©Payke, Inc.All rights reserved. Payke
©Payke, Inc.All rights reserved. 8 Payke G5<> • 3
" • B$G5 • 0E0E )(B$G5@ • *A%7 • CTO' (E?2,6 F/68= *A6DHC3 • 9:G5 • CTO' (Payke + !.&# -41;
©Payke, Inc.All rights reserved. 9 Payke G5<> • 3
" • B$G5 • 0E0E )(B$G5@ • *A%7 • CTO' (E?2,6 F/68= *A6DHC3 • 9:G5 • CTO' (Payke + !.&# -41;
©Payke, Inc.All rights reserved. 1 XdN`/B9^!q • Payke)B5,Wl"Kk eMn_kU
• LT1TH"fg\ !ipP • 70*;ja[V]#&-,O"QR Y,(B=5>1$bF 46%B8A,/;B2A' • PHP6?B9@B&3B+<A#07 • PHP 5.6c • :2.>A'DJZG • etc • eMn_/B9"Io Chip"g\ Sm/B9" E
©Payke, Inc.All rights reserved. 1
©Payke, Inc.All rights reserved. PHP
©Payke, Inc.All rights reserved. /6:27:&9PHP.:(48#*0BP • 2018@9DCHPHP.:(485.6 • @F5.6M)%35+$:#*0,:-ER> ;!
• <ANOLQK"O PHP.:(48#*0BS IG • ?J /6:27:&FuelPHP.:(481.7M • 1.7MPHP7M'1:- 7"=1.8#*0, :-BP
©Payke, Inc.All rights reserved. +6-A.e • 5>A7?A$+6-A. → PHP+6-A.j
• +6-A.WRb BC& @ • 2A(;@hPI#9+*+62A(;@+6 \U `QKX • :1+.,).Hg3) • &A4)K !<Ac`Q(,).%A) F) • fVSD8@2A+6-A.OTMJ • &A4)[^iLE'0=",).%A)FV()6>+/'A.) • aN,). • !<A_] +6-A.WRdY GZ
©Payke, Inc.All rights reserved. 3, 9 • FuelPHP1.81
→ 22+% • PHP 7.21 → 21+% • () • $' # • &6*804 • PHP7.21 -5 ! 7/".#
©Payke, Inc.All rights reserved.
©Payke, Inc.All rights reserved. (62#4:<NVGZd • Payke&:/:&".PHPc?L=OK` JC =ODY
)%(4:7;W NV • MySQLschdules-:28 DY K` JC (62 T^ • )%(4:7Q39*)schedules [DYK`M+)$ [DY ;W • 5:':!$*)B(62T^B9,$FSP bE >A • 9,$F @] (62DY)1:.1U1@aR • &:0)I_)%(4:7HX\
©Payke, Inc.All rights reserved. /*.57ADF • ! .50()5+4!'#
/*9?=F / * • 4&CJ?-52I6 • <;GEAPI: 3%5"@H • ! .50 89?=F /*> /*.5!$, AD • AzureQueue StorageB /*.50*01 • https://github.com/Arakaki-Yuji/backjob
©Payke, Inc.All rights reserved. HC • Azure Queue Storage*("3)
1(" %/,K9: 7 J • %/,6E 24 4-1'&= 1GM6E %/, B= 5;I • $4+&AL%/,!.4<F • &#%.401("@N?>D A8
©Payke, Inc.All rights reserved.
©Payke, Inc.All rights reserved. /,'4ka=cjB\e":-(%:8 Qiq • ?DPayke5:&:@R)$39-M /,'4kajB
\emIb^_oLh] • jB1+9U /,'4ka jB >[ • /,'4kaYkNYWC #)( Z/,'4kajBV PTgK` ldFGjBYnG!9.6(%:79 $f • ?;Hp • OXX< /,'4kajB • AX!09-Gj • 5:&:+!2*:9Gj • SE(%:79$ TgK`Yn J
©Payke, Inc.All rights reserved. *$ /TM9NS<GP 5'!51U W • PaykeFKIB
Azure=J • PaykeF;VM7 +!' • Application Gateway L725()035>HVO • Payke3(.&(Payke 0-)Azure Web App7 +!' • D? :8!51'4$* • Application Gateway" 3!'51E • VME • Azure Web App3!#3!E • AzureCLI%51 az ,3( 6L RCAP Q?@
©Payke, Inc.All rights reserved. (&")D>/?C1:@.'$!.,EH • ;(&")D>/?C1:@4B • 9G63 %$
4A$!#).*0 • (&")D>/? $!#).*/?9G%$ <F 9G$!#).*%$ 4A(&")D>C1 • $!#).*2= 571~284B-++.$A
©Payke, Inc.All rights reserved. %!'B<-=A.8> ," ,)C F • 9Payke/+$(
,)" 16 Web API 4? • API3 %!'B<-=7E A.5:D2A. % !'B<7E0,#, ,)" 16 * &+ @ • ," ,)4;
©Payke, Inc.All rights reserved. 3,*6aX=[`BS^%<.+(<9 bd • '7$/ZVW)<1 YCronDWeb API
F • :+4;+]R+(<9"$. ON >E@ +(<9"$.W+'83.#;27 +(<9"$. • :+4;+]R0<59#;27 +(<9#; +'8 3. K_ CM • )<1IQTL(0<59 or +(<9"$.) -&+.2!#9AJ Web API]R H ? • \G • 3,*6aX=[`B • `BPcG#;27%<.+(<9 KU
©Payke, Inc.All rights reserved. %" 'NC,DM/=G+#!+) E; P • %"
'NC0 *$(J9.<6I2AO8 • %" 'NC74F6I2ABK?L%" 'NC#( • %" 'NCM/5 ><@ • 1:H&*#3 %" 'NC -:.<M/
©Payke, Inc.All rights reserved.
©Payke, Inc.All rights reserved. NFfqg%ly;4A72,%yk" • ^vPpV8.7/%`"NFf}]Y • #8.7/%J
u • NFf} K"qg(&,3'9?D-DaTt&*(C4a)w O~nBD5<2:%ly#!qg%|\"E^vo;4A72 ,"s]%X K;4A72,%yi" h!#" • )C.6& U =0C~nmQ,@(5^v%I&D +3,1>Rc#$ • ^vPpjMHr !x _{jMZ"_{WLe %G lyKd"[zb " SF
©Payke, Inc.All rights reserved. ;FK?HK*JPHP%3<5K6SR • PHP5.61)BE4&@I47I/q#" ! PHP5.6$ Nn
! xUpWZt ,K:/mn ! E/*$] ! • Lawkb `,K:/\Ud"!;'K0 "$_ !(I.8%^h MQ!(I.8%Q n Lxs • 1)BE4&@I47I/q#"9K.CI<G+D>I+u v$N A2=K-CIyifgZU X}!^h {ozcM9K.CI%3<$! |VU OP ! • mnjyieT$ [Yrl
©Payke, Inc.All rights reserved. "2+07<LS?> • /)5,4G[PM XA &+17!7H;W J@#"073FT8\C
KO • FT8\ 7*#]B 17!7ND .7&6 $5ZU9YG[-'5(%=TF^ • FT8\RQ I "2+07:EV
©Payke, Inc.All rights reserved. %!'YP/QX6 -#-+@; • %!'YP]Z ,$*UH3KI\ FS?OI\><=
W • (--",),LD . %!'YPX6^BX6 &,J[:ET • /QX6 -#-+AM • FS?O257N8 10VC • %!'YPX6R9: ?OG4
©Payke, Inc.All rights reserved. ".*% CDA;3 7J 2I •
F1#%',:=6L? >H • *$)%8@/7JB< >H F1#%',L?+(-) &!5E • 9G".*%7J K4 2I 0 E
None