Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
phper-monitoring
soudai sone
March 10, 2018
Technology
6
7.1k
phper-monitoring
PHPerKaigi2018の登壇資料です。
https://phperkaigi.jp/2018/proposal/b4aba719-f98e-4f92-9cc2-3b682540fbfd
soudai sone
March 10, 2018
Tweet
Share
More Decks by soudai sone
See All by soudai sone
soudai
1
490
soudai
7
3.3k
soudai
1
340
soudai
0
500
soudai
1
390
soudai
13
11k
soudai
5
3.6k
soudai
2
630
soudai
10
4.5k
Other Decks in Technology
See All in Technology
pinboro
0
2.2k
nkjzm
1
850
sasakendayo
2
430
fujiihda
8
1.1k
cmwatanabeseigo
0
350
noir_neo
0
130
ray_30cm_ns
0
280
oracle4engineer
0
2.7k
opdavies
0
1.6k
greymd
0
620
clustervr
0
200
line_developers
PRO
0
150
Featured
See All Featured
chriscoyier
499
130k
cherdarchuk
71
260k
brad_frost
156
6.4k
zenorocha
297
40k
destraynor
146
19k
roundedbygravity
241
21k
3n
163
22k
samanthasiow
56
6.3k
erikaheidi
13
4.2k
paulrobertlloyd
71
1.4k
sachag
267
17k
chriscoyier
683
180k
Transcript
ࠓ͔ΒͰग़དྷΔ! WebαʔϏεϞχλϦϯά!! 1)1FS,BJHJ
None
ࠓ͔ΒͰग़དྷΔ! WebαʔϏεϞχλϦϯά!! 1)1FS,BJHJ
ಉҰͷ༰Ͱ͋Γ·ͤΜ
PHPerͷͨΊͷ WebαʔϏεϞχλϦϯά!!! 1)1FS,BJHJ
What is it? ϞχλϦϯάͯ͠·͔͢ʁ
What is it? ͳͥϞχλϦϯά͕ඞཁ͔
What is it? 1. ૉૣ͘োʹؾͨ͘Ί 2. ૉૣ͘োݪҼΛڀ໌͢ΔͨΊ 3. γεςϜͷৼΔ͍Λ༧ଌ͠ɺະવ ʹোΛ͙ͨΊ
Լʹߦ͘΄ͲΑΓਫ਼ͷߴ͍ࢹ͕ඞཁ
What is it? ࠓΛ͠ͳ͍͜ͱ
What is it? γεςϜϝτϦοΫεͷ ʢCPUͱ͔Memoryͷͷݟํʣ
http://soudai.hatenablog.com/entry/2017/09/26/080117
What is it? σʔλϕʔεͷࢹͷ
ݕࡧϫʔυ ͦʔ͍ͩͳΔΒ͕͖͘ா ʴ PostgreSQLͷࢹ MySQLͷࢹ InnoDBͷࢹ
What is it? ࠓ͓͢Δ͜ͱ
What is it? WebαʔϏεʴPHPͷࢹ
ࠓ͔ΒͰग़དྷΔ! WebαʔϏεϞχλϦϯά!!!
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹWebαʔϏεΛݟΔ ̏ɹϞχλϦϯάͷצॴ ̐ɹPHPͷϞχλϦϯά ̑ɹ·ͱΊ
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹWebαʔϏεΛݟΔ ̏ɹϞχλϦϯάͷצॴ ̐ɹPHPͷϞχλϦϯά ̑ɹ·ͱΊ
ࣗݾհ ໊લɿીࠜɹେʢͦͶɹ͚ͨͱʣ ྸɿ33ࡀʢࡾਓͷࢠڙ͕͍·͢ʣ ৬ۀɿCustomer Reliability Engineering ॴଐɿגࣜձࣾ ͯͳʢMackerelνʔϜʣ ɹɹɹຊPostgreSQLϢʔβձ ɹɹɹɹɹɹ
ษڧձ୲ ɹɹٕज़తʹLLܥݴޠͱ͔RDB͕͖Ͱ͢
ࣗݾհ ໊લɿીࠜɹେʢͦͶɹ͚ͨͱʣ ྸɿ33ࡀʢࡾਓͷࢠڙ͕͍·͢ʣ ৬ۀɿCustomer Reliability Engineering ॴଐɿגࣜձࣾ ͯͳʢMackerelνʔϜʣ ɹɹɹຊPostgreSQLϢʔβձ ɹɹɹɹɹɹ
ษڧձ୲ ɹɹٕज़తʹLLܥݴޠͱ͔RDB͕͖Ͱ͢
Mackerel
ͯͳؒΛ୳ͯ͠·͢ curl -sIL mackerel.io | grep engineer
ͯͳؒΛ୳ͯ͠·͢ curl -sIL mackerel.io | grep engineer ͜Εͩͱ$3&ग़ͯ͜ͳ͍ͷͰHSFQDSF͍ͯͩ͘͠͞ʂʂ
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹWebαʔϏεΛݟΔ ̏ɹPHPͷϞχλϦϯά ̐ɹϞχλϦϯάͷצॴ ̑ɹ·ͱΊ
WebαʔϏεΛݟΔ 8FCαʔϏεੜ͖
WebαʔϏεΛݟΔ 8FCαʔϏεੜ͖ ˣ ͔ͩΒৗʹมԽ͍ͯ͠Δ
WebαʔϏεΛݟΔ 8FCαʔϏε͍͠
WebαʔϏεΛݟΔ 8FCαʔϏε͍͠ ˣ ৭ΜͳཁૉͷӨڹΛड͚Δ
WebαʔϏεΛݟΔ ͔ͩΒϞχλϦϯά͕ඞཁ
%/4 #(1 *41 WebαʔϏεΛݟΔ αʔό ωοτϫʔΫ ΞϓϦέʔγϣϯ ௨৴ৗʹԟདྷ͍ͯ͠Δ ΫϥΠΞϯτ Πϯλʔωοτ
αʔόαΠυ
%/4 #(1 *41 WebαʔϏεΛݟΔ αʔό ωοτϫʔΫ ΞϓϦέʔγϣϯ ௨৴ৗʹԟདྷ͍ͯ͠Δ ΫϥΠΞϯτ Πϯλʔωοτ
αʔόαΠυ
%/4 #(1 *41 WebαʔϏεΛݟΔ αʔό ωοτϫʔΫ ΞϓϦέʔγϣϯ ௨৴ৗʹԟདྷ͍ͯ͠Δ ΫϥΠΞϯτ Πϯλʔωοτ
αʔόαΠυ ࠷Θ͔Γ͍͢ྖҬ ϞχλϦϯά͢Δ͜ͱͰαʔϏεͷঢ়ଶΛΔ
%/4 #(1 *41 WebαʔϏεΛݟΔ αʔό ωοτϫʔΫ ΞϓϦέʔγϣϯ ௨৴ৗʹԟདྷ͍ͯ͠Δ ΫϥΠΞϯτ Πϯλʔωοτ
αʔόαΠυ ࠷Θ͔Γ͍͢ྖҬ ϞχλϦϯά͢Δ͜ͱͰαʔϏεͷঢ়ଶΛΔ ϞχλϦϯάʹΑΔޮՌ͕ग़͍͢
%/4 #(1 *41 WebαʔϏεΛݟΔ αʔό ωοτϫʔΫ ΞϓϦέʔγϣϯ ௨৴ৗʹԟདྷ͍ͯ͠Δ ΫϥΠΞϯτ Πϯλʔωοτ
αʔόαΠυ
%/4 #(1 *41 WebαʔϏεΛݟΔ αʔό ωοτϫʔΫ ΞϓϦέʔγϣϯ ௨৴ৗʹԟདྷ͍ͯ͠Δ ΫϥΠΞϯτ Πϯλʔωοτ
αʔόαΠυ ίϯτϩʔϧͰ͖Δ͕ҙਤ͠ͳ͍͜ͱଟ͍
%/4 #(1 *41 WebαʔϏεΛݟΔ αʔό ωοτϫʔΫ ΞϓϦέʔγϣϯ ௨৴ৗʹԟདྷ͍ͯ͠Δ ΫϥΠΞϯτ Πϯλʔωοτ
αʔόαΠυ ίϯτϩʔϧͰ͖Δ͕ҙਤ͠ͳ͍͜ͱଟ͍ ϞχλϦϯά͠ͳ͍ͱݪҼٻग़དྷͳ͍
%/4 #(1 *41 WebαʔϏεΛݟΔ αʔό ωοτϫʔΫ ΞϓϦέʔγϣϯ ௨৴ৗʹԟདྷ͍ͯ͠Δ ΫϥΠΞϯτ Πϯλʔωοτ
αʔόαΠυ
%/4 #(1 *41 WebαʔϏεΛݟΔ αʔό ωοτϫʔΫ ΞϓϦέʔγϣϯ ௨৴ৗʹԟདྷ͍ͯ͠Δ ΫϥΠΞϯτ Πϯλʔωοτ
αʔόαΠυ զʑͰίϯτʔϧग़དྷͳ͍ྖҬ
%/4 #(1 *41 WebαʔϏεΛݟΔ αʔό ωοτϫʔΫ ΞϓϦέʔγϣϯ ௨৴ৗʹԟདྷ͍ͯ͠Δ ΫϥΠΞϯτ Πϯλʔωοτ
αʔόαΠυ զʑͰίϯτʔϧग़དྷͳ͍ྖҬ ͔ͩΒͦ͜ϞχλϦϯά͕େࣄ
WebαʔϏεΛݟΔ αʔόαΠυ w 04 w ωοτϫʔΫ w ϛυϧΣΞ w ΞϓϦέʔγϣϯʜFUD
WebαʔϏεΛݟΔ ΞϓϦέʔγϣϯ w ϓϩηε w εϨου w 'SBNFXPSL w ϩδοΫʜFUD
WebαʔϏεΛݟΔ ΫϥΠΞϯταΠυ w ϒϥβ w +BWB4DSJQU w ϓϩτίϧ w ωοτϫʔΫʜFUD
WebαʔϏεΛݟΔ Πϯλʔωοτ w ϨΠςϯγʔ w εϧʔϓοτ w ϨεϙϯεʜFUD
WebαʔϏεΛݟΔ ͦΕͧΕͷৼΔ͍ΛՄࢹԽ͢Δ
WebαʔϏεΛݟΔ
WebαʔϏεΛݟΔ 8FCαʔϏεੜ͖
WebαʔϏεΛݟΔ 8FCαʔϏεੜ͖ ˣ αʔϏεࣗମՄࢹԽ͢Δ
WebαʔϏεΛݟΔ αʔϏεͷՄࢹԽ w 17๚ w μϯϩʔυ w Ϣʔβͷར༻ྔ w Ϋϥυྉۚͷ՝ۚྔʜFUD
WebαʔϏεΛݟΔ
WebαʔϏεΛݟΔ αʔϏεͷมԽ γεςϜͷมԽͱ૬ؔ
WebαʔϏεΛݟΔ ͔ͩΒ8FCαʔϏεΛݟΔ
WebαʔϏεΛݟΔ ͔ͩΒ8FCαʔϏεΛݟΔ ˣ ϞχλϦϯά͢Δ
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹWebαʔϏεΛݟΔ ̏ɹϞχλϦϯάͷצॴ ̐ɹPHPͷϞχλϦϯά ̑ɹ·ͱΊ
ϞχλϦϯάͷצॴ Γ͍ͨ͜ͱԿͳͷ͔ʁ
ϞχλϦϯάͷצॴ Γ͍ͨ͜ͱԿͳͷ͔ʁ ˣ αʔϏε͕ਖ਼͘͠ಈ͍͍ͯΔ͔
ϞχλϦϯάͷצॴ γεςϜͷϞχλϦϯά ϦιʔεΛਖ਼͑ͯ͘͠Δ͔
ϞχλϦϯάͷצॴ γεςϜͷϞχλϦϯά ϦιʔεΛਖ਼͑ͯ͘͠Δ͔ Ϧιʔε͕ෆͯ͠༨Βͯ͠ବ
ϞχλϦϯάͷצॴ ҙਤ͠ͳ͍ڍಈʹؾ͘
ϞχλϦϯάͷצॴ αʔϏεͷมԽͷػඍʹؾ͘
ϞχλϦϯάͷצॴ αʔϏεͷมԽͷػඍʹؾ͘ ˣ มԽͷ͕ࠩ͋Δ͔Βؾ͚Δ
ϞχλϦϯάͷצॴ ౿ΈࠐΜͩγεςϜͷՄࢹԽ w ࣮ߦCBUDIͷδϣϒ w Ωϡʔ w อଘ͞ΕͯΔը૾ w %/4/51ͷঢ়ଶ
ϞχλϦϯάͷצॴ ౿ΈࠐΜͩαʔϏεͷՄࢹԽ w ϢʔβͷϓϨΠঢ়گ w Πϯετʔϧ͞Εͨ04 w Ϣʔβͷݕࡧϫʔυ w ਃ͠ࠐΈϘλϯͷΫϦοΫ
ϞχλϦϯάͷצॴ γεςϜͷঢ়ଶΛՄࢹԽ͢Δ
ϞχλϦϯάͷצॴ αʔϏεͷৼΔ͍ΛՄࢹԽ͢Δ
ϞχλϦϯάͷצॴ ୭ݟͳ͍άϥϑʹҙຯແ͍
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹWebαʔϏεΛݟΔ ̏ɹϞχλϦϯάͷצॴ ̐ɹPHPͷϞχλϦϯά ̑ɹ·ͱΊ
PHPͷϞχλϦϯά 1)1ͷৼΔ͍ΛΔ
PHPͷϞχλϦϯά 1)1ͷৼΔ͍ΛΔ ˣ ਖ਼͠͞ΛΒͳ͍ͱ ؒҧ͍ʹؾ͚ແ͍
PHPͷϞχλϦϯά 1)1ͷΈΛΔ
PHPͷϞχλϦϯά ϓϩηεͱ1)1
PHPͷϞχλϦϯά Πϕϯτͱ1)1
PHPͷϞχλϦϯά 8FCαʔόΞʔΩςΫνϟং Ώ͏͏͖ϒϩά IUUQCMPHZVVLJPFOUSZXFCTFSWFSBSDIJUFDUVSF
PHPͷϞχλϦϯά 1)1ͱΩϟογϡ
PHPͷϞχλϦϯά 01$BDIFͱ"1$V
PHPͷϞχλϦϯά 01$BDIFίʔυΩϟογϡ "1$VσʔλΩϟογϡ
PHPͷϞχλϦϯά Ͳ͏ͬͯݟΔ͔ʁ
PHPͷϞχλϦϯά "1$Vίϯτϩʔϧύωϧ IUUQTHJUIVCDPNLSBLKPFBQDV
PHPͷϞχλϦϯά 0QDBDIF$POUSPM1BOFM IUUQTHJTUHJUIVCDPNDLPO
PHPͷϞχλϦϯά "QBDIF "QBDIF4FSWFS4UBUVT
PHPͷϞχλϦϯά /(*/9 OHJOY@TUBUVT
PHPͷϞχλϦϯά ݕࡧϫʔυ ͦʔ͍ͩͳΔམॻ͖ா ʴ "QBDIFcc/(*/9 ͷࢹ
PHPͷϞχλϦϯά ͜ΕΒͷαʔϏεΛݟΔ
PHPͷϞχλϦϯά ͜ΕΒͷαʔϏεΛݟΔ ˣ ৗʹݟଓ͚ΔΘ͚ʹߦ͔ͳ͍
PHPͷϞχλϦϯά ࣌ܥྻͰσʔλΛ࣋ͭ
PHPͷϞχλϦϯά ࣌ܥྻͰσʔλΛ࣋ͭ ˣ ͦͷมԽΛఆظతʹݟΔ
ϞχλϦϯάͷצॴ ౿ΈࠐΜͩγεςϜͷՄࢹԽ w ࣮ߦCBUDIͷδϣϒ w Ωϡʔ w อଘ͞ΕͯΔը૾ w %/4/51ͷঢ়ଶ
ϞχλϦϯάͷצॴ ౿ΈࠐΜͩγεςϜͷՄࢹԽ w ࣮ߦCBUDIͷδϣϒ w Ωϡʔ w อଘ͞ΕͯΔը૾ w %/4/51ͷঢ়ଶ
1)1͕͏ϝϞϦྔ࣮ߦ࣌ؒؾʹͳΔ
ϞχλϦϯάͷצॴ ౿ΈࠐΜͩγεςϜͷՄࢹԽ w ࣮ߦCBUDIͷδϣϒ w Ωϡʔ w อଘ͞ΕͯΔը૾ w %/4/51ͷঢ়ଶ
ը૾αΠζͷ߹ܭ͕NFNPSZ@MJNJUʹऩ·Δʁ
ϞχλϦϯάͷצॴ ౿ΈࠐΜͩαʔϏεͷՄࢹԽ w ϢʔβͷϓϨΠঢ়گ w Πϯετʔϧ͞Εͨ04 w Ϣʔβͷݕࡧϫʔυ w ਃ͠ࠐΈϘλϯͷΫϦοΫ
ϞχλϦϯάͷצॴ ౿ΈࠐΜͩαʔϏεͷՄࢹԽ w ϢʔβͷϓϨΠঢ়گ w Πϯετʔϧ͞Εͨ04 w Ϣʔβͷݕࡧϫʔυ w ਃ͠ࠐΈϘλϯͷΫϦοΫ
"QBDIFͷNBYDMJFOUT͑ͳ͍ʁ
ϞχλϦϯάͷצॴ ౿ΈࠐΜͩαʔϏεͷՄࢹԽ w ϢʔβͷϓϨΠঢ়گ w Πϯετʔϧ͞Εͨ04 w Ϣʔβͷݕࡧϫʔυ w ਃ͠ࠐΈϘλϯͷΫϦοΫ
ͲΕ͘Β͍ͷ42-͕࣮ߦ͞ΕΔʁ
PHPͷϞχλϦϯά 1)1ͱαʔϏεͷৼΔ͍ දཪҰମ
PHPͷϞχλϦϯά ͔ͩΒͦ͜ϞχλϦϯά͢Δ
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹWebαʔϏεΛݟΔ ̏ɹϞχλϦϯάͷצॴ ̐ɹPHPͷϞχλϦϯά ̑ɹ·ͱΊ
·ͱΊ ·ͣՄࢹԽΛ͢Δ
·ͱΊ μΠΤοτମॏܭʹΔ͠ɺ ݈߁அ݂ѹͳͲΛܭଌ͢Δ
·ͱΊ μΠΤοτମॏܭʹΔ͠ɺ ݈߁அ݂ѹͳͲΛܭଌ͢Δ 8FCαʔϏεҰॹ
·ͱΊ ਪଌΑΓܭଌ
·ͱΊ ਪଌΑΓܭଌ ↓ ܭଌΑΓ؍ଌ
·ͱΊ ࣄ࣮ΛΑΓଟ͘ɺਖ਼͘͠Δ͜ͱͰ ະདྷΛਖ਼͘͠༧ଌͰ͖Δ
https://papix.hatenablog.com/entry/2018/03/03/112532
None
·ͱΊ ΤϯδχΞʹࠜڌ͕ඞཁ
·ͱΊ ΤϯδχΞʹࠜڌ͕ඞཁ ↓ ͳΜͱͳ͘Ͱࣄग़དྷͳ͍
·ͱΊ
·ͱΊ
·ͱΊ
·ͱΊ ςετίʔυϓϩάϥϜͷ࣭ͷՄࢹԽ ϞχλϦϯάαʔϏεͷ࣭ͷՄࢹԽ
·ͱΊ lߴʹൃୡͨ͠γεςϜͷҟৗ ਆͷౖΓͱݟ͚͕͔ͭͳ͍z Z@VVLJ
·ͱΊ ମॏܭʹΔ͚ͩͰ૫ͤͳ͍
·ͱΊ ମॏܭʹΔ͚ͩͰ૫ͤͳ͍ ↓ ࣭ΛՄࢹԽ͚ͨͩ͠Ͱվળ͞Εͳ͍
·ͱΊ ΠνϩʔͷόοτΛͬͯ ΠνϩʔʹͳΕͳ͍
·ͱΊ lखΛಈ͔ͨ͠ਓ͚͕ͩੈքΛม͑Δz :BTVIJSP0OJTIJ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ