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
グローバルサービスを作る時に考えておくこと #railsdm
Search
Masato Nakamura
November 16, 2017
Programming
4
3.8k
グローバルサービスを作る時に考えておくこと #railsdm
https://techplay.jp/event/631428
Rails Developers Meetup #7 の発表資料です
Masato Nakamura
November 16, 2017
Tweet
Share
More Decks by Masato Nakamura
See All by Masato Nakamura
トレタのプロダクト開発 #TORETA_TECH_TALK
m_nakamura145
0
860
プロダクト開発におけるライブラリアップデートのタイミング #gotandarb
m_nakamura145
0
440
成長したrailsアプリの割れ窓を防ぐCircleCI #circlecijp
m_nakamura145
2
960
オンライン予約徹底解説 #railsdm2019
m_nakamura145
4
5.7k
SaaSのDBリファクタリング #omotesandorb
m_nakamura145
2
380
Sidekiq Worker設計のコツ #ebisurb
m_nakamura145
2
280
Maintain our records correctly #first_english_presentation
m_nakamura145
1
930
What material do you use in DMM eikaiwa? #DMM英会話 #clem_jp
m_nakamura145
1
4.6k
Server-Side Team in Toreta
m_nakamura145
1
400
Other Decks in Programming
See All in Programming
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
2
150
PHPで始める振る舞い駆動開発(Behaviour-Driven Development)
ohmori_yusuke
2
390
AIともっと楽するE2Eテスト
myohei
6
2.6k
10 Costly Database Performance Mistakes (And How To Fix Them)
andyatkinson
0
340
なぜ「共通化」を考え、失敗を繰り返すのか
rinchoku
1
650
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
2
910
Team operations that are not burdened by SRE
kazatohiei
1
310
システム成長を止めない!本番無停止テーブル移行の全貌
sakawe_ee
1
200
ふつうの技術スタックでアート作品を作ってみる
akira888
1
860
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
5
790
Code as Context 〜 1にコードで 2にリンタ 34がなくて 5にルール? 〜
yodakeisuke
0
130
レベル1の開発生産性向上に取り組む − 日々の作業の効率化・自動化を通じた改善活動
kesoji
0
220
Featured
See All Featured
Typedesign – Prime Four
hannesfritz
42
2.7k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
510
The Cult of Friendly URLs
andyhume
79
6.5k
Writing Fast Ruby
sferik
628
62k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Transcript
άϩʔόϧαʔϏεΛ࡞Δ࣌ʹ ߟ͓͑ͯ͘͜ͱ Masato Nakamura(@m_nakamura145) Server-Side Engineer
None
None
None
None
None
None
ن • αʔϏεఏڙࠃ:15ϱࠃҎ্ʢຊɺγϯΨϙʔϧɺɺؖࠃɺϕτφϜɺϚ ϨʔγΞɺΠϯυωγΞɺλΠɺΧϯϘδΞɺϑΟϦϐϯɺχϡʔδʔϥϯυɺΦʔετϥϦΞɺ ΞϝϦΧɺΠΪϦεɺΤδϓτ, etc…ʣ • ళฮ:9000ళฮ • ྦྷܭ༧ਓ:1ԯ5000ສਓ
• APIRails + MySQL
ࠓ͓͢Δ͜ͱ • λΠϜκʔϯΛߟྀͨ͠RailsΞϓϦέʔγϣϯ։ൃʹ͍ͭͯ • τϨλʹ͓͚Δւ֎ରԠͷࣄྫ • ॕʹ͍ͭͯ • SMSૹ৴
3BJMTΞϓϦͷλΠϜκʔϯઃఆ w 3BJMTͱ.Z42-ͷλΠϜκʔϯΛ65$ʹҰகͤ͞Δ w τϨλͰ04ͷλΠϜκʔϯ65$ w .Z42-ͷઃఆྫ
DPOpHBQQMJDBUJPOSC w DPOpHUJNF@[POF w ΞϓϦέʔγϣϯͷσϑΥϧτλΠϜκʔϯΛઃఆ͢Δ w DPOpOHBDUJWF@SFDPSEEFGBVMU@UJNF[POF w %#͔Βɾ࣌ࠁΛऔΓग़ͨ͠ࡍͷλΠϜκʔϯΛ5JNFMPDBM MPDBM
ͱ 5JNFVUD VUD ͷͲͪΒ͔ʹ͢Δ͔Λࢦఆ͢Δ
DPOpHUJNF[POF
DPOpHBDUJWF@SFDPSEEFGBVMU@UJNF[POF
DPOpHBDUJWF@SFDPSEEFGBVMU@UJNF[POF
λΠϜκʔϯจࣈྻͷอଘܗࣜ w %#ʹλΠϜκʔϯจࣈྻΛอଘ͢Δέʔε w τϨλͰͭͷళฮ͕ͭͷλΠϜκʔϯΛ͍࣋ͬͯΔ w "TJB5PLZPͷΑ͏ʹਖ਼ࣜͳจࣈྻͰอଘͨ͠ํ͕ྑ͍ w 3BJMTͩͱॖܗ "DUJWF4VQQPSU5JNF;POF."11*/(
͕ࢦఆͰ ͖Δ͕ɺ3BJMTҎ֎͔ΒσʔλʹΞΫηε͢ΔࡍʹࠔΔͷͰɺ ॖܗอଘ͠ͳ͍΄͏͕ྑ͍
࣌Λѻ͏Ϋϥε w %BUF 3VCZ w %BUF5JNF 3VCZ w
5JNF 3VCZ w "DUJWF4VQQPSU5JNF8JUI;POF 3BJMT w 3BJMTΞϓϦͳΒҰ൪͓͢͢Ί
"DUJWF4VQQPSU5JNF8JUI;POF w DPOpHBQQMJDBUJPOSCͷλΠϜκʔϯΛ༻͢ΔͷͰɺγεςϜͷ λΠϜκʔϯʹӨڹΛड͚ͳ͍ w 3VCZͷ5JNFOPXͳͲ3VCZඪ४ͷڍಈͰɺγεςϜͷλΠϜκʔ ϯʹӨڹΛड͚Δ w "DJUWF3FDPSEΛී௨ʹͬͯΔͱDSFBUFE@BUͳͲ "DUJWF4VQQPSU5JNF8JUI;POFͳͷͰɺ͍ͭͷ·ʹ͔͍ͬͯΔ͜
ͱ͕ଟ͍
έʔεผ༻ྫ w ݱࡏ࣌ࠁΛऔಘ͢Δ w 5JNF[POFOPX·ͨ5JNFDVSSFOU 5JNF[POFOPXΛฦ͢ w ֎෦͔Βೖྗ͞ΕΔ࣌ࠁΛѻ͏࣌ w
TUBSU@BU5JNF[POFBU QBSBNT<TUBSU@BU>UP@J
τϨλʹ͓͚Δॕ w ҿ৯ళͷ߹ɺॕಛผͳӦۀ࣌ؒΛઃఆ͍ͯ͠Δ w ௨ৗ͓ٳΈͷ݄༵͕ͩɺ݄༵͕ॕͰ͋Ε։ళ͍ͨ͠ w ॕͷલ͘·ͰҿΈ͍ͨਓ͕ଟ͍ͷͰɺӦۀ࣌ؒΛΊʹ ͍ͨ͠
None
None
None
τϨλʹ͓͚Δॕ w ॕΛѻ͏HFN͍ͬͯͳ͍ w IUUQTHJUIVCDPNIPMJEBZTIPMJEBZTͳͲ w )PMJEBZNPEFMͱͯ͠%#ʹॕσʔλΛӬଓԽ͍ͯ͠Δ
ॕσʔλͷूΊํ w ॕຖҟͳΔͷͰɺৗʹσʔλΛߋ৽͠ͳ͚Ε͍͚ͳ͍ w ຊͷ߹ɺຖ݄͝ΖͷใͰ࣍ͷͷྐྵཁ߲Λൃද w IUUQFDPNULOBPBDKQLPZPNJZPLP
ւ֎ͷॕ w ΞϝϦΧΦʔετϥϦΞͷ߹ɺશࠃڞ௨ͷॕͷଞʹभ͝ͱʹ ॕ͕ҟͳΔ w τϨλͰॕʹରԠ͍ͯ͠ΔࠃݱࡏຊɺγϯΨϙʔϧɺͷϲ ࠃͷΈ w γϯΨϙʔϧɺͷॕσʔλ֤ࠃͷαΠτ͔Βऔಘͯ͠ɺ γϯΨϙʔϧݱϝϯόʔɺਓϝϯόʔ͕ࢹ֬ೝͯ͠อଘ͢Δ
τϨλʹ͓͚Δ4.4ͷར༻༻్ w ༧࡞࣌ɾมߋ࣌ɾΩϟϯηϧ࣌ͷ௨ w ແஅΩϟϯηϧυλΩϟϯࢭͷϦίϯϑΝʔϜ w ͓ళͷϧʔϧΛࣄલʹ͓Βͤ w Εͷ͝࿈བྷ w
དྷళޙͷ͓ྱ
None
τϨλʹ͓͚Δւ֎Ͱͷ4.4ૹ৴ w ΠϯόϯυधཁͰɺผͷࠃͷ͓٬ཱྀ༷͕ߦલʹ͓ళΛ༧͢Δέʔ ε͕ଟ͍ w γϯΨϙʔϧͳͲͷҿ৯ళ w ߳ߓʹॅΜͰΔਓ͕ͷ͓ళΛ༧͔ͯ͠Βཱྀߦʹߦ͘ w ҿ৯ళଆ͓٬ཱྀ༷͕ߦʹߦ͘લʹ4.4Ͱ࿈བྷΛૹΓ͍ͨʂ
w 4.4ૹ৴αʔϏε5XJMJPΛར༻
ࠃ൪߸ w ຊ ɺ γϯΨϙʔϧ ͷΑ͏ͳ֤ࠃʹׂΓͯΒΕͨࠃࡍ ి൪߸ w
5XJMJP4.4ૹ৴ʹࠃ൪߸͕ඞਢ w ͓٬༷ͷి൪߸Λอଘ͢Δͱ͖ʹඞͣࠃ൪߸·Ͱอଘ͓ͯ͘͠ w ࠃ൪߸͕ૹΒΕͯ͜ͳ͍߹ɺళฮ͕͋Δࠃͷࠃ൪߸ΛೖΕ͍ͯ Δ
None
None
ࠓ͓ͨ͜͠ͱ • λΠϜκʔϯΛߟྀͨ͠ΞϓϦέʔγϣϯ։ൃʹ͍ͭͯ • τϨλʹ͓͚Δւ֎ରԠͷࣄྫ