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.5k
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
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
37
17k
目の前の仕事と向き合うことで成長できる - 仕事とスキルを広げる / Every little bit counts
soudai
30
11k
ソフトウェアエンジニアとしてキャリアの螺旋を駆け上がる方法 - 経験と出会いが人生を変える / Career-Anchor-Drive
soudai
16
4.9k
新婚19年目から学ぶ夫婦円満の正しい歩き方 / Life is beautiful
soudai
12
4.5k
顧客が本当に必要だったもの - パフォーマンス改善編 / Make what is needed
soudai
34
9.8k
仕事を前に進めるためのコツ - 判断と決断と共有 / Aim for the goal
soudai
89
61k
アプリケーションが 正しく動作するということ - 自動テスト編 / Automated Testing
soudai
17
3.5k
Gitlab本から学んだこと - そーだいなるプレイバック / gitlab-book
soudai
8
2k
**強い**エンジニアのなり方 - フィードバックサイクルを勝ち取る / grow one day each day
soudai
131
160k
Other Decks in Technology
See All in Technology
AIエージェントキャッチアップと論文リサーチ
os1ma
6
1.3k
caching_sha2_passwordのはなし
boro1234
0
220
Vision Language Modelを活用した メルカリの類似画像レコメンドの性能改善
yadayuki
9
1.3k
Multitenant 23ai の全貌 - 機能・設計・実装・運用からマイクロサービスまで
oracle4engineer
PRO
2
120
Cline、めっちゃ便利、お金が飛ぶ💸
iwamot
20
19k
チームの性質によって変わる ADR との向き合い方と、生成 AI 時代のこれから / How to deal with ADR depends on the characteristics of the team
mh4gf
4
340
OCI見積もり入門セミナー
oracle4engineer
PRO
0
120
DevinはクラウドエンジニアAIになれるのか!? 実践的なガードレール設計/devin-can-become-a-cloud-engineer-ai-practical-guardrail-design
tomoki10
3
1.4k
SaaSプロダクト開発におけるバグの早期検出のためのAcceptance testの取り組み
kworkdev
PRO
0
480
頻繁リリース × 高品質 = 無理ゲー? いや、できます!/20250306 Shoki Hyo
shift_evolve
0
160
AI・LLM事業部のSREとタスクの自動運転
shinyorke
PRO
0
300
Riverpod & Riverpod Generatorを利用して状態管理部分の処理を書き換えてみる簡単な事例紹介
fumiyasac0921
0
110
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1030
460k
YesSQL, Process and Tooling at Scale
rocio
172
14k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
The Language of Interfaces
destraynor
157
24k
Music & Morning Musume
bryan
46
6.4k
Building Your Own Lightsaber
phodgson
104
6.3k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
The Cost Of JavaScript in 2023
addyosmani
48
7.6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
Six Lessons from altMBA
skipperchong
27
3.7k
Adopting Sorbet at Scale
ufuk
75
9.3k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
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
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ