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
ISUCON向けのツールを作った話 / isutools
Search
yudppp
November 06, 2019
Technology
1
280
ISUCON向けのツールを作った話 / isutools
ISUCON向けのツールを作った話
ISUCON9大反省会LT
https://github.com/yudppp/isutools
yudppp
November 06, 2019
Tweet
Share
More Decks by yudppp
See All by yudppp
型安全なDrag and Dropの設計を考える
yudppp
5
820
未知のプログラミング言語にChatGPTと共に挑む
yudppp
0
450
SaaSフロントエンド開発の現場で求められる技術 / Technologies for SaaS Frontend Development in the Field
yudppp
2
210
2019年 HRBrainの技術的挑戦 / hrbain technology challenge 2019
yudppp
3
1.3k
Web開発を支えるマイグレーションツールについて / sqldef introduction for psql users
yudppp
2
3.3k
Row Level Securityはマルチテナントの銀の弾丸になりうるのか / Row Level Security is silver bullet for multitenancy?
yudppp
22
31k
Webサービス開発に必要な統計学入門 / study of statistics for web developers
yudppp
1
290
メジャーな Live Reloaderの違いをちゃんと調べて見た / Compare major live reloader of Go
yudppp
1
1.9k
今年お世話になったnpm module
yudppp
1
930
Other Decks in Technology
See All in Technology
JavaScript 研修
recruitengineers
PRO
6
1.4k
Flutterでキャッチしないエラーはどこに行く
taiju59
0
210
シークレット管理だけじゃない!HashiCorp Vault でデータ暗号化をしよう / Beyond Secret Management! Let's Encrypt Data with HashiCorp Vault
nnstt1
2
130
実運用で考える PGO
kworkdev
PRO
0
130
AIエージェントの活用に重要な「MCP (Model Context Protocol)」とは何か
masayamoriofficial
0
250
AIのグローバルトレンド2025 #scrummikawa / global ai trend
kyonmm
PRO
0
130
なぜSaaSがMCPサーバーをサービス提供するのか?
sansantech
PRO
5
1.5k
「魔法少女まどか☆マギカ Magia Exedra」の必殺技演出を徹底解剖! -キャラクターの魅力を最大限にファンに届けるためのこだわり-
gree_tech
PRO
0
440
バッチ処理で悩むバックエンドエンジニアに捧げるAWS Glue入門
diggymo
3
100
【初心者向け】ローカルLLMの色々な動かし方まとめ
aratako
4
2.5k
今!ソフトウェアエンジニアがハードウェアに手を出すには
mackee
6
2k
クラウドセキュリティを支える技術と運用の最前線 / Cutting-edge Technologies and Operations Supporting Cloud Security
yuj1osm
2
250
Featured
See All Featured
How GitHub (no longer) Works
holman
315
140k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Mobile First: as difficult as doing things right
swwweet
224
9.9k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
Making Projects Easy
brettharned
117
6.4k
BBQ
matthewcrist
89
9.8k
We Have a Design System, Now What?
morganepeng
53
7.8k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Fireside Chat
paigeccino
39
3.6k
Art, The Web, and Tiny UX
lynnandtonic
302
21k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Code Review Best Practice
trishagee
70
19k
Transcript
ISUCON͚ͷπʔϧΛ࡞ͬͨ ISUCON9େলձ
pprofͷ݁ՌΛ؆୯ʹՄࢹԽ • pprofͷίϚϯυΕ͕ͪ • Port։͚ͨΓFileΛscpͨ͠Γେม • ϕϯνϚʔΫճͨ͠͝ͱʹऔΓ͍ͨ
DataDogͷSQLͷAPMΛऔΓ͍ͨ • DatadogͷAPM࠷ߴɻ͓͔͔ͨͩۚ͠Δɻ • SlowLog͚ͩͩͱΈΕͳ͍ΛΈ͍ͨɻ
alpͷ݁ՌΛ؆୯ʹग़͍ͨ͠ • ϕϯνϚʔΫճͨ͠͝ͱʹऔΓ͍ͨ
N+1 QueryΛ؆୯ʹൃݟ͍ͨ͠ • ࢹͰN+1 QueryΛݟ͚ͭͯͨ͠Γ͢Δ͕ ࿙Ε͕͋ͬͨΓ͢ΔͷͰ؆୯ʹൃݟ͍ͨ͠
Γ͍ͨ͜ͱ·ͱΊ • pprofͷ݁ՌΛ؆୯ʹՄࢹԽ͍ͨ͠ • alpΈ͍ͨͳ݁ՌΛ؆୯ʹग़ྗ͍ͨ͠ • DataDogͷSQLͷAPMͷ݁ՌΈ͍ͨͳͷग़ྗ ͍ͨ͠ • N+1QueryΛ؆୯ʹൃݟ͍ͨ͠
͜ΕΒΛղܾ͢Δ࡞Γ·ͨ͠ɻ
ͦͷ໊
github.com/yudppp/isutools Iikanji ni speed up suru tools
github.com/yudppp/isutools/profile • Initialize͢Δؔͷதʹ1ߦՃ͢Δ • InitializeͷؔΛݺͼग़͔ͯ͠Βࢦఆͨ͠ඵ ͷpprofͷ݁ՌΛSlackʹૹ৴͢Δ
github.com/yudppp/isutools/profile • ϕϯνϚʔΫͷ࣮ߦ͝ͱʹຖճܭଌ݁ՌΛ Slackʹ͛ͯ͘ΕΔ • ϩάͱͯ͠͞ΕΔͷͰ࣌ܥྻͰऴ͑ͯศར
None
github.com/yudppp/isutools/tracereporter • DataDogͷAPMͷlibrary(dd-trace-go)Λͬ ͯ৭ʑͳ༰ΛSlackʹϨϙʔτ͢Δ • LibraryʹରԠ͍ͯ͠ΔϑϨʔϜϫʔΫશͯʹ ରԠ͞Ε͍ͯΔ
sqlxͷྫ
None
gojiͷྫ
None
github.com/yudppp/isutools/tracereporter • ্هͷΈ͍ͨͳͭΛ্ख͍͘߹ΘͤΔͱ
None
github.com/yudppp/isutools/utils/throttle • ࢦఆͨ͠ඵؒʹ࠷ॳͷ1ճ͔࣮͠ߦ͞Εͳ ͍ͭ(sync.Onceͱಉ͡ײ͡Ͱ͑Δ)
·ͱΊ • དྷͦ݁͜Ռग़͍ͨ͠ɻ