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
phper-monitoring
Search
soudai sone
March 10, 2018
Technology
6
8.3k
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
アプリケーションが 正しく動作するということ - 自動テスト編 / Automated Testing
soudai
11
2.4k
Gitlab本から学んだこと - そーだいなるプレイバック / gitlab-book
soudai
8
1.6k
**強い**エンジニアのなり方 - フィードバックサイクルを勝ち取る / grow one day each day
soudai
73
25k
マルチテナントの実現におけるDB設計とRLS / Utilizing RSL in multi-tenancy
soudai
26
7.2k
キャッシュと向き合う、キャッシュと共に生きる / cache pattern
soudai
32
12k
RDBアンチパターンと戦う - 削除フラグ 完全攻略ガイド / delete flag
soudai
27
17k
コミュニティと共に生きる - キャリアの螺旋 / live with community
soudai
7
5.1k
今年1年間の”アウトプット”を振り返る / soudai's output - 2023
soudai
13
2.1k
「GitLabに学ぶ 世界最先端のリモート組織のつくりかた」の輪読会のススメ - そーだいなる輪読会キックオフ / soudai-kickoff
soudai
0
340
Other Decks in Technology
See All in Technology
データ分析を支える技術 生成AI再入門
ishikawa_satoru
0
380
Git 研修 Basic【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
310
What if...? 처음부터 다시 LLM 어플리케이션을 개발한다면
huffon
0
1k
[2024最新版]AWS Control Towerを使ったセキュアなマルチアカウント環境の作り方
hiashisan
0
270
エンジニア向け会社紹介資料
caddi_eng
14
220k
20240724_cm_odyssey_hibiyatech
hiashisan
0
110
AI研修【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
130
DDDにおける認可の扱いとKotlinにおける実装パターン / authorization-for-ddd-and-kotlin-implement-pattern
urmot
4
390
目標設定は好きですか? アジャイルとともに目標と向き合い続ける方法 / Do you like target Management?
kakehashi
10
3k
エンジニアリングマネージャーはどう学んでいくのか #devsumi / How Do Engineering Managers Continue to Learn and Grow?
expajp
4
1.3k
How to Think Like a Performance Engineer
csswizardry
4
590
テスト・設計研修【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
170
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
18
2.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
19k
The Invisible Customer
myddelton
117
13k
Adopting Sorbet at Scale
ufuk
71
8.8k
Product Roadmaps are Hard
iamctodd
PRO
48
10k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
26
1.8k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Design by the Numbers
sachag
277
18k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
26
1.6k
Fireside Chat
paigeccino
25
2.8k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.4k
The Mythical Team-Month
searls
217
43k
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
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ