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
java-monitoring
Search
soudai sone
January 24, 2018
Technology
5
2.9k
java-monitoring
JJUG ナイトセミナーの登壇資料です。
https://jjug.doorkeeper.jp/events/69650
soudai sone
January 24, 2018
Tweet
Share
More Decks by soudai sone
See All by soudai sone
顧客が本当に必要だったもの - パフォーマンス改善編 / Make what is needed
soudai
30
8.1k
仕事を前に進めるためのコツ - 判断と決断と共有 / Aim for the goal
soudai
84
35k
アプリケーションが 正しく動作するということ - 自動テスト編 / Automated Testing
soudai
15
3k
Gitlab本から学んだこと - そーだいなるプレイバック / gitlab-book
soudai
8
1.8k
**強い**エンジニアのなり方 - フィードバックサイクルを勝ち取る / grow one day each day
soudai
118
110k
マルチテナントの実現におけるDB設計とRLS / Utilizing RSL in multi-tenancy
soudai
26
8.2k
キャッシュと向き合う、キャッシュと共に生きる / cache pattern
soudai
38
16k
RDBアンチパターンと戦う - 削除フラグ 完全攻略ガイド / delete flag
soudai
30
18k
コミュニティと共に生きる - キャリアの螺旋 / live with community
soudai
8
5.8k
Other Decks in Technology
See All in Technology
Terraform未経験の御様に対してどの ように導⼊を進めていったか
tkikuchi
2
370
3次元点群データ「VIRTUAL SHIZUOKA』のオープンデータ化による恩恵と協働の未来/FOSS4G Japan 2024
kazz24s
0
140
Microsoft MVPになる前、なってから/Fukuoka_Tech_Women_Community_1_baba
nina01
0
180
RubyのWebアプリケーションを50倍速くする方法 / How to Make a Ruby Web Application 50 Times Faster
hogelog
2
860
スクラムチームを立ち上げる〜チーム開発で得られたもの・得られなかったもの〜
ohnoeight
2
330
エンジニアが一生困らない ドキュメント作成の基本
naohiro_nakata
3
160
OCI Data Integration技術情報 / ocidi_technical_jp
oracle4engineer
PRO
1
2.6k
【若手エンジニア応援LT会】ソフトウェアを学んできた私がインフラエンジニアを目指した理由
kazushi_ohata
0
120
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
210
AGIについてChatGPTに聞いてみた
blueb
0
110
2024年グライダー曲技世界選手権参加報告/2024 WGAC report
jscseminar
0
300
ドメイン名の終活について - JPAAWG 7th -
mikit
32
19k
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
32
1.5k
The Art of Programming - Codeland 2020
erikaheidi
52
13k
For a Future-Friendly Web
brad_frost
175
9.4k
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
Building Adaptive Systems
keathley
38
2.3k
Facilitating Awesome Meetings
lara
50
6.1k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.8k
Imperfection Machines: The Place of Print at Facebook
scottboms
264
13k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
BBQ
matthewcrist
85
9.3k
The Pragmatic Product Professional
lauravandoore
31
6.3k
How GitHub (no longer) Works
holman
310
140k
Transcript
WebαʔϏεͷ ϞχλϦϯάͷצॴ ++6(φΠτηϛφʔ
What is it? ϞχλϦϯάͯ͠·͔͢ʁ
What is it? WebαʔϏεੜ͖
What is it? WebαʔϏεੜ͖ ↓ ৗʹมԽ͍ͯ͠Δ
What is it? WebαʔϏε͍͠
What is it? WebαʔϏε͍͠ ↓ ৭ΜͳӨڹΛड͚ͳ͕ΒՔಇ͍ͯ͠Δ
What is it? WebαʔϏε͍͠ ↓ ৭ΜͳӨڹΛड͚ͳ͕ΒՔಇ͍ͯ͠Δ ΠϯλʔωοτɺΫϥΠΞϯτɺ ϓϩτίϧɺαʔόαΠυFUDʜ
What is it? ͔ͩΒͦ͜ϞχλϦϯά͕ඞཁ
What is it? ͔ͩΒͦ͜ϞχλϦϯά͕ඞཁ ↓ ࠓ͔Β࢝ΊΔօ͞Μ
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹWebαʔϏεΛݟΔ ̏ɹϞχλϦϯάͷצॴ ̐ɹͬͯಘ͢ΔTips ̑ɹ·ͱΊ
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹWebαʔϏεΛݟΔ ̏ɹϞχλϦϯάͷצॴ ̐ɹͬͯಘ͢ΔTips ̑ɹ·ͱΊ
ࣗݾհ ໊લɿીࠜɹେʢͦͶɹ͚ͨͱʣ ྸɿ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αʔϏεΛݟΔ ̏ɹϞχλϦϯάͷצॴ ̐ɹͬͯಘ͢ΔTips ̑ɹ·ͱΊ
WebαʔϏεΛݟΔ 8FCαʔϏεੜ͖
%/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 +BWB4DSJQU w ϓϩτίϧ w ωοτϫʔΫʜFUD
WebαʔϏεΛݟΔ Πϯλʔωοτ w ϨΠςϯγʔ w εϧʔϓοτ w ϨεϙϯεʜFUD
WebαʔϏεΛݟΔ ͦΕͧΕͷৼΔ͍ΛՄࢹԽ͢Δ
WebαʔϏεΛݟΔ
WebαʔϏεΛݟΔ 8FCαʔϏεੜ͖
WebαʔϏεΛݟΔ 8FCαʔϏεੜ͖ ˣ αʔϏεࣗମՄࢹԽ͢Δ
WebαʔϏεΛݟΔ αʔϏεͷՄࢹԽ w 17๚ w μϯϩʔυ w Ϣʔβͷར༻ྔ w Ϋϥυྉۚͷ՝ۚྔʜFUD
WebαʔϏεΛݟΔ αʔϏεͷมԽ γεςϜͷมԽͱ૬ؔ
WebαʔϏεΛݟΔ ͔ͩΒ8FCαʔϏεΛݟΔ
WebαʔϏεΛݟΔ ͔ͩΒ8FCαʔϏεΛݟΔ ˣ ͦͷͨΊʹৼΔ͍ΛՄࢹԽ͢Δ
WebαʔϏεΛݟΔ
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹWebαʔϏεΛݟΔ ̏ɹϞχλϦϯάͷצॴ ̐ɹͬͯಘ͢ΔTips ̑ɹ·ͱΊ
ϞχλϦϯάͷצॴ Γ͍ͨ͜ͱԿͳͷ͔ʁ
ϞχλϦϯάͷצॴ Γ͍ͨ͜ͱԿͳͷ͔ʁ ˣ αʔϏε͕ਖ਼͘͠ಈ͍͍ͯΔ͔
ϞχλϦϯάͷצॴ γεςϜͷϞχλϦϯά ϦιʔεΛਖ਼͑ͯ͘͠Δ͔
ϞχλϦϯάͷצॴ γεςϜͷϞχλϦϯά ϦιʔεΛਖ਼͑ͯ͘͠Δ͔ Ϧιʔε͕ෆͯ͠༨Βͯ͠ବ
ϞχλϦϯάͷצॴ ҙਤ͠ͳ͍ڍಈʹؾ͘
ϞχλϦϯάͷצॴ αʔϏεͷมԽͷػඍʹؾ͘
ϞχλϦϯάͷצॴ αʔϏεͷมԽͷػඍʹؾ͘ ˣ มԽͷ͕ࠩ͋Δ͔Βؾ͚Δ
ϞχλϦϯάͷצॴ γεςϜͷঢ়ଶΛՄࢹԽ͢Δ
%/4 #(1 *41 WebαʔϏεΛݟΔ αʔό ωοτϫʔΫ ΞϓϦέʔγϣϯ ௨৴ৗʹԟདྷ͍ͯ͠Δ ΫϥΠΞϯτ Πϯλʔωοτ
αʔόαΠυ શͯγεςϜ
ϞχλϦϯάͷצॴ ౿ΈࠐΜͩγεςϜͷՄࢹԽ w ࣮ߦCBUDIͷδϣϒ w Ωϡʔ w อଘ͞ΕͯΔը૾ w %/4/51ͷঢ়ଶ
ϞχλϦϯάͷצॴ αʔϏεͷঢ়ଶΛՄࢹԽ͢Δ
ϞχλϦϯάͷצॴ ౿ΈࠐΜͩαʔϏεͷՄࢹԽ w ϢʔβͷϓϨΠঢ়گ w Πϯετʔϧ͞Εͨ04 w Ϣʔβͷݕࡧϫʔυ w ਃ͠ࠐΈϘλϯͷΫϦοΫ
ϞχλϦϯάͷצॴ αʔϏεͷՄࢹԽͷ5JQT
ϞχλϦϯάͷצॴ 5XJUUFSͰ ʮ˓˓ॏ͍ʯ ͷසग़ྔΛϞχλϦϯά͢Δ
ϞχλϦϯάͷצॴ ͍߹ΘͤճΛՄࢹԽ
ϞχλϦϯάͷצॴ JTTVFλεΫͷΛՄࢹԽ
ϞχλϦϯάͷצॴ ࣗͷαʔϏεͷ֎ՄࢹԽ͢Δ
ϞχλϦϯάͷצॴ ՄࢹԽ͢Δ͜ͱͰৄࡉ͕ݟ͑ͯ͘Δ
ϞχλϦϯάͷצॴ ՄࢹԽ͢Δ͜ͱͰৄࡉ͕ݟ͑ͯ͘Δ ˣ վળͷαΠΫϧ͕ճΓग़͢
ϞχλϦϯάͷצॴ ୭ݟͳ͍άϥϑʹҙຯແ͍
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹWebαʔϏεΛݟΔ ̏ɹϞχλϦϯάͷצॴ ̐ɹͬͯಘ͢ΔTips ̑ɹ·ͱΊ
ͬͯಘ͢ΔTips γεςϜϝτϦοΫͷݟํ
γεςϜϝτϦοΫͷݟํ
γεςϜϝτϦοΫͷݟํ γεςϜͷঢ়ଶΛՄࢹԽ͢Δ w MPBEBWH w DQV w NFNPSZ w EJTL
w JOUFSGBDF w pMFTZTUFN
γεςϜϝτϦοΫͷݟํ γεςϜͷঢ়ଶΛՄࢹԽ͢Δ w MPBEBWH w DQV w NFNPSZ w EJTL
w JOUFSGBDF w pMFTZTUFN
ϩʔυΞϕϨʔδ w ࣮ߦͪ ࣮ߦΩϡʔʹ͋Δ ϓϩηεͷ w σΟεΫͷ*0ͪͷϓϩηεͷ ˣ ߹ܭ
ϩʔυΞϕϨʔδ w ࣮ߦͪ ࣮ߦΩϡʔʹ͋Δ ϓϩηεͷ w σΟεΫͷ*0ͪͷϓϩηεͷ ˣ ߹ܭ ͭ·ΓϩʔυΞϕϨʔδ͕ߴ͚Ε
$16%JTL*0͕٧·͍ͬͯΔ͜ͱΛද͢
ϩʔυΞϕϨʔδ VQUJNF ɹVQ VTFS MPBEBWFSBHF
ϩʔυΞϕϨʔδ VQUJNF ɹVQ VTFS MPBEBWFSBHF
ϩʔυΞϕϨʔδ VQUJNF ɹVQ VTFS MPBEBWFSBHF
ϩʔυΞϕϨʔδ VQUJNF ɹVQ VTFS MPBEBWFSBHF 3
1 5 10
ϩʔυΞϕϨʔδ MPBEBWH্͕͕Δͱ γεςϜʹෛՙ͕͔͔͍ͬͯΔ
ϩʔυΞϕϨʔδ MPBEBWH্͕͕Δͱ γεςϜʹෛՙ͕͔͔͍ͬͯΔ ͔͠͠ଈোͱݶΒͳ͍
ϩʔυΞϕϨʔδ ॠؒతʹॲཧ͕ूதͯ͠ɺ ฏৗ࣌ͷෛՙʹ·Ͱ མͪண͘͜ͱ͕Ͱ͖Δ͔Ͳ͏͔
ϩʔυΞϕϨʔδ ʮ࣮ࡍʹࡹ͍͍ͯΔॲཧྔʢYʣʯ ʮࡹ͖͘ॲཧͷ૯ྔʢZʣʯ ͕YZʹͳ͍ͬͯͳ͍͔
ϩʔυΞϕϨʔδ
ϩʔυΞϕϨʔδ εύΠΫ͍ͯ͠Δ͕ ͙͢ʹऩଋ͍ͯ͠ΔͷͰແ͍
ϩʔυΞϕϨʔδ X < Y !
ϩʔυΞϕϨʔδ X < Y !
CPU DISC
γεςϜϝτϦοΫͷݟํ γεςϜͷঢ়ଶΛՄࢹԽ͢Δ w MPBEBWH w DQV w NFNPSZ w EJTL
w JOUFSGBDF w pMFTZTUFN
CPU $16༻ͷׂ߹ΛΔ
CPU $16༻ͷׂ߹ΛΔ $16͕ͷ߹ʹ Ͳ͜Ͱ͍ͬͯΔ͔ΛΔ
CPUͰ͑Δ͖ϝτϦοΫ w DQVVTFS w DQVJPXBJU w DQVTZTUFN w DQVJEMF
CPUͰ͑Δ͖ϝτϦοΫ w DQVVTFS w DQVJPXBJU w DQVTZTUFN w DQVJEMF ΧʔωϧҎ֎͕༻ͨ࣌ؒ͠ͷׂ߹
CPUͰ͑Δ͖ϝτϦοΫ w DQVVTFS w DQVJPXBJU w DQVTZTUFN w DQVJEMF *0ͪʹΑΓΞΠυϧঢ়ଶͰ
͋ͬͨ࣌ؒͷׂ߹
CPUͰ͑Δ͖ϝτϦοΫ w DQVVTFS w DQVJPXBJU w DQVTZTUFN w DQVJEMF Χʔωϧ͕༻ͨ࣌ؒ͠ͷׂ߹
CPUͰ͑Δ͖ϝτϦοΫ w DQVVTFS w DQVJPXBJU w DQVTZTUFN w DQVJEMF *0͕ͪͳ͘ɺ͔ͭ$16͕
ΞΠυϧঢ়ଶͰ͋ͬͨ࣌ؒͷׂ߹
cpu.iowait͕ߴಅ͍ͯ͠Δ࣌ σΟεΫͷ*0ੑೳ͕ωοΫ
cpu.iowait͕ߴಅ͍ͯ͠Δ࣌ σΟεΫͷ*0ੑೳ͕ωοΫ %JTDͷϝτϦοΫͷ3FBEͱ8SJUFΛ֬ೝ
cpu.user͕ߴಅ͍ͯ͠Δ࣌ ΧʔωϧҎ֎ͷϓϩηε͕ݪҼ
cpu.user͕ߴಅ͍ͯ͠Δ࣌ ΧʔωϧҎ֎ͷϓϩηε͕ݪҼ ྫ͑ΞϓϦέʔγϣϯ
cpu.user͕ߴಅ͍ͯ͠Δ࣌ ΧʔωϧҎ֎ͷϓϩηε͕ݪҼ ྫ͑ΞϓϦέʔγϣϯ ΞϓϦͷվળΛߦ͏͔ɺ$16ͷεϖοΫΛ্͛Δ͜ͱͰ վળ͞ΕΔՄೳੑ͕͋Δ
ϞχλϦϯάͷצॴ 45 IUUQCMPHBLOPXNFFOUSZ
ΞϓϦέʔγϣϯΛΔ +BWBͷৼΔ͍ΛΔ
ΞϓϦέʔγϣϯΛΔ +BWBͷৼΔ͍ΛΔ ˣ +7.ΛϞχλϦϯά͢Δ
JVMͷϞχλϦϯά KTUBUΛ͏ IUUQTEPDTPSBDMFDPNKBWBTF EPDTUFDIOPUFTUPPMTTIBSFKTUBUIUNM
JVMͷϞχλϦϯά
JVMͷϞχλϦϯά KPMPLJBΛ͏ IUUQTKPMPLJBPSH
JVMͷϞχλϦϯά NFUSJDTΛ͏ IUUQNFUSJDTESPQXJ[BSEJP
JVMͷϞχλϦϯά .BDLFSFMͰ+BWBͷΞϓϦέʔγϣϯ ϞχλϦϯάΛ͢Δ IUUQTRJJUBDPNLBXBTJNBJUFNTCGECCCB
͋͐͡Μͩ ̍ɹࣗݾհ ̎ɹWebαʔϏεΛݟΔ ̏ɹϞχλϦϯάͷצॴ ̐ɹͬͯಘ͢ΔTips ̑ɹ·ͱΊ
·ͱΊ ·ͣՄࢹԽΛ͢Δ
·ͱΊ ਪଌΑΓܭଌ
·ͱΊ ਪଌΑΓܭଌ ↓ ܭଌΑΓ؍ଌ
·ͱΊ ࣄ࣮ΛΑΓଟ͘ɺਖ਼͘͠Δ͜ͱͰ ະདྷΛਖ਼͘͠༧ଌͰ͖Δ
None
·ͱΊ ΤϯδχΞʹࠜڌ͕ඞཁ
·ͱΊ ΤϯδχΞʹࠜڌ͕ඞཁ ↓ ͳΜͱͳ͘Ͱࣄग़དྷͳ͍
·ͱΊ
·ͱΊ
·ͱΊ
·ͱΊ ςετίʔυϓϩάϥϜͷ࣭ͷՄࢹԽ ϞχλϦϯάαʔϏεͷ࣭ͷՄࢹԽ
·ͱΊ lࢹͱܧଓతͳςετͰ͋Δz ԞҰึ IUUQEFWFMPQFSDZCP[VDPKQBSDIJWFTLB[VIPDSPOMPHGIUNM
·ͱΊ lߴʹൃୡͨ͠γεςϜͷҟৗ ਆͷౖΓͱݟ͚͕͔ͭͳ͍z Z@VVLJ
·ͱΊ ମॏܭʹΔ͚ͩͰ૫ͤͳ͍
·ͱΊ ମॏܭʹΔ͚ͩͰ૫ͤͳ͍ ↓ ࣭ΛՄࢹԽ͚ͨͩ͠Ͱվળ͞Εͳ͍
·ͱΊ lखΛಈ͔ͨ͠ਓ͚͕ͩੈքΛม͑Δz :BTVIJSP0OJTIJ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ