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
クラシルのwebサイトをちょっとした改善で100倍速にした話
Search
Takuya Okuhara
June 24, 2017
Programming
5
3.4k
クラシルのwebサイトをちょっとした改善で100倍速にした話
2017-06-22 Rails Developers Meetup #2
Takuya Okuhara
June 24, 2017
Tweet
Share
More Decks by Takuya Okuhara
See All by Takuya Okuhara
プロダクトマネージャーの時代はもう始まっている
okutaku0507
5
20k
実践!リーンなプロダクト開発
okutaku0507
26
62k
クラシルの地味な裏側
okutaku0507
0
2.7k
思いつきでgemを作ると後悔する話
okutaku0507
0
280
急激に成長するクラシルと組織を Ruby on Railsでどう支えるか
okutaku0507
2
900
Railsを使って最短1日でAMPに対応する
okutaku0507
0
1.5k
Railsでキャッシュをいい感じに分散して期限切れを軽減する
okutaku0507
0
1.2k
Other Decks in Programming
See All in Programming
Tangible Code
chobishiba
3
700
「文字列→日付」の落とし穴 〜Ruby Date.parseの意外な挙動〜
sg4k0
0
180
しっかり学ぶ java.lang.*
nagise
1
410
CSC509 Lecture 11
javiergs
PRO
0
310
オフライン対応!Flutterアプリに全文検索エンジンを実装する @FlutterKaigi2025
itsmedreamwalker
2
240
All(?) About Point Sets
hole
0
210
ゼロダウンタイムでミドルウェアの バージョンアップを実現した手法と課題
wind111
0
210
Atomics APIを知る / Understanding Atomics API
ssssota
1
180
flutter_kaigi_2025.pdf
kyoheig3
1
350
なぜ強調表示できず ** が表示されるのか — Perlで始まったMarkdownの歴史と日本語文書における課題
kwahiro
12
7.2k
詳細の決定を遅らせつつ実装を早くする
shimabox
1
1.3k
Amazon Bedrock Knowledge Bases Hands-on
konny0311
0
150
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
174
15k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Practical Orchestrator
shlominoach
190
11k
A Tale of Four Properties
chriscoyier
162
23k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
The Invisible Side of Design
smashingmag
302
51k
Optimizing for Happiness
mojombo
379
70k
Facilitating Awesome Meetings
lara
57
6.6k
Building Adaptive Systems
keathley
44
2.8k
Transcript
ΫϥγϧͷXFCαΠτΛͪΐͬͱͨ͠ վળͰഒʹͨ͠ Ԟݪ
⿏ΞδΣϯμ ɾࣗݾհ ɾEFMZͱʁΫϥγϧͱʁ ɾΫϥγϧʹ͓͚Δදࣔվળ ɾ࠷ޙʹ
⿏ࣗݾհ Α͘͏ΞΠίϯ ɾPLVUBLV ɾ3BJMTྺఔ େֶੜ͔Β ɾେֶӃͰੜԽֶઐ߈ தୀ ɾEFMZࡢʹδϣΠϯ
ɾ͖ͳྉཧ͏ͲΜ ɾٳΞΠεΧϑΣϥς୳͠ ɾೣ
⿏ϓϩάϥϛϯάΛ࢝Ί͖͔͚ͨͬ ͜͜ͰΞϧόΠτͯ͠·ͨ͠ʂ
⿏ϓϩάϥϛϯάΛ࢝Ί͖͔͚ͨͬ
⿏ֶੜ࣌ ɾϑοταϧͷίϛϡχςΟɾϚονϯάαʔϏε ɾϩʔϯν͔Βप ɾొϢʔβʔ ໊ಥഁ Πϯλʔωοτָ͍͠
⿏EFMZͱ ɾϏδϣϯʮ#&5)&46/ʯ ɾࣾһ໊ ɾϨγϐಈըαʔϏεLVSBTIJSV ɾ͝൧৯์
⿏LVSBTIJSVͱ ɾ4/4ϑΝϯສਓ ɾ݄ؒ࠶ੜԯճ ɾJ04ΞϓϦϨϏϡʔ ɹ⭐⭐⭐⭐⭐ ݅ ɾ"OESPJEΞϓϦϨϏϡʔ ɹ⭐⭐⭐⭐⭐
݅
ʮΫϥγϧΞϓϦ͕͍͢͝Ͱ͢Ͷʯ
ͪΐͬɺɺɺ
ΫϥγϧͷXFCؤுͬͯ·͢
⿏XFCͷදࣔվળ݁Ռ ɾදࣔͷվળ ɹTFDTFD ഒ λΠτϧ͔ͳΓͬͯɺ͢Έ·ͤΜ' ɾ1BHF4QFFE*OTJHIUT ˞ը૾දࣔྃ࣌ʹܭଌ
⿏ࣄͷൃ ʢAʣŇP0ᄾݺ
⿏औΓΜͩࣄ ɾΩϟογϡͷಋೖ ɾը૾ͷ࠷దԽ ɾෆཁͳDTTKBWBTDSJQUͷഉআ ʊਓਓਓਓਓਓਓਓਓਓਓਓਓਓਓਓਓʊ ʼɹͨΓલͳ͜ͱ͕Ͱ͖ͯͳ͔ͬͨɹʻ ʉ:?:?:?:?:?:?:?:?:?:?:?:?:?:?:?:ʉ
⿏Ωϟογϡͷಋೖ ɾϘτϧωοΫͲ͜ʹ͋Δͷ͔ʁ XFCʹϩάΠϯػೳ͕ͳ͍ શͯͷϢʔβʔ͕ಉ͡ϖʔδΛӾཡ ߋ৽සগͳ͍ ͦͷʹಉ͡42-͕Δ
⿏Ωϟογϡͷಋೖ ɾ3BJMTͰͷΩϟογϡ ɹ⿏ϖʔδΩϟογϡഇࢭ ɹ⿏ΞΫγϣϯΩϟογϡഇࢭ ɹ⿏ϑϥάϝϯτΩϟογϡ ɾίϯϙʔωϯτ͝ͱʹظݶΛࢦఆͯ͠ΩϟογϡͰ͖Δ ɾϏϡʔͷϩδοΫͷϑϥάϝϯτΛΩϟογϡϒϩοΫ ɹͰϥοϓ͢Δ͚ͩͰ͑Δ
⿏Ωϟογϡͷಋೖ ɾར༻ྫ #FGPSFNT 7JFXTNTc"DUJWF3FDPSENT "GUFSNT 7JFXTNTc"DUJWF3FDPSENT 7JFXͰͷ"DUJWF3FDPSEԆධՁͳͷͰɺ͜ΕͰ0,
⿏Ωϟογϡͷಋೖ ɾίʔυΛಡΜͰΈΑ͏ʂ ཁɺLFZWBMVF͕͋ͬͨΒಡΈɺͳ͔ͬͨΒॻ͘
⿏Ωϟογϡͷಋೖ ɾதʁ 4USJOHͷΦϒδΣΫτ͕֨ೲ͞Ε͍ͯΔ
⿏Ωϟογϡͷಋೖ ɾߋ৽͍ͨ͠߹ʁ Ͱ͖Δ͚ͩ͘Ωϟογϡ͍͚ͤͨ͞Ͳɺߋ৽͍ͨ͠ ಛఆͷϑϥά͕͋ΔͱΩϟογϡΛߋ৽͢ΔΈ όονͰճ͢
⿏ը૾ͷѹॖ ɾ5JOZ1/(͕͓͢͢Ί
⿏ը૾ͷѹॖ ɾσβΠφʔ͔ΒόφʔΛ͕͋ͬͯ͘Δɺɺɺɺ Ͳ͕ͬͪը࣭͕͍͍ͱࢥ͍·͔͢ʁ)
⿏ը૾ͷѹॖ ɾύϯμͷҖྗ ,# ,# ͷѹॖʹޭʂ
⿏ը૾ͷѹॖ ɾࣗલͰѹॖ ɾ༻ྫ QOHRVBOUTQFFERVBMJUZCBDLHSPVOEQOH ɾRVBMJUZΛࢦఆͰ͖ΔͷͰศར ɾ͜ΕΛTZTUFNͱ͔Ͱୟ͚͍͍͔ CSFXJOTUBMMKQFHPQUJN CSFXJOTUBMMQOHRVBOU
⿏ը૾ͷ࠷దԽ ɾσόΠεʹ࠷దͳαΠζΛબ΅͏ খ ,# த ,# େ ,# શ෦Ұ൪େ͖͍αΠζΛݺΜͰͨ
⿏ը૾ͷ࠷దԽ ɾσόΠεʹ࠷దͳαΠζΛબ΅͏ খ ,# த ,# େ ,# 1$ .PCJMF
ߴ͔Ζ͏ɺΑ͔Ζ͏Ͱͳ͍ ͨΓલ
⿏ෆཁͳ֎෦ϑΝΠϧΛഉআ ɾද֨ ͜Εͱ͔ ؔऀ͍Βͬ͠ΌͬͨΒ͢Έ·ͤΜɺɺɺ ͜ΕΛΊͬͪΌSFOEFS͢Δͱ͔Γ͕ͪɺɺɺ
⿏XFCͷදࣔվળ݁Ռ ɾදࣔͷվળ ɹTFDTFD ഒ ɾ1BHF4QFFE*OTJHIUT
⿏XFCαʔόʔͷνϡʔχϯά ɾςοΫϒϩάߋ৽ʂ IUUQUFDIEFMZKQFOUSZ ΩϟογϡΛಋೖ͢Δ͜ͱͰ%#ͷෛՙ͕ݮ ΑΓଟ͘ͷϦΫΤετΛࡹ͚ΔΑ͏ʹ ͋ͨΓɺສਓಉ࣌ଓ༨༟
⿏ΩϟογϡΛ͍͍ײ͡ʹ͢ΔHFN ɾNJMMBT ϛϠε IUUQRJJUBDPNPLVUBLVJUFNTBCBF ྑ͍ײ͡ʹΩϟογϡΛࢄ͍͚ͤͨ͞ͲɺΩϟογϡ Ε͍͗ͨ͠ɺͰ͖Δָ͚ͩΛ͍ͨ͠ ৄࡉ2JJUBͰʂ
8FSFIJSJOH
͝੩ௌɺ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ