Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
山手線一周のパフォーマンス改善
Search
すずか
September 29, 2024
Technology
340
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
山手線一周のパフォーマンス改善
TokyuRuby会議15 登壇資料
すずか
September 29, 2024
More Decks by すずか
See All by すずか
初✖️3 Kaigi on Rails 2024の思い出
suzukahr
0
160
YamaNotesの開発について
suzukahr
0
230
Urawa.rbができるまで
suzukahr
0
150
Impressions of the Ruby Kaigi
suzukahr
1
6.6k
Other Decks in Technology
See All in Technology
AI AgentによるEmbedded SREの取り組み
tgidgd
1
330
The future of architectural work
ufried
0
120
AIエージェント統制はAPIから——押さえるべき5つの要素
nagix
0
120
E2Eってつらくないですか?E2Eの管理コストを下げる手段とその実践
akaboshinit
6
3k
2拠点SRE活動始めてみた | sogaoh's LT @ ホンマでっかSRE勉強会 #3
sogaoh
PRO
0
240
ドメインエキスパートは いかにして AI を使って プロダクト開発をするか
tatsuyashiraishi
1
270
2026 Apache Flink Community Checkpoint
rmetzger
0
120
【Oracle AI SPOTLIGHT ウェビナー】事例から見る!なぜOCIが選ばれたのか ― AI時代のクラウド戦略を紐解く ―
oracle4engineer
PRO
2
150
コードレビューをなくして見えたもの
henteko
0
130
増え続けるプロダクトの品質をどう担保するか。ProductSpecとTypeScriptによる取り組み
joere
3
360
Flutter Webを「SDK」として配る — 50以上のゲームを支える埋め込みアーキテクチャ
masayukisuda
0
180
Content Mapper APIの応用例~CSS Modules、言語ファイル~
uhyo
2
550
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Building the Perfect Custom Keyboard
takai
2
940
What does AI have to do with Human Rights?
axbom
PRO
1
2.5k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
600
The Cost Of JavaScript in 2023
addyosmani
55
10k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.2k
Automating Front-end Workflow
addyosmani
1370
210k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
520
Building Applications with DynamoDB
mza
96
7.3k
Amusing Abliteration
ianozsvald
1
380
WENDY [Excerpt]
tessaabrams
14
40k
Transcript
山手線一周の パフォーマンス改善 9/29 Tokyu Ruby会議 @suzuka_hori
自己紹介 すずか(@suzuka_hori) 高校国語教員(5年) フィヨルドブートキャンプ(1年) エースチャイルド株式会社(3ヶ月)
今日話すこと 山手線一周について(徒歩)
山手線一周(徒歩)とは? ・距離は40~45km ・12時間ぐらいかかる
昨年4月 初めての山手線一周
記録 約15時間
昨年10月 大江戸線一周 with 夫
素人
私
記録 約16時間
大江戸線 つらすぎてもう二度とやりたくない
山手線 またやりたい!
None
YamaNotesについて
内回り or 外回り 出発駅を設定
駅に着いたら 到着ボタン
進捗がわかる 編集できる
技術スタック バックエンド フロントエンド テスト・CI Google OAuth 2.0 データベース インフラ 外部サービス
開発期間 約3ヶ月
ドックフーディング 山手線2度目のチャレンジ
前より早く歩けるはず ・山手線一周の経験あり ・大江戸線一周も経験あり
記録 約15時間
メンタル面: バグの発見&アプリが遅くてイライラ 体力面: 1年間のプログラミング学習による運動不足 遅くなった原因
6/13 リリース
# 山手線を徒歩で一周
みんな早い(だいたい10~13時間) すごい人は6時間59分
私も、もっと早く歩きたい!
山手線一周のパフォーマンス改善
メンタル面: バグの発見&アプリが遅くてイライラ 体力面: 1年間のプログラミング学習による運動不足 遅くなった原因
1.アプリケーションの改善で ストレス軽減
・Rails7.2にアップグレード ・リファクタリングしやすいよう テストを書く(カバレッジ99%) こまめなメンテナンス
・gem Bulletを使ってN+1を直す ・pluckやlimitメソッドの利用 ・駅のデータでキャッシュを利用 SQLの最適化
PageSpeed Insightsを使い修正 無駄なJSやCSSの削減
Hotwireはレイテンシの影響を受け やすい →東京リージョンにする デプロイ先を変更
維持費は上がった(0→5ドル) でも、約半分の時間に!
山手線の駅30駅 ✖️ 1秒 = 30秒の削減 + 精神的ストレス減少 = 早く歩ける
2.体力面の強化
・毎日散歩 & 休日は10km目標 ・真夏はやる気が出なかったので、 これから頑張る 体力面の強化
10/13(日) 3回目のチャレンジ予定 目標:13時間
応援よろしくお願いします! # 山手線を徒歩で一周
おわりに Urawa.rb きてね!