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
インフラエンジニアとアプリ開発
Search
Yokoyama Tatsuo
September 12, 2017
Technology
190
0
Share
インフラエンジニアとアプリ開発
Ruby on Rails を使ったサービス開発と組織(ブラケット × みんなのウェディング)
https://mwed.connpass.com/event/64633/
Yokoyama Tatsuo
September 12, 2017
More Decks by Yokoyama Tatsuo
See All by Yokoyama Tatsuo
SREとその組織類型
tatsuo48
13
3.8k
AWS Fargateでお手軽開発ブランチデプロイ/Easy development branch deployment with AWS Fargate
tatsuo48
0
130
HashiCorp Vaultを使った セキュアなDBアクセスの実現/Secure DB access with HashiCorp Vault
tatsuo48
0
1.9k
Terraformのレポジトリ、 ディレクトリ構成どうする?/Terraform repository, directory structure What should I do?
tatsuo48
6
3.3k
Other Decks in Technology
See All in Technology
AndroidアプリとCopilot Studioの統合
nakasho
0
200
バイブコーディングで3倍早く⚪⚪を作ってみた
samakada
0
220
Oracle Cloud Infrastructure:2026年4月度サービス・アップデート
oracle4engineer
PRO
0
320
20260428_Product Management Summit_Loglass_JoeHirose
loglassjoe
4
6.9k
AIが盛んな時代に 技術記事を書き始めて起きた私の中での小さな変化
peintangos
0
350
(きっとたぶん)人材育成や教育のような何かの話
sejima
0
590
エージェント時代の UIとAPI、CLI戦略
coincheck_recruit
0
140
雑談は、センサーだった
bitkey
PRO
2
200
Forget technical debt
ufried
0
170
AIの揺らぎに“コシ”を与える階層化品質設計
ickx
0
210
GitHub Copilot CLI と VS Code Agent Mode の使い分け
tomokusaba
0
140
要件定義の精度を高めるための型と生成AIの活用 / Using Types and Generative AI to Improve the Accuracy of Requirements Definition
haru860
0
290
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
A Soul's Torment
seathinner
6
2.8k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
190
Ethics towards AI in product and experience design
skipperchong
2
270
Leo the Paperboy
mayatellez
7
1.7k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
350
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.3k
How GitHub (no longer) Works
holman
316
150k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1k
Transcript
ΠϯϑϥΤϯδχΞͱ ΞϓϦ։ൃ גࣜձࣾΈΜͳͷΣσΟϯά Πϯϑϥάϧʔϓ ԣࢁ ୡஉ
ࣗݾհ • ԣࢁୡஉ(@Yokoyama_tto) • ΈΜͳͷΣσΟϯάʹೖࣾͯͪ͠ΐ͏Ͳ1 • લ৬SIerͷαϙʔτσεΫ(2014/04~2016/08) • झຯɿόϯυɺεϊʔϘʔυ
1લͷࢲ
1લͷࢲ • ࣗࣾαʔϏεॳΊͯ • RailsॳΊͯ • ԿΛ࣭͢Δ͖͔Θ͔Βͳ͍ • AWSʹ͍ͭͯͪΐͬͱͬͯΔ
ΠϯϑϥΤϯδχΞͷࣄ
ΠϯϑϥΤϯδχΞͷࣄ(ੲ) • ωοτϫʔΫߏங • αʔόߏங • ߏஙͨ͠γεςϜͷӡ༻ɾࢹ
• ຊ൪ɺ։ൃڥͷߏཧ • ϩάऩूɺੳ ΠϯϑϥΤϯδχΞͷࣄ(ࠓ)
ฐࣾͷ߹
͍Ζ͍ΖΔ • جຊΠϯϑϥج൫ͷվળ׆ಈ • mobasif(چ)͔ΒRails(৽)ͷҠߦظؒ • چΞʔΩςΫνϟ͔Βͷ٫ࣄͷ͏ͪ • σʔλੳج൫ӡ༻(fluentdɺRedShift) •
CI࣮ݱͷͨΊͷج൫ߏஙӡ༻(ChatBot,CircleCI,CodeDeploy)
mobasif • DeNAͰΘΕ͍ͯͨΨϥέʔରԠͷϑϨʔϜϫʔΫ • 3ΩϟϦΞͦΕͧΕͷҟͳΔϒϥβ༷ʹ߹ΘͤΒΕΔ • PerlͰॻ͔Ε͍ͯΔ • ݟ௨͠ͷྑ͍ബ͍ϑϨʔϜϫʔΫ •
ฐࣾͱͱDeNAͷࣾϓϩδΣΫτͩͬͨͷͰར༻
৺͕͚͍ͯΔ͜ͱ • ಥൃతͳґཔɾτϥϒϧ͕ଟ͍ɻ • ৗʹ͋ΔఔͷόοϑΝʔΛ࣋ͬͯࣄ͢Δɻ • ΞϓϦέʔγϣϯΤϯδχΞʹ૬ஊ͞ΕͨΒɺΠϯϑ ϥΤϯδχΞͱͯ͠ΓํͷےಓΛ͑Δɻ(AWSͷ ͜ΜͳαʔϏε͏ͱΑͦ͞͏ͱ͔) •
ͦͷͨΊʹৗʹใऩू
ΠϯϑϥΤϯδχΞͷΈ
ΠϯϑϥΤϯδχΞͷΈ • ʹݟ͑ΔܗͰαʔϏεʹӨڹ͢Δ͜ͱ͕ͳ͍ • ͳʹ͍ͬͯΔ͔ཧղ͞Ε͍ͯͳͦ͞͏ • Πϯϑϥίετηϯλʔ • ಈ͍ͯͨΓલɻࢭΊͨΒΊͬͪΌౖΒΕΔɻ
ͦΜͳঢ়گΛଧഁ͢ΔͨΊʹ
ΞϓϦଆʹखΛग़͍ͯ͜͠͏
ΞϓϦଆʹखΛग़͍ͯ͜͠͏ • ΞϓϦͷੑೳվળ(εϩʔΫΤϦղফ) • ΞʔΩςΫνϟͷվળ(σʔϞϯͷsupervisorཧ) • RailsΛֶͿ(RailsνϡʔτϦΞϧͬͯΈΔ)
ΞϓϦͷੑೳվળ • εϩʔΫΤϦͷղফ • EXPLAIN͑͞Βͳ͍ঢ়گ͔Βελʔτ • ͱʹ͔͘ௐͯ৭ʑͬͯΈͨɻ • ݁Ռɺɺɺ
Before After ࣮ߦ͕࣌ؒ1/60
ΞʔΩςΫνϟͷվળ • mobasifͰࣗ࡞ͷϓϩάϥϜΛσʔϞϯԽͯ͠ ར༻ • αʔό࠶ىಈ࣌ʹࣗಈىಈ͠ͳ͍&མͪͨΒख ಈͰىಈ͠ͳ͖Ό͍͚ͳ͍ɻ • supervisorΛར༻Ͱ͖ΔΑ͏ʹվमɻsupervisor ͰσʔϞϯԽ͢ΔΑ͏ʹͨ͠ɻ
Supervisorͱ • http://supervisord.org/ • PythonͰॻ͔Ε͍ͯΔσʔϞϯԽπʔϧ • foregroundͰಈ͍͍ͯΔඞཁ͕͋Δ • ͱͱσʔϞϯԽ͞Ε͍ͯΔϓϩάϥϜͳ ͷͰforegroundͰಈ͔ͤΔΑ͏վम
RailsΛֶͿ • RailsνϡʔτϦΞϧͬͯΈΔ • ΞϓϦͷΈ͕Θ͔Δ͜ͱͰCIपΓʹख Λग़ͤΔΑ͏ʹͳͬͨ
ΠϯϑϥΞϓϦΛֶͼ࢝Ίͨ
ΞϓϦ͕ΠϯϑϥΛֶͿ൪
ͰͲ͏ͬͯʁ
ΠϯϑϥΛֶͿ • ݕূ༻ʹAWSͷΞΧϯτΛ࡞ • ݄ͷར༻ֹۚΛઃఆ͓ͯ͘͠($500͘Β͍) • AssumeRoleΛར༻͢Δ͜ͱͰ௨ৗͷΞΧϯ τ͔ΒγʔϜϨεʹར༻Մೳ
·ͱΊ
·ͱΊ • DevͱOpsͷ૬ޓཧղ͕େɻ • ΠϯϑϥΤϯδχΞΞϓϦͷ͜ͱΛֶͿɻ • ΞϓϦέʔγϣϯΤϯδχΞΠϯϑϥͷ͜ͱΛֶͿɻ • ͦͷઌʹ͋ΔͷSREͱ͔ϑϧελοΫΤϯδχΞͱ͔ ͳͷͰʁ
• ΈΜͳӽڥ͍ͯ͜͠͏ɻ৭ʑग़དྷͨํָ͕͍͠ɻ
͝੩ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠