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 でつくるマルチテナント型Webアプリケーション / multi-tenant we...
Search
Kizashi Nagata
May 12, 2018
Technology
2.8k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rails でつくるマルチテナント型Webアプリケーション / multi-tenant web application building with Rails
Kizashi Nagata
May 12, 2018
More Decks by Kizashi Nagata
See All by Kizashi Nagata
ビルドが遅い
kizashi1122
0
600
SQS の使い方を わかっていなかった / I didn't know how to use SQS correctly
kizashi1122
0
880
aws-vault を使った セキュアなアクセスキー管理 / Manage AWS Access Key More Securely By Using aws-vault
kizashi1122
0
1.1k
inotify の話 / About inotify
kizashi1122
0
770
B2Bクラウドサービスをゼロから立ち上げて、利用社数が1000社を超えるまでの道のり / a startup started B2B SaaS business from ground zero
kizashi1122
0
1.1k
Other Decks in Technology
See All in Technology
AIっぽい文章を採点して人間らしく直すアプリを作ってみた
yama3133
2
190
AIエージェントが名古屋の猛暑からあなたを守る
happysamurai294
0
120
白金鉱業Meetup_Vol.24_「AIエージェントは分けるほど良い」は本当か? / Is it true that “the more you divide AI agents, the better”?
brainpadpr
1
390
NAB Show 2026 動画技術関連レポート / NAB Show 2026 Report
cyberagentdevelopers
PRO
0
200
気づかぬうちにセキュリティ負債を生むAPIキー運用
sgwrmctk
0
130
MUSUBI 田中裕一『AIと共に行う「しごとのリデザイン」- スモールバックオフィス編』AI Ops Lab #4
musubi
0
190
エンジニアリング戦略の作り方 / Crafting Engineering Strategy
iwashi86
21
7k
自律型AIエージェントは何を破壊するのか
kojira
0
160
いまさら聞けない「仕様駆動開発入門」 〜AI活用時代の開発プロセスを考える〜
findy_eventslides
2
120
LayerXにおけるセキュリティ管理の現在地と次の一手
tosho
0
200
LayerX コーポレートエンジニアリング室におけるサプライチェーンセキュリティへの取り組み / Supply Chain Security at LayerX Corporate Engineering
yuyatakeyama
2
490
連合学習と機密コンピューティング
lycorptech_jp
PRO
0
120
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
370
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
HDC tutorial
michielstock
2
710
From π to Pie charts
rasagy
0
210
Six Lessons from altMBA
skipperchong
29
4.3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
The untapped power of vector embeddings
frankvandijk
2
1.8k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
340
Transcript
3BJMTͰͭ͘ΔϚϧνςφϯτܕ 8FCΞϓϦέʔγϣϯ ୈճ3VCZؔษڧձ Ӭాɹஹ !LJ[BTIJ
ࣗݾհ w Ӭాɹஹʢ!LJ[BTIJʣ w גࣜձࣾΠϯήʔδ$50 w ʮ3FMBUJPOʯͱ͍͏##͚ΫϥυαʔϏεΛ։ൃ w ʮ3FMBUJPOʯʹ͍ͭͯޙड़ w
झຯίʔώʔʢࣗͰੜ౾ΛᖿḦͯ͠Ṣ͍ͯҿΜͰΔʣ
Ϛϧνςφϯτܕ ΞϓϦέʔγϣϯͬ ͯʁ ࠷ۙͲ͔͜Ͱൃද͞ΕͯͨΑ͏ͳɾɾ
IUUQTHGYIBUFOBCMPHDPNFOUSZ
Ϛϧνςφϯτܕ ΞϓϦέʔγϣϯͱ ͦͷલʹ
ʮ3FMBUJPOʯͱ w ʮϝʔϧड৴ശΛνʔϜͰڞ༗͢ΔͨΊͷαʔϏεʯ w ར༻γʔϯɿTVQQPSU!FYBNQMFDPN JOGP!FYBNQMFDPNͳͲͷදΞυϨεΛෳਓͰର Ԡɾཧ͢Δ w (NBJMͳͲͷݸਓ͚8FCϝʔϧαʔϏεͱҧͬͯɺ νʔϜͰڞ༗͢ΔͨΊʹඞཁͳػೳɺศརͳػೳ͕
ࡌ͞Ε͍ͯΔ
ʮ3FMBUJPOʯػೳ w 5XJUUFS-*/&! w ঝೝػೳ w ೋॏૹ৴ࢭػೳ w ίϝϯτೖྗʢνʔϜίϝϯτʣ w
༧ૹ৴ w ςϯϓϨʔτ w ूܭ Ϗδωε͚ͷػೳ ͕ἧ͍ͬͯΔ
Ϗδωε͚ʁ
#$ͱ##ͷҧ͍ #$ ΞϓϦέʔγϣϯ ## ΞϓϦέʔγϣϯ ৫ ৫ ৫
##ΞϓϦʹϚϧνςφϯτܕΞϓϦ ΞϓϦέʔγϣϯ ৫ ৫ ৫ ৫νʔϜʢʹςφϯτʣ ͕ΞϓϦέʔγϣϯʹ ରͯ͠ෳଘࡏ͢ΔΞʔΩ ςΫνϟΛϚϧνςφϯτܕ ΞʔΩςΫνϟͱݺͿ
جຊతʹɺϢʔβςφϯ τͷ෦ͷใͷΈΞΫηε ͕Ͱ͖Δ
ϚϧνςφϯτܕΞϓϦͷઃܭ w ·ͣߟ͑Δ͜ͱ w ςφϯτ͝ͱʹ3%#.4ͷσʔλΛͲ͏͢Δ͔ʁ w 63-Ͳ͏͢Δ͔ʁ w ͦͷଞͷσʔλετΞͰͲ͏͢Δ͔ʁ w
ͪ͜Βࠓճলུ
3%#.4σʔλͷ w ΠϯελϯεϨϕϧͰ w εΩʔϚϨϕϧͰ w ߦϨϕϧͰ
ΠϯελϯεϨϕϧͰ w ςφϯτ͝ͱʹҟͳΔ3%#.4ΠϯελϯεͰཧ͢Δ w ίωΫγϣϯଓͷΦʔόϔου w ސ٬͕૿͑Δͨͼʹ3%#.4ΠϯελϯεΛ૿͢͜ͱʹ ͳΔ
"QQ
εΩʔϚϨϕϧͰ w 1PTUHSF42-ͷεΩʔϚʢTDIFNBʣ w εΩʔϚʹ໊લۭؒΛΘ͚ΔΈ w DPNQBOZVTFSTͱDPNQBOZVTFSTςʔϒϧผςʔϒϧ w 4&5TFBSDI@QBUI50DPNQBOZΛ࣮ߦͨ͠ޙͰ͋ΕɺVTFSTςʔϒϧ҉ʹ DPNQBOZVTFSTςʔϒϧΛࢦ͍ͯ͠Δ͜ͱʹͳΔ
w ςφϯτ৽ن࡞࣌શςʔϒϧͷηοτΛ࡞Δ͜ͱʹͳΔ "QQ
ߦϨϕϧͰ w ΞϓϦέʔγϣϯʔσʔλϕʔεΠϯελϯε w ςʔϒϧશςφϯτͰڞ༗ w શςʔϒϧʹUFOBOU@JEΧϥϜΛ࣋ͭ w 8IFSF۟ΛΕͨΒΞτ "QQ
UFOBOU@JE
3FMBUJPOεΩʔϚϨϕϧ w 1PTUHSF42-ͷεΩʔϚ͕ϚϧνςφϯτΞϓϦͱͷ૬ੑ ͕͍͍ͱ͍͏͜ͱ͕Θ͔͍ͬͯͨͷͰ3FMBUJPOͰ໎Θ ͣʹ1PTUHSF42-Λ࠾༻ w ςʔϒϧ͝ͱʹ8IFSF۟Λߟ͑ͳͯ͘ྑ͍ͷ͍͍ "QQ
σʔλ͕͍ͯ͠Δͱ҆৺͔ʁ w ଞͷςφϯτͷใ͕ࠞࡏ͢ΔͷΛΠϠ͕Δձࣾ͋Δ w ෆ۩߹ʹΑΓଞςφϯτͷใʹΞΫηεͯ͠͠·͏͜ͱ ͋ΓಘΔʢ͋ͬͯͳΒͳ͍͕ʣ !20
63-ͷઃܭ w ςφϯτใΛ63-ʹؚΊΔ͔ʁ w ؚΊͳ͍ʢશςφϯτڞ௨ʣ w ؚΊΔ w ύεʹؚΊΔ w
αϒυϝΠϯʹؚΊΔ
63-શςφϯτڞ௨ʹ͢Δ w (4VJUFͳͲ w IUUQTNBJMHPPHMFDPN w σʔλϕʔεʹϩάΠϯϢʔβ͕ଐ͢ΔςφϯτใΛ࣋ ͪɺͦͷςφϯτʹඥͮ͘σʔλʹͷΈΞΫηεՄೳͱ ͢Δ
ύεʹςφϯτใΛͭ w :BNNFSͳͲ w IUUQTXXXZBNNFSDPNJOHBHFKQIPNF w ଞςφϯτͰ63-ͷϗετ෦ಉ͡ͱ͍͏͜ͱ w $PPLJFςφϯτ͝ͱΘ͚Δ͜ͱͰ͖ͳ͍ʢଟʣ w
$PPLJFʹQBUIใΛ࣋ͭ͜ͱ͕Ͱ͖Δ͕ɺηΩϡϦ ςΟ্ͷޮՌͳ͍ w :BNNFSͰ$PPLJFͷ1BUIͩͬͨ IUUQTCMPHUPLVNBSVPSH
αϒυϝΠϯʹςφϯτใΛͭ w 4MBDLͳͲ w IUUQTJOHBHFKQTMBDLDPNNFTTBHFT w ςφϯτ͝ͱʹυϝΠϯ͕ҟͳΔ w $PPLJFςφϯτ͝ͱʹҟͳΔ w
44-ূ໌ॻϫΠϧυΧʔυυϝΠϯʹରԠ͍ͯ͠Δඞ ཁ͕͋Δ
3FMBUJPOαϒυϝΠϯܕ w ಛʹͩ͜ΘΓͳ͔ͬͨɻ w ։ൃڥϧʔϓόοΫΞυϨεΛαϒυϝΠϯܕʹ͢Δඞཁ͕ ͋Δ w #BTFDBNQ͕ఏڙ͍ͯ͠ΔYJQJPυϝΠϯΛར༻ w IUUQUFOBOUYJQJPΈ͍ͨͳײ͡
w εςʔδϯάڥ-FUT&ODSZQUΛͬͯ44-ڥΛߏͯ͠ ͍Δɻ࠷ۙ-FUT&ODSZQU͕ϫΠϧυΧʔυରԠͨ͠ͷͰ͏༧ఆɻ
3%#.4εΩʔϚͰ 63-αϒυϝΠϯ ͰɺͲ͏࣮͢Δ͔
BQBSUNFOUHFNΛ͏ w DPNQBOZBQQDPNͰΞΫηε͞ΕͨΒɺࣗಈతʹσʔ λϕʔεͷDPNQBOZεΩʔϚʹΓସ͑Δʢ4&5 TFBSDI@QBUI50DPNQBOZʣΈ͕༻ҙ͞Ε͍ͯΔɻ ͜͜ͰεΩʔϚΛ Γସ͑Δ
SBDLNJEEMFXBSF ͪ͜ΒͰͲͷεΩʔϚʹ ΞΫηεͯ͠Δ͔ҙࣝ͠ͳ͍
BQBSUNFOUHFNΛ͏ w ΧϥϜՃɺมߋͳͲͷECNJHSBUFશεΩʔϚʹద༻ ͢Δඞཁ͕͋Δɻ w ͜ΕBQBSUNFOUHFN͕ࣗಈతʹશεΩʔϚʹద༻͠ ͯ͘ΕΔɻ w ςφϯτ͕૿͑Ε૿͑Δ΄ͲECNJHSBUFʹ͕࣌ؒ
͔͔ͬͯ͠·͏ʢαʔϏεఀࢭ͕࣌ؒ͘ͳΔʣ w BQBSUNFOUHFNͷ࠷ۙͷΞοϓσʔτͰECNJHSBUF͕ ฒྻ࣮ߦͰ͖ΔΑ͏ʹͳͬͨɻ
BQBSUNFOUHFNΛ͏ w ܦݧతʹֶΜͩ͜ͱ w ΠϯσοΫεՃɺΧϥϜআͳͲɺαʔϏεՔಇத Ͱ࣮ߦՄೳͳͷECNJHSBUFͷதͰ͠ͳ͍Α ͏ʹ͢ΔʢαʔϏεఀࢭΛͰ͖Δ͚ͩগͳ͘ʣ w ͨͩ͠ECTDIFNBSCΕͳ͍Α͏ʹߋ৽͓ͯ͘͠
w ςφϯτ͕৽ن࡞͞ΕͨࡍʹɺECTDIFNBSC Λͱʹςʔϒϧ͕࡞ΒΕΔͨΊ
·ͱΊ w ##ͷ4BB4ܕαʔϏεʹϚϧνςφϯτܕΞϓϦ w ·ͣσʔλͷํࣜɺ63-ઃܭΛߟ͑Α͏ w BQBSUNFOUHFNศར w λΠτϧʮ3BJMTͰ࡞Δɾɾʯ͚ͩͬͨͲ3BJMTͷ Ͱͯ͜ͳ͔ͬͨ
ʮ3FMBUJPOʯར༻ٕज़ w "84 &OHJOF:BSE w 4 424 -BNCEB w
3VCZ 1FSM /PEF+4 1ZUIPO (P w 3BJMT "OHVMBS+4 w &MBTUJDTFBSDI w 1PTUHSF42- 3FEJT .FNDBDIFE
ΠϯήʔδͰ ΤϯδχΞΛืू͍ͯ͠·͢ !32