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
240
ISUCON向けのツールを作った話 / isutools
ISUCON向けのツールを作った話
ISUCON9大反省会LT
https://github.com/yudppp/isutools
yudppp
November 06, 2019
Tweet
Share
More Decks by yudppp
See All by yudppp
未知のプログラミング言語にChatGPTと共に挑む
yudppp
0
350
SaaSフロントエンド開発の現場で求められる技術 / Technologies for SaaS Frontend Development in the Field
yudppp
2
140
2019年 HRBrainの技術的挑戦 / hrbain technology challenge 2019
yudppp
3
1.3k
Web開発を支えるマイグレーションツールについて / sqldef introduction for psql users
yudppp
2
3.2k
Row Level Securityはマルチテナントの銀の弾丸になりうるのか / Row Level Security is silver bullet for multitenancy?
yudppp
21
29k
Webサービス開発に必要な統計学入門 / study of statistics for web developers
yudppp
1
250
メジャーな Live Reloaderの違いをちゃんと調べて見た / Compare major live reloader of Go
yudppp
1
1.8k
今年お世話になったnpm module
yudppp
1
890
Goで社内向け管理画面を楽に作る方法
yudppp
5
10k
Other Decks in Technology
See All in Technology
Cracking the Coding Interview 6th Edition
gdplabs
14
28k
目標と時間軸 〜ベイビーステップでケイパビリティを高めよう〜
kakehashi
PRO
8
860
4th place solution Eedi - Mining Misconceptions in Mathematics
rist
0
150
開発者のための FinOps/FinOps for Engineers
oracle4engineer
PRO
2
210
データベースの負荷を紐解く/untangle-the-database-load
emiki
2
540
OCI Success Journey OCIの何が評価されてる?疑問に答える事例セミナー(2025年2月実施)
oracle4engineer
PRO
2
180
ExaDB-XSで利用されているExadata Exascaleについて
oracle4engineer
PRO
3
280
OPENLOGI Company Profile for engineer
hr01
1
20k
JAWS FESTA 2024「バスロケ」GPS×サーバーレスの開発と運用の舞台裏/jawsfesta2024-bus-gps-serverless
ma2shita
3
280
サバイバルモード下でのエンジニアリングマネジメント
konifar
9
2.1k
困難を「一般解」で解く
fujiwara3
7
1.6k
Change Managerを活用して本番環境へのセキュアなGUIアクセスを統制する / Control Secure GUI Access to the Production Environment with Change Manager
yuj1osm
0
110
Featured
See All Featured
A Tale of Four Properties
chriscoyier
158
23k
The Language of Interfaces
destraynor
156
24k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Adopting Sorbet at Scale
ufuk
75
9.2k
Scaling GitHub
holman
459
140k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
How STYLIGHT went responsive
nonsquared
99
5.4k
Code Review Best Practice
trishagee
67
18k
Why Our Code Smells
bkeepers
PRO
336
57k
Automating Front-end Workflow
addyosmani
1369
200k
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ͱಉ͡ײ͡Ͱ͑Δ)
·ͱΊ • དྷͦ݁͜Ռग़͍ͨ͠ɻ