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
山手線一周のパフォーマンス改善
Search
すずか
September 29, 2024
Technology
0
240
山手線一周のパフォーマンス改善
TokyuRuby会議15 登壇資料
すずか
September 29, 2024
Tweet
Share
More Decks by すずか
See All by すずか
初✖️3 Kaigi on Rails 2024の思い出
suzukahr
0
69
YamaNotesの開発について
suzukahr
0
120
Urawa.rbができるまで
suzukahr
0
92
Impressions of the Ruby Kaigi
suzukahr
1
6.4k
Other Decks in Technology
See All in Technology
Snowflake Summit 2025全体振り返り / Snowflake Summit 2025 Overall Review
mtpooh
2
390
Кто отправит outbox? Валентин Удальцов, автор канала Пых
lamodatech
0
340
ひとり情シスなCTOがLLMと始めるオペレーション最適化 / CTO's LLM-Powered Ops
yamitzky
0
420
標準技術と独自システムで作る「つらくない」SaaS アカウント管理 / Effortless SaaS Account Management with Standard Technologies & Custom Systems
yuyatakeyama
3
1.2k
OpenHands🤲にContributeしてみた
kotauchisunsun
1
430
Snowflake Summit 2025 データエンジニアリング関連新機能紹介 / Snowflake Summit 2025 What's New about Data Engineering
tiltmax3
0
310
Node-REDのFunctionノードでMCPサーバーの実装を試してみた / Node-RED × MCP 勉強会 vol.1
you
PRO
0
110
GitHub Copilot の概要
tomokusaba
1
130
生成AIで小説を書くためにプロンプトの制約や原則について学ぶ / prompt-engineering-for-ai-fiction
nwiizo
3
1.1k
Amazon ECS & AWS Fargate 運用アーキテクチャ2025 / Amazon ECS and AWS Fargate Ops Architecture 2025
iselegant
16
5.4k
Prox Industries株式会社 会社紹介資料
proxindustries
0
270
5min GuardDuty Extended Threat Detection EKS
takakuni
0
130
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
17
940
A better future with KSS
kneath
239
17k
The Straight Up "How To Draw Better" Workshop
denniskardys
234
140k
Done Done
chrislema
184
16k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Designing for humans not robots
tammielis
253
25k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Building Applications with DynamoDB
mza
95
6.5k
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 きてね!