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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
yudppp
November 06, 2019
Technology
330
1
Share
ISUCON向けのツールを作った話 / isutools
ISUCON向けのツールを作った話
ISUCON9大反省会LT
https://github.com/yudppp/isutools
yudppp
November 06, 2019
More Decks by yudppp
See All by yudppp
型安全なDrag and Dropの設計を考える
yudppp
5
980
未知のプログラミング言語にChatGPTと共に挑む
yudppp
0
500
SaaSフロントエンド開発の現場で求められる技術 / Technologies for SaaS Frontend Development in the Field
yudppp
2
260
2019年 HRBrainの技術的挑戦 / hrbain technology challenge 2019
yudppp
3
1.5k
Web開発を支えるマイグレーションツールについて / sqldef introduction for psql users
yudppp
2
3.6k
Row Level Securityはマルチテナントの銀の弾丸になりうるのか / Row Level Security is silver bullet for multitenancy?
yudppp
23
33k
Webサービス開発に必要な統計学入門 / study of statistics for web developers
yudppp
1
350
メジャーな Live Reloaderの違いをちゃんと調べて見た / Compare major live reloader of Go
yudppp
1
1.9k
今年お世話になったnpm module
yudppp
1
960
Other Decks in Technology
See All in Technology
AIを共同作業者にして書籍を執筆する方法 / How to Write a Book with AI as a Co-Creator
ama_ch
2
150
AIコーディング時代における、ソフトウェアサプライチェーン攻撃に対する防衛術(簡易版)
soysoysoyb
0
120
自分のハンドルは自分で握れ! ― 自分のケイパビリティを増やし、メンバーのケイパビリティ獲得を支援する ― / Take the wheel yourself
takaking22
1
960
「責任あるAIエージェント」こそ自社で開発しよう!
minorun365
9
2.2k
Good Enough Types: Heuristic Type Inference for Ruby
riseshia
1
290
スクラムの中で AI-DLC workflow を 使い始めて3ヶ月の振り返り
kaminashi
0
130
ハーネスエンジニアリングをやりすぎた話 ~そのハーネスは解体された~
gotalab555
5
1.8k
Revisiting [CLS] and Patch Token Interaction in Vision Transformers
yu4u
0
390
独断と偏見で試してみる、 シングル or マルチエージェント どっちがいいの?
shichijoyuhi
1
110
MLOps導入のための組織作りの第一歩
akasan
0
360
[最強DB講義]推薦システム | 評価編
recsyslab
PRO
0
100
クラウドネイティブな開発 ~ 認知負荷に立ち向かうためのコンテナ活用
literalice
0
150
Featured
See All Featured
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
510
4 Signs Your Business is Dying
shpigford
187
22k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
370
Joys of Absence: A Defence of Solitary Play
codingconduct
1
350
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
99
Optimizing for Happiness
mojombo
378
71k
Mind Mapping
helmedeiros
PRO
1
160
[SF Ruby Conf 2025] Rails X
palkan
2
970
Are puppies a ranking factor?
jonoalderson
1
3.3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
340
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
150
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ͱಉ͡ײ͡Ͱ͑Δ)
·ͱΊ • དྷͦ݁͜Ռग़͍ͨ͠ɻ