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
Ruby でもなんとかなる - ISUCON13 公式反省会
Search
Hayato Kawai
January 11, 2024
Technology
0
120
Ruby でもなんとかなる - ISUCON13 公式反省会
「ISUCON13 公式反省会【参加者限定】」の LT 資料です。
https://connpass.com/event/304701/
Hayato Kawai
January 11, 2024
Tweet
Share
More Decks by Hayato Kawai
See All by Hayato Kawai
RubyKaigi で LT 初登壇したきっかけと感想
fohte
1
750
Datadog Logs を活用して SLO 監視基盤を構築する
fohte
2
580
The Journey of rubocop-daemon into RuboCop
fohte
1
950
Ruby as Shell script
fohte
1
430
rubocop-daemon 裏話: OSS の苦悩
fohte
2
510
RuboCop Server Mode の仕組み
fohte
1
230
Ruby を使ったプロダクト開発を支えるオブザーバビリティ基盤
fohte
2
120
インシデントコマンダーやってみた
fohte
5
950
k8s upgrade を 楽にする工夫
fohte
0
200
Other Decks in Technology
See All in Technology
ロリポップ! for Gamersを支えるインフラ/lolipop for gamers infrastructure
takumakume
0
140
『GRANBLUE FANTASY: Relink』クオリティと物量の両立に挑戦したフェイシャルアニメーション事例 ~カットシーンからランタイムまで~
cygames
0
120
リアルお遍路+SORACOM IoT
ozk009
1
140
Segment Anything Model 2
tenten0727
3
720
Cloud Run と GitHub Template Repository による軽量なアプリケーションプラットフォーム/ #nikkei_tech_talk
nikkei_engineer_recruiting
0
110
Jetpack Compose Modifier 徹底解説 / Jetpack Compose Modifier
wiroha
0
210
『GRANBLUE FANTASY Relink』キャラクターの魅力を支えるリグ・シミュレーション制作事例
cygames
0
160
Privacy Sandbox on Android / DroidKaigi 2024
7pairs
1
280
JEP 480: Structured Concurrency
aya_ebata
0
130
実務における脅威モデリングを考えよう
nikinusu
0
700
Creative UIs with Compose: DroidKaigi 2024
chrishorner
1
600
OCI で始める!! Red Hat OpenShift / Get Started OpenShift on OCI
oracle4engineer
PRO
1
190
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
158
15k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.4k
Docker and Python
trallard
39
3k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
278
13k
From Idea to $5000 a Month in 5 Months
shpigford
379
46k
Agile that works and the tools we love
rasmusluckow
327
20k
Principles of Awesome APIs and How to Build Them.
keavy
125
16k
The Invisible Customer
myddelton
119
13k
Product Roadmaps are Hard
iamctodd
PRO
48
10k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Building Your Own Lightsaber
phodgson
101
6k
Creatively Recalculating Your Daily Design Routine
revolveconf
215
12k
Transcript
© 2024 Wantedly, Inc. Ruby でもなんとかなる ISUCON13 公式反省会 2024-01-11 Hayato
Kawai / @fohte
© 2024 Wantedly, Inc. あなた誰 名前: @fohte (ふぉーて) 川井 颯人
(Hayato Kawai) 所属: ウォンテッドリー株式会社 趣味: 🎮 🎹
© 2024 Wantedly, Inc. 初出場 49 位 (35,524 点) 🎉
@fohte @unblee @gedorinku チーム名: gefoun
© 2024 Wantedly, Inc. 感想 • 初出場で 49 位は善戦できたのでは ◦
欲を言えば 30 位以内に入りたかった • Ruby でもなんとかなることがわかった
© 2024 Wantedly, Inc. チームの戦略 • Ruby でがんばる ◦ 書き・読み慣れているため
• プロファイリングは APM にまかせる ◦ 慣れているため
© 2024 Wantedly, Inc. Ruby でがんばる
© 2024 Wantedly, Inc. Ruby でがんばる • ISUCON は上位入賞を目指すなら Go
でやるべき? ◦ そうかも ◦ 今回も上位 30 チーム中 Go が 29 チームで Ruby は 1 チーム • でも Ruby が一番読み書きに慣れているし… • => アプリケーションの速度より自分たちの速を優先
© 2024 Wantedly, Inc. Ruby でがんばる • チームの作戦「とにかく N+1 を潰す」
• Ruby でも N+1 を解消していくだけでスコアは上がった ◦ 実際に本番でやったことは、N+1 改善とアイコンの静的配信が 9 割
© 2024 Wantedly, Inc. Ruby でがんばる • つまり… Ruby でもなんとかなるのでは?
◦ なんとかしたい ◦ 優勝を目指すなら Ruby は厳しい? ◦ 少なくとも 30 位以内に入るなら Ruby でも善戦できそう
© 2024 Wantedly, Inc. プロファイリングは APM にまかせる
© 2024 Wantedly, Inc. プロファイリングは APM にまかせる • プロファイリングは Datadog
APM に丸投げした
© 2024 Wantedly, Inc. プロファイリングは APM にまかせる • なぜ Datadog
APM なのか? ◦ 単に「ISUCON でよく使われるツール」を知らなかった ◦ 普段使っていて慣れているし、便利
© 2024 Wantedly, Inc. プロファイリングは APM にまかせる • 最も便利だった機能: 「リクエストが多くレスポンス時間が長い
エンドポイント」を降順で一覧する ◦ テーブルの上から改善していくだけでスコアが延びていく • 他にもボトルネックを見つけるための機能が揃っている ◦ 特定のリクエストで時間がかかっている処理も見れる ◦ MySQL のクエリログも見れる ◦ ただ今回の場合、DNS の負荷には気付けなかった
© 2024 Wantedly, Inc. プロファイリングは APM にまかせる • Datadog APM
の失敗: 高い 😇 ◦ ホスト課金: $18.75/host/month ◦ APM: $38.75/host/month ◦ ISUCON は 3 台なので…… 💸 ▪ 対策として 1 台にだけ Datadog Agent を入れて APM を有効化した ▪ それでも高い 😇
© 2024 Wantedly, Inc. プロファイリングは APM にまかせる • パワー (金)
で解決 ◦ おすすめはしません
© 2024 Wantedly, Inc. さいごに
© 2024 Wantedly, Inc. さいごに • Ruby でもなんとかなる (なりそう) •
Datadog APM 便利 (だけど失うものがある)
© 2024 Wantedly, Inc. さいごに 謝辞 • ISUNARABE がめちゃくちゃ便利でした •
『達人が教えるWebパフォーマンスチューニング 〜ISUCON から学ぶ高速化の実践』最高でした