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
Railsでキャッシュをいい感じに分散して期限切れを軽減する
Search
Takuya Okuhara
July 18, 2017
Programming
0
1.2k
Railsでキャッシュをいい感じに分散して期限切れを軽減する
第6回スタートアップRails勉強会
LT資料
http://qiita.com/okutaku/items/236703ab0a1731148e57
Takuya Okuhara
July 18, 2017
Tweet
Share
More Decks by Takuya Okuhara
See All by Takuya Okuhara
プロダクトマネージャーの時代はもう始まっている
okutaku0507
5
19k
実践!リーンなプロダクト開発
okutaku0507
26
62k
クラシルの地味な裏側
okutaku0507
0
2.7k
思いつきでgemを作ると後悔する話
okutaku0507
0
270
急激に成長するクラシルと組織を Ruby on Railsでどう支えるか
okutaku0507
2
880
Railsを使って最短1日でAMPに対応する
okutaku0507
0
1.5k
クラシルのwebサイトをちょっとした改善で100倍速にした話
okutaku0507
5
3.3k
Other Decks in Programming
See All in Programming
新しいモバイルアプリ勉強会(仮)について
uetyo
1
260
バイブコーディングの正体——AIエージェントはソフトウェア開発を変えるか?
stakaya
5
930
QA x AIエコシステム段階構築作戦
osu
0
270
AIに安心して任せるためにTypeScriptで一意な型を作ろう
arfes0e2b3c
0
370
生成AI、実際どう? - ニーリーの場合
nealle
0
110
#QiitaBash TDDで(自分の)開発がどう変わったか
ryosukedtomita
1
370
Claude Code と OpenAI o3 で メタデータ情報を作る
laket
0
130
Introduction to Git & GitHub
latte72
0
110
兎に角、コードレビュー
mitohato14
0
120
実践 Dev Containers × Claude Code
touyu
1
200
decksh - a little language for decks
ajstarks
4
21k
The state patternの実践 個人開発で培ったpractice集
miyanokomiya
0
110
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Gamification - CAS2011
davidbonilla
81
5.4k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
RailsConf 2023
tenderlove
30
1.2k
For a Future-Friendly Web
brad_frost
179
9.9k
Measuring & Analyzing Core Web Vitals
bluesmoon
8
560
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Into the Great Unknown - MozCon
thekraken
40
2k
How GitHub (no longer) Works
holman
314
140k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
Transcript
3BJMTͰΩϟογϡΛ͍͍ײ͡ʹ ࢄͯ͠ظݶΕΛܰݮ͢Δ Ԟݪ
⿏ࣗݾհ Α͘͏ΞΠίϯ ɾPLVUBLV ɾ3BJMTྺఔ େֶੜ͔Β ɾେֶӃͰੜԽֶઐ߈ தୀ ɾEFMZࡢʹδϣΠϯ
ɾ͖ͳྉཧ͏ͲΜ ɾٳΞΠεΧϑΣϥς୳͠ ɾೣ
LVSBTIJSV<Ϋϥγϧ>ͬͯ͝ଘͰ͔͢ʁ
⿏LVSBTIJSVͱ ɾ4/4ϑΝϯສਓ ɾ݄ؒ࠶ੜԯճ ɾJ04ΞϓϦϨϏϡʔ ɹ⭐⭐⭐⭐⭐ ݅ ɾ"OESPJEΞϓϦϨϏϡʔ ɹ⭐⭐⭐⭐⭐
݅
⿏ͦͦΩϟογϡͱʁ %#ͷΞΫηε͕ϘτϧωοΫʹͳΓ͍͢ %#ͷΞΫηε݁Ռɺ·ͨ࠷ऴ࢈ΛҰ࣌తʹอ࣋
⿏Ωϟογϡͷಋೖʹ૬ੑ͕͋Δ ɾ૬ੑ͕ྑ͍ ɹ⿏ಉ͡63-ʹଟ͘ͷϦΫΤετ ϝσΟΞ ɹΫϥγϧʹ͏͚ͬͯͭʂ ɾ૬ੑ͕ѱ͍ ɹ⿏ϢʔβʔʹΑͬͯίϯςϯπΛग़͠Θ͚͍ͯΔ ɹͷΓΑ͏
⿏Ϋϥγϧ๊͕͍͑ͯͨ ɾΩϟογϡ͕ภͬͪΌ͏ ɾΩϟογϡ͕ΕͪΌ͏ ɾɾɾʁ
⿏Ωϟογϡ͕ภͬͪΌ͏ (FU)JUT ৽ணτοϓͳͲͷΞΫηε͕ଟ͍ Ωϟογϡ͕Ұ෦ʹͷͬͯ͠·͍ͬͯΔͨΊ (FU)JUTʹภΓ͕ੜ͡Δ
⿏Ωϟογϡ͕ภͬͪΌ͏ ͜ͷ··์ஔͯ͠ɺ 57$.ͳͲͷΞΫηε͕དྷΔͱɺɺɺ 8 <5>8"3/MPDBMIPTUGBJMFE DPVOU 5JNFPVU&SSPS*0UJNFPVU % <5>%(%BMMJ/FUXPSL&SSPS4PDLFUPQFSBUJPOGBJMFE SFUSZJOH
% <5>%(%BMMJ4FSWFSDPOOFDUMPDBMIPTU % <5>%(%BMMJ/FUXPSL&SSPS4PDLFUPQFSBUJPOGBJMFE SFUSZJOH ΞΫηε͕ภͬͨΩϟογϡʔαʔόʔͷ$16ίωΫγϣϯ͕૿େ͠ɺ 5JNFPVUΒ$POOFDUJPOGBJMFEͳͲΛى͜͢ɺɺɺ ίωΫγϣϯʹҰ୴Τϥʔ͕ੜ͡ΔͱϦτϥΠʹNTͭ ઃఆʹΑΔ ϢʔβʔNTͭʂʂʂ
⿏Ωϟογϡ͕ภͬͪΌ͏ ภͬͪΌ͏ͳΒࢄͤ͞Α͏ʂ DBDIF@LFZlUFTULFZz DBDIFS$BDIFS0CKFDU$BDIFSOFX LFZDBDIF@LFZ DBDIFSXSJUF lUFTUTUSz #
Cache write: test-key-1 # Cache write: test-key-2 # Cache write: test-key-3 LFZͷඌʹ൪߸Λ͚ͭΔ EBMMJMJCEBMMJSJOHSC (FU)JUT ࢄޭ
⿏Ωϟογϡ͕ΕͪΌ͏ ߋ৽සͷ݉Ͷ߹͍͔Β͘Ωϟογϡͨ͘͠ͳ͍ 57$.ͳͲͰଟ͘ͷϢʔβʔ͕ࡏ ࠷ѱͷλΠϛϯάͰΞΫηεͷଟ͍Ωϟογϡ͕ΕΔɺɺɺ ˞αʔόʔͷΞϥʔτΠϫϯίϑ͕ڭ͑ͯ͘ΕΔ
⿏Ωϟογϡ͕ΕͪΌ͏ ɾࡧ ɹࢄຊ࣭తͳղܾࡦͰͳ͍ ɹ୭͔͕٘ਜ਼ʹͳΒͳ͚ΕͳΒͳ͍ Ωϟογϡߋ৽ ɹ ɹόονॲཧͰߋ৽ͤ͞Δʁ ɹϦΫΤετͷछྨ͕ଟ͗ͯ͢ݱ࣮తͰͳ͍
⿏Ωϟογϡ͕ΕͪΌ͏ ɾ٘ਜ਼͠ΐ͏͕ͳ͍ ɹ٘ਜ਼Λ࠷খݶʹͰ͖Δํ๏ͳ͍͔ʁ ͦΜͳຐ๏Έ͍ͨͳํ๏͋Δͷɾɾɾʁ ɾɾɾ ؼ్தͷిंͰࢥ͍͍ͭͨ
⿏Ωϟογϡ͕ΕͪΌ͏ ༗ޮظݶʹάϥσʔγϣϯΛ͚ͭΕ͍͍Μͩʂ ࢄͤ͞Δ͜ͱͰΩϟογϡΕͷ͕֬O ภΓղܾ ͍ظݶͷΩϟογϡ͕Εͯɺظݶ͕͍Ωϟογϡ༗ޮͷ·· ΕͨΩϟογϡͷϦΫΤετ͕શͯΛߋ৽
None
⿏ΩϟογϡΛ͍͍ײ͡ʹ͢ΔHFN ͜Ε·ͰͷػೳΛHFNʹ͠·ͨ͠ʂ .JMMBT ϛϠεɿຐ๏ͷέʔΩ gem 'millas' Πϯετʔϧ͢Δ͚ͩͰΑ͠ͳʹͬͯ͘Ε·͢ʂ ΫϥγϧͰେ׆༂
8FSFIJSJOH
͝੩ௌɺ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ