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
minne でのハイブリッドクラウド運用
Search
shiro16
March 25, 2018
Technology
1
1.9k
minne でのハイブリッドクラウド運用
minne でのハイブリッドクラウド運用と CM 対応での構成変更とパフォーマンス改善の話@Rails Developers Meetup 2018: Day 2
shiro16
March 25, 2018
Tweet
Share
More Decks by shiro16
See All by shiro16
minne のアーキテクチャの進化とこれから
shiro16
1
3.5k
minne の開発環境の変革と今後
shiro16
0
1.1k
Rails6 upgrade タイムアタック
shiro16
2
2.8k
telepresence で始める k8s 時代のローカル開発
shiro16
10
5.9k
minne での検索改善の歴史
shiro16
1
2.5k
マイクロサービス事始め@技術編
shiro16
0
1.2k
Other Decks in Technology
See All in Technology
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
1
910
AIと融ける人間の冒険
pujisi
0
120
[PR] はじめてのデジタルアイデンティティという本を書きました
ritou
1
810
I tried making a solo advent calendar!
zzzzico
0
150
SwiftDataを覗き見る
akidon0000
0
140
わが10年の叡智をぶつけたカオスなクラウドインフラが、なくなるということ。
sogaoh
PRO
1
550
善意の活動は、なぜ続かなくなるのか ーふりかえりが"構造を変える判断"になった半年間ー
matsukurou
0
480
AI時代のアジャイルチームを目指して ー スクラムというコンフォートゾーンからの脱却 ー / Toward Agile Teams in the Age of AI
takaking22
11
6.5k
AI Agent Agentic Workflow の可観測性 / Observability of AI Agent Agentic Workflow
yuzujoe
1
1k
「駆動」って言葉、なんかカッコイイ_Mitz
comucal
PRO
0
140
チームで安全にClaude Codeを利用するためのプラクティス / team-claude-code-practices
tomoki10
7
3.3k
コールドスタンバイ構成でCDは可能か
hiramax
0
130
Featured
See All Featured
It's Worth the Effort
3n
188
29k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.9k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
51k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
730
Code Review Best Practice
trishagee
74
19k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
0
1.8k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
75
A Modern Web Designer's Workflow
chriscoyier
698
190k
Building Adaptive Systems
keathley
44
2.9k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
71k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
130
Leo the Paperboy
mayatellez
3
1.3k
Transcript
$.ରԠͰͷߏมߋͱύϑΥʔϚϯεվળ ޙ౻རത(.01FQBCP *OD 3BJMT%FWFMPQFST.FFUVQ%BZ NJOOFͰͷϋΠϒϦουΫϥυӡ༻
νʔϑςΫχΧϧϦʔυ 5PTIJIJSP(PUP!@TIJSP NJOOFࣄۀ෦ˏ(.0ϖύϘ
None
NJOOFͱ wΞϓϦ%-ສ w࡞Ոສਓ wTFSWFS w3BJMT w3VCZ w"84
/ZBI
"84 /ZBI
/ZBI
None
/ZBIͱ wϖύϘͷԾΠϯϑϥج൫ w0QFO4UBDLͰߏ w݄͔Βӡ༻։࢝ wNJOOFͰ݄ࠒ͔Βར༻։࢝
ͳͥ"84 /ZBI
"84 /ZBIͷཧ༝ͱ w"84Λ͏͜ͱʹͳͬͨܦҢΛՃ͢ΔNJOOFͷٕज़ج൫ ઓུ!ITCUΛࢀর wίετ"84/ZBI w৴པੑ ಛʹσʔλετΞ "84/ZBI w3BJMT ଞ
͕ಈ͘TFSWFS/ZBI wσʔλετΞ"84
Oͷ$.
͔Θ͍͍
ۓٸটू͞ΕΔਓʑ
$.ରԠͷۓٸটू wઈରʹམͱͨ͘͠ͳ͍ʂʂ̍ wສ͕ҰམͪͯϦΧόϦ͍ͨ͠ w࣌ͷΞΫηεͷഒΛࡹ͚ΔΑ͏ʹඋ͑Δ wࡢࠓ૿͍͑ͯΔ%%P4ͷඋ͑ w࠷ۙ ׂͱͣͬͱʁ QVTI࣌ʹ3%4ͷ$16༻
None
%%P4ͷඋ͑
$.ରԠલͷߏ ؆ུਤ
None
%%P4ରԠ w%%P4ͳͲͰ/ZBIΛӡ༻͍ͯ͠Δσʔληϯλʔ͕Ұ࣌తʹར༻Ͱ ͖ͳ͍ঢ়ଶʹͳͬͨࡍʹNJOOFར༻Ͱ͖ͳ͍ w࠷ѱσʔληϯλʔ͕ࢮΜͰNJOOFΛར༻Ͱ͖ΔΑ͏ʹ"84ଆ Ͱ&$ΠϯελϯεΛىಈ͓͖ͯ͠ΞΫηεͰ͖ΔΑ͏ʹ͢Δ w$MPVE'SPOUΛར༻ͨ͠%%P4ରԠ
$.ରԠޙͷߏ ؆ུਤ
None
$.ରԠޙͷߏ wϢʔβ͔ΒͷΞΫηε$MPVE'SPOUΛ௨͢͜ͱʹΑΓ"84 4IJFME4UBOEBSEͰ%%P4ޚ w"84ଆʹ3BJMT͕ಈ͍͍ͯΔ&$ΠϯελϯεΛཱͯͨ wSPVUFʹΑͬͯ"84/ZBIΞΫηεΛৼΓ͚Δ w/ZBIͷσʔληϯλʔʹো͕ى͖ͨ߹ɺͯ͢ͷΞΫηεΛ "84ଆʹ͚Δ͜ͱͰճආ w/ZBIଆͰΠϯελϯεΛ૿ͤΔʹݶք͕͋ͬͨͱ͍͏ࣄ
%%P4ରԠ
3%4ͷύϑΥʔϚϯεվળ
3%4ͷ w3%4GPS.Z42-ͷ͓ wΠϯελϯεαΠζSYMBSHF wࠓ·ͰۚͰԥ͖ͬͯͨ w1VTI৴࣌ʹ$16༻͑ wॏͯ͘ܨ͕Βͳ͍͜ͱ
None
1VTI࣌ͷରԠ
1VTI࣌ͷରԠ wJ04ͷ1VTIͷ࣌ͷΈ$16༻͕ΞήΞή wϢʔβͰJ04"OESPJE w4MPX2VFSZΛݟͯ$16༻্͕͕ͬͨ͋ͱؔͳ͍2VFSZ -PHʹग़ͪΌ͏ w྆04Ͱͷ1VTI࣌ͷ"1*ͷΞΫηεͷҧ͍ΛݟͯΈΔ
CJHGPPUΛ͏
CJHGPPUͱ wϖύϘͷϩάج൫ wόοΫΤϯυʹ5SFBTVSF%BUBΛར༻͍ͯ͠Δ wΞΫηεϨίʔυʹͳΔΑ͏ʹQBSBNTͷΛૹ͍ͬͯΔ wৄ͘͠αʔϏεʹدΓఴ͏ϩάج൫Λࢀর
ΫΤϦΛॻ͍ͯௐͨ݁Ռ
SELECT COUNT(1) AS cnt, params_controller, params_action FROM minne_activity WHERE TD_TIME_RANGE(
time, "2017-10-18 20:00:00", "2017-10-18 20:06:00", 'JST' ) GROUP BY params_controller, params_action ORDER BY cnt DESC;
ݪҼ͕໌ wJ04Ͱಛఆͷ"1*ͷΈଞͷ"1*ͷഒͷΞΫηε͕͋ͬͨ w/ ͷΑ͏ͳঢ়ଶͰ"1*ΛDBMM͍ͯͨ͠ wJ04ͷվमߟ͕͑ͨɺΞΫηε͕ݱঢ়ͷेഒʹͳͬͨΒ݁ہಉ ݁͡ՌʹͳΔͷͰ"1*ଆͰରԠ w֘ͷ"1*ͷΫΤϦ࣮ߦܭըྑͳͷͰDBDIFΛ͏
DBDIF͢Δ Rails.cache.fetch(cache_key, expires_in: 1.minutes) do @curation.products.includes(:hogehoge).page(params[:page]).per(20) end wDBDIF@LFZQBSBNTͷ͔Βੜ w࡞ͷใʹࡏݿͳͲؚ·ΕΔͨΊ͋Δఔ৽ͳσʔλ͕ཉ ͍͠ͷͰNJOVUFͰDBDIF͕ΕΔΑ͏ʹઃఆͨ͠
݁Ռ
None
None
͜ΕͰ$.४උόονϦʂʂ̍
ͬͯࢥ͏͡Όͳ͍Ͱ͔͢
ޙ w1VTI৴ޙͰͳ͍ͷʹ3%4ͷ$16༻͕ര্͛ wݪҼϘτϧωοΫΛղফͨ͜͠ͱʹΑΓϢʔβͷߦಈ͕มԽ͠ผͷ ϘτϧωοΫ͕ු͖ூΓʹ ͋Δ͋Δ wॏ͘ͳΔݪҼΛ࡞ͬͨΫΤϦΛಛఆͨ͠Β࣮ߦܭը࠷ѱͱ͍͏ײ͡ wͦͷଞʹଟͷ࣮ߦܭըͷѱ͍ΫΤϦ͕ wۚͰԥ͖ͬͯͨπέ͕
۪ʹվળ͢Δ͔͠ͳ͍Ͷ
ΫΤϦվળ wTMPXMPHͷग़ྗΛߦ͏ ݩʑग़ྗ͍ͯͨ͠ wFYQMBJOΛ࣮ͬͯߦܭըͷ֬ೝ wFYQMBJOͰ͕Α͘Θ͔Βͳ͍߹ϓϩϑΝΠϥʔ͏
&YQMBJO
&YQMBJO wΫΤϦͷ࣮ߦܭըͷ֬ೝ͕Ͱ͖Δ wGPSNBUKTPOΛࢦఆ͢Δͱใ͕૿͑Δ wUZQF"--ͱ͔ग़ͯΔͱਏ͍ w&YUSBʹ6TJOHpMFTPSUUFNQPSBSZͱ͔ग़ͯΔͱਏ͍ w݁ՌΛݩʹ༗ޮͦ͏ͳJOEFYͷՃΛߦ͏ wదʹJOEFY͕ΘΕͳ͍߹64&*/%&9ߏจͰڧ੍͢Δ
ϓϩϑΝΠϥʔ
ϓϩϑΝΠϥʔ wΫΤϦͷͲͷஈ֊ͷॲཧʹͲͷ͘Β͍ͷ͕͔͔͍࣌ؒͬͯΔ͔ʁΛݟ Δ͜ͱ͕Ͱ͖Δɻ w&YQMBJOͰ͕ͳͦ͞͏ͳΫΤϦͷΛݟ͚ͭΕΔՄೳੑ͕͋ Δ w&YQMBJOͰΘ͔Βͳ͍αʔόͷύϥϝʔλͷௐ͕ඞཁ͔ʁ͕Θ ͔Δ͔͠Εͳ͍
͜ΕΒΛۦ͠վળΛॏͶͨ݁Ռ
վળ݁Ռ w$16༻͕Λ͑ͳ͘ͳͬͨ w1VTI৴࣌ʹॏ͘ͳΔ͜ͱͳ͘ͳͬͨ wٸʹߴෛՙʹͳΔ͜ͱͳ͘ͳͬͨ wSYMBSHF͏ҙຯͳ͍ͷͰ
ಉ͡ঢ়گʹͳΒͳ͍ҝʹ w௨Λ༗ޮ׆༻͢Δ ࠓͰ௨͕͕͋ͬͨجຊεϧʔ wࠓճͷ݅Λड͚ͯҰ෦ͷϝϯόʔͷҙ͕ࣝมΘͬͯࢹͯ͘͠ΕΔΑ ͏ʹͳͬͨ wσʔλྔʹΑ࣮ͬͯߦܭըมΘͬͯ͘ΔͷͰϩάΛऩू͍͍ͯ͠ ײ͡ʹ͍͖͍ͯͨ͠ wΘΕͯͳ͍JOEFYཧ͍͖͍ͯͨ͠
͞Βʹඋ͑Δ
͞ΒͳΔରԠ w͓ͦΒ͘͜ΕͰେৎ͕ͩ࠷ѱͷঢ়گΛؑΈͯ४උ͢Δ wNJOOFNBTUFS TMBWF ूܭΫΤϦ༻ wNBTUFSͰͲ͏͠Α͏ͳ͍ͱ͍͏ঢ়گʹͳͬͨࡍʹεέʔϧ Ͱ͖ΔΑ͏ʹ४උ͓ͯ͘͠ wNBTUFS TMBWF
3BJMT༻ TMBWF ूܭΫΤϦ༻ ͘ Β͍͕ཧ
PDUPQVTΛ͏ wTXJUDIQPJOUݕ౼ͨ͠ w४උظ͕ؒिؒఔͱ͍͏ظؒͱ͍͏੍͕͋ΔͷͰಋೖܦݧ͕ ͋ΔPDUPQVTΛબ wͰͲ͏͠Α͏ͳ͘ͳͬͨ࣌Λఆͯ͠TMBWFΛཱ࣮ͯͯࡍʹ ຊ൪ͰͦͪΒʹΫΤϦΛྲྀ͢ͱ͍͏ͱ͜·ͰૉৼΓͨ͠ w$.࣌PDUPQVTΛ͕ͬͨݱࡏTXJUDIQPJOUΛ͍ͬͯΔ
ͦͷଞͷ$.ରԠ w"NB[PO"VSPSBબࢶͱͯ͋ͬͨ͠ͷͰݕূΛߦ͍࣮ࡍʹࢀর ΫΤϦΛྲྀ͢ͱ͍͏͜ͱͬͯΈͨɻ w͔͠͠ظ͍ͯͨ͠ύϑΥʔϚϯεվળ͕ݟΒΕͳ͔ͬͨ w"-#Ͱ"84/ZBIؒͷΞΫηεΛॠ࣌ʹৼΓ͚ΒΕΔ͔ͷݕূ w1&3$0/"UPPMLJUͷQULJMMͷಋೖͷݕ౼
ͦΜͳ͜ΜͳͰ͍͟$.։࢝
݁Ռ͔Β͍͏ͱ
શ͘མͪͳ͔ͬͨ
$.։͔࢝Βऴྃ·Ͱͷঢ়گ wશ͘མͪͳ͔ͬͨ w3%4ͷ$16༻ۭඈߦ wTMBWFʹΫΤϦΛྲྀ͢४උग़དྷ͍͕࣮ͯͨࡍʹTMBWFTFSWFSΛཱ ͯͯΫΤϦΛྲྀ͢ͱ͍͏͜ͱͳ͔ͬͨ w%%P4ͳ͘ฏʹաͤͨ͝
·ͱΊ
·ͱΊ w"84 /ZBIͷϋΠϒϦουΫϥυͷཧ༝ίετͱ৴པੑͱݎ ࿚ͳγεςϜΛ࡞Δҝ wϚΠΫϩαʔϏεԽΛਐΊ͍ͯΔͷͰ3%4͕ඞཁͱ͍͏໘ݮΔ ͔͠Εͳ͍ wߴෛՙͷݪҼΛΔҝʹߦಈϩάͷ׆༻Λߦ͏ͷҰͭͷखஈ wΫΤϦͷνϡʔχϯάେࣄO wۚͰԥΓଓ͚Δͷྑ͘ͳ͍ʂ