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.3k
クラシルの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
19k
実践!リーンなプロダクト開発
okutaku0507
26
61k
クラシルの地味な裏側
okutaku0507
0
2.6k
思いつきでgemを作ると後悔する話
okutaku0507
0
260
急激に成長するクラシルと組織を Ruby on Railsでどう支えるか
okutaku0507
2
840
Railsを使って最短1日でAMPに対応する
okutaku0507
0
1.4k
Railsでキャッシュをいい感じに分散して期限切れを軽減する
okutaku0507
0
1.2k
Other Decks in Programming
See All in Programming
SpringBoot3.4の構造化ログ #kanjava
irof
2
1k
Pythonでもちょっとリッチな見た目のアプリを設計してみる
ueponx
1
570
pylint custom ruleで始めるレビュー自動化
shogoujiie
0
120
Ruby on cygwin 2025-02
fd0
0
150
Writing documentation can be fun with plugin system
okuramasafumi
0
120
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
0
210
富山発の個人開発サービスで日本中の学校の業務を改善した話
krpk1900
5
390
Multi Step Form, Decentralized Autonomous Organization
pumpkiinbell
1
750
楽しく向き合う例外対応
okutsu
0
150
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
2
470
さいきょうのレイヤードアーキテクチャについて考えてみた
yahiru
3
760
個人アプリを2年ぶりにアプデしたから褒めて / I just updated my personal app, praise me!
lovee
0
350
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
133
33k
Faster Mobile Websites
deanohume
306
31k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Code Review Best Practice
trishagee
67
18k
How STYLIGHT went responsive
nonsquared
98
5.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
Unsuck your backbone
ammeep
669
57k
Scaling GitHub
holman
459
140k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Code Reviewing Like a Champion
maltzj
521
39k
Optimizing for Happiness
mojombo
376
70k
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
͝੩ௌɺ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ