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
システムを構築するときに 気をつける10のこと
Search
Show Murai
December 07, 2017
Technology
0
1.6k
システムを構築するときに 気をつける10のこと
主体性のない文章で突っ込みどころ満載ですが、
雰囲気だけ感じてもらえればと思って作っています。
Show Murai
December 07, 2017
Tweet
Share
More Decks by Show Murai
See All by Show Murai
システムを構築するときに 気をつける10のこと
showmurai
4
140
監視入門!監視で困ってませんか?
showmurai
0
320
AWS vs GCP 今から作るならどちらがいいの 20180330
showmurai
1
1.3k
KubernetesでCLIを快適を使いたい
showmurai
0
2.1k
AWS vs GCP 今から作る ならどっちがいいの!?
showmurai
52
83k
データサイエンスのためのAWSの使い方入門
showmurai
1
980
Other Decks in Technology
See All in Technology
生成AIによるソフトウェア開発の収束地点 - Hack Fes 2025
vaaaaanquish
35
16k
R-SCoRe: Revisiting Scene Coordinate Regression for Robust Large-Scale Visual Localization
takmin
0
220
Claude Codeは仕様駆動の夢を見ない
gotalab555
23
7.3k
生成AI活用のROI、どう測る? DMM.com 開発責任者から学ぶ「AI効果検証のノウハウ」 / ROI of AI
i35_267
4
140
サービスロボット最前線:ugoが挑むPhysical AI活用
kmatsuiugo
0
170
LLM時代の検索とコンテキストエンジニアリング
shibuiwilliam
2
960
生成AIによるデータサイエンスの変革
taka_aki
0
3.1k
Claude Code x Androidアプリ 開発
kgmyshin
1
420
RAID6 を楔形文字で組んで現代人を怖がらせましょう(実装編)
mimifuwa
0
140
サイボウズフロントエンドの横断活動から考える AI時代にできること
mugi_uno
3
1.3k
意志の力が9割。アニメから学ぶAI時代のこれから。
endohizumi
1
110
不確実性に耐えて、どう進む?「あえて決めない」勇気と「楽しむ」戦略
mamedai55
1
100
Featured
See All Featured
Site-Speed That Sticks
csswizardry
10
780
KATA
mclloyd
32
14k
A designer walks into a library…
pauljervisheath
207
24k
Balancing Empowerment & Direction
lara
2
570
GraphQLとの向き合い方2022年版
quramy
49
14k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
[RailsConf 2023] Rails as a piece of cake
palkan
56
5.8k
Six Lessons from altMBA
skipperchong
28
4k
The Cult of Friendly URLs
andyhume
79
6.5k
It's Worth the Effort
3n
186
28k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Building an army of robots
kneath
306
45k
Transcript
γεςϜΛߏங͢Δͱ͖ʹ ؾΛ͚ͭΔ10ͷ͜ͱ - ڧݻͰύϑΥʔϚϯε͕ྑ͍γεςϜ࡞ΓͷϙΠϯτ - αϙʔλʔζCoLabษڧձ Dec 6 2017 αΠόʔΤʔδΣϯτ
ΞυςΫελδΦ ଜҪ ᠳଠ࿕ https://supporterzcolab.com/event/233/
ࣗݾհ • ଜҪ ᠳଠ࿕ • @Show_murai • גࣜձࣾαΠόʔΤʔδΣϯτ ΞυςΫελδΦ ΠϯϑϥνʔϜ
Πϯϑϥ ϦʔυΤϯδχΞ ※ຊͷൃදݸਓͷݟղͰ͋Γɺॴଐ͢Δ৫ͷެࣜݟղͰ͋Γ·ͤΜ
ࣗݾհ • ژग़ • ࣾձਓ 6 • ઐ߈ਓೳɾը૾ॲཧ • αΠόʔΤʔδΣϯτ
த్ೖࣾ • ϓϩμΫτ(ϓϩδΣΫτ)͖ͷΠϯϑϥ • झຯཱྀߦɺϑοταϧ
͖ΐ͏ͳ͢͜ͱ 1. ࣗݾհ 2. ຊͷରऀ 3. ·͓͖͑ 4. γεςϜߏஙͰؾΛ͚ͭΔ10ͷ͜ͱ 5.
Q & A
ຊͷରऀ • αʔόʔαΠυΤϯδχΞ • γεςϜͷӡ༻Λ͍ͯ͠Δํ • ͜Ε͔ΒγεςϜߏங͢Δํ
·͓͖͑
લఏͱͯ͠ • Webۀքʹ͓͍ͯεϐʔυॏࢹͰαʔϏεϦϦʔεΛ͢ΔΑ͏ͳ ։ൃΛલఏͱ͍ͯ͠·͢ • ΤϯλʔϓϥΠζ/ΈࠐΈ͚γεςϜͷ։ൃͳͲͰɺ ҧͬͨ؍ϙΠϯτ͕͋Δͱࢥ͏ͷͰ༏͘͠ฉ͍ͯԼ͍͞ • ΞδϟΠϧ։ൃͷΑ͏ͳظؒͰಈ͘ιϑτΣΞΛϦϦʔε͍ͯ͘͠ ։ൃελΠϧΛఆ͍ͯ͠·͢
ͳͥ͜ͷ͢͠Δͷ͔ • αʔόʔαΠυΤϯδχΞ͔ΒΑ͘ฉ͔ΕΔ • ʮ͜ͷػೳ࡞Γ͍ͨΜͰ͚͢ͲɺؾΛ͚ͭΔͱ͜Ζ͋Γ·͢ʁʯ Έ͍ͨͳ࣭Λྑ͘ड͚Δ • ॻ੶ͳͲͷใͰݟ͚ͭʹ͍͘
ͦΕͰຊ
γεςϜΛߏங͢Δͱ͖ʹ ؾΛ͚ͭΔ10ͷ͜ͱ
γεςϜΛߏங͢Δͱ͖ʹ ؾΛ͚ͭΔ10ͷ͜ͱ 1. ҆ఆՔಇʹίετͱϦιʔε͕͔͔Δ 2. σΟβελϦΧόϦΛߟ͑ࠒ͔Β܇࿅͢Δ 3. ϞχλϦϯάͷϝτϦΫεࡉ͔͘औΔ 4. γεςϜશମ͕εέʔϧͰ͖Δ
5. ઃܭ/બఆٕͨ͠ज़ʹΛͭ 6. ༷σʔλߏͷมߋඞͣൃੜ͢Δ 7. σʔλͷอॴख़ߟ͢Δ 8. σʔλఆΑΓଟ͘ͳΔ 9. ηΩϡϦςΟରࡦඞཁ͕ͩίετͱ͕͔͔࣌ؒΔ 10.ΫϥυΛ৴པ͗͢͠ͳ͍
҆ఆՔಇʹ ίετͱϦιʔε͕͔͔Δ
҆ఆͷཁૉͱ • Մ༻ੑߴ͍ • γϯάϧϙΠϯτ͕ͳ͍ • ΤϥʔϋϯυϦϯά͕γεςϜϨϕϧͰग़དྷ͍ͯΔ • োੑ͕ߴ͍ •
ΞϓϦέʔγϣϯͷႈੑ͕୲อ͞Ε͍ͯΔ • γεςϜͷҰ؏ੑ͕͋Δ • ॊೈੑ͕ߴ͍ • ີ݁߹͕ແ͍ • ػೳ֦ு͍͢͠ઃܭ
҆ఆԽͷͨΊͷίετ • ΞϓϦ/Πϯϑϥͷઃܭ/ݕূίετ • ઃܭஈ֊Ͱ৭ʑͳέʔεΛௐ࣮ࡍಈ͔ͯ͠ΈΔ࣌ؒ • ԽͷͨΊͷίετ • 1ͰՔಇՄೳͰ͋Δ͕ɺ2ཱͯΔ •
ԽΛ࣮ݱ͢ΔͨΊͷΈΛ࡞Δ • ӡ༻ମ੍Λ͑Δίετ • ӡ༻͢Δਓͷίετ-> ΞϥʔτΛड͚औΔͻͱͷ࠾༻ • ӡ༻ମ੍Λ࡞Δίετ -> ӡ༻ઃܭʹ͕࣌ؒඞཁ
σΟβελϦΧόϦΛߟ͑ ࠒ͔Β܇࿅͢Δ
σΟβελϦΧόϦͱ • Disaster recovery = ࡂ͔ΒͷϦΧόϦ • ࡂͳͲͷඃ͔Βճ෮ાஔΛߟ͑Δ • ωοτϫʔΫো͕ൃੜͨ͠߹Կ͢Δඞཁ͕͋Δ͔
• ΫϥυαʔϏεʹো͕ൃੜͨ͠߹ͷରࡦ • σʔλফࣦͨ͠߹ͷόοΫΞοϓ/ϦετΞରࡦ
ࠒ͔ΒFire drillΛߦ͏ • Fire drillͱ • ԾσΟβελϦΧόϦͷঢ়گΛ࡞ͯ͠ ઃఆύϑΥʔϚϯεΛධՁ͢Δ͜ͱʹΑΔɺ ϦιʔεͷϑΣʔϧΦʔόʔͷ৴པੑΛςετ͢Δํ๏ https://www.symantec.com/ja/jp/security_response/glossary/define.jsp?letter=f&word=fire-drill
• ࣮ࡍʹٖࣅোΛൃੜͤͯ͞܇࿅͢Δ • खॱϦΧόϦํ๏Λ໌֬ʹ͓ͯ͘͠ • ୭͕ରԠ͢Δɺ୭ʹ࿈བྷ/ใࠂ͢Δ͔ΛܾΊ͓ͯ͘
ϞχλϦϯάͷϝτϦΫε ࡉ͔͘औΔ
ϝτϦΫεࡉ͔͘ͱ͓ͬͯ͘ • ϦιʔεϞχλϦϯάͪΖΜ • CPU • Memory usage • Disk
usage • Inode usage • Network throughput • ύϑΥʔϚϯεϞχλϦϯάऔಘ͢Δ • query per second • request/response time
ҙ͖͢ • ϝτϦΫεऔಘෛՙʹͳΔ߹͋Δ • ϞχλϦϯάπʔϧ͕ෛՙʹͳΓαʔϏεӨڹ͕ൃੜ͢Δ • ϝτϦΫεΛऔΓ͗ͯ͢༗ࣄͷ࣌ʹ ԿΛݟͨΒྑ͍ͷ͔Θ͔Βͳ͍ • දతͳϝτϦΫεμογϡϘʔυʹ͓ͯ͘͠
• ϝτϦΫεͷҙຯΛཧղ͓ͯ͘͠ (ԿΛද͚ͬͨ͢?ͱͳΒͳ͍ͨΊʹ)
γεςϜશମ͕εέʔϧͰ͖Δ
γεςϜංେԽͯ͘͠ • ʹͭ͘Ҏ֎ͷͱ͜Ζεέʔϧඞཁ • DBϢʔβ/ίωΫγϣϯ • ωοτϫʔΫεϧʔϓοτ • ֎෦࿈ܞ͢ΔγεςϜ •
ॲཧ͢Δσʔλཷ·͍ͬͯ͘ • σʔλϕʔεͷංେԽ • όοΫΞοϓσʔλͷංେԽ • ੳରͷ֦େ
ઃܭ/બఆٕͨ͠ज़ʹΛͭ
ಋೖٕͨ͠ज़Ұ൪ৄ͘͠ͳΔ • ಋೖ͚ͨ͠ͲࣗࣾγεςϜʹ͍ͯͳ͔ͬͨ • αʔόʔϨε • ϚΠΫϩαʔϏε • ࣗͰରԠɺෛ࠴ճऩΛ͢Δ •
ϛεಈ͔ͯ͠Έͳ͍͜ͱଟʑ͋ΔͷͰɺ Λ࣋ͬͯ໘Λݟ͍ͯ͘৺ߏ͕͑ॏཁ
༷σʔλߏͷมߋ ඞͣൃੜ͢Δ
ੈͷதมΘΔ ࣌มΘΔ • ීวతͳٕज़ͰมΘΔՄೳੑ͕͋Δ • ҉߸ԽํࣜɿSHA1->SHA2ɺ • ωοτϫʔΫͷϓϩτίϧɿhttp → websocket
• ΫϥΠΞϯτɿΨϥέʔ → εϚʔτϑΥϯ • σʔλϕʔεɿϦϨʔγϣφϧDB → KVSɺNewSQL • ϑΥʔϚοτɿJSON → Protocol Buffers
σʔλͷอॴख़ߟ͢Δ
σʔλͷอॏཁ • σʔλ͕ංେԽ͢Δ͜ͱͰసૹྔɺసૹ࣌ؒ ͕૿͑ͯίετ্͕͕Δ • σʔλ͍͍ͨ࣌ʹ͑ΔΑ͏ʹ͢Δ • σʔλϨΠΫΛ࡞Δͷ͕ཧ • Amazon
S3 • Google Cloud StrageͳͲ ࢀߟɿCloud connect the world as a Glue - AWS Dev Day 2017 by kazeburo https://speakerdeck.com/kazeburo/cloud-connect-the-world-as-a-glue-aws-dev-day-2017
σʔλఆΑΓଟ͘ͳΔ
σʔλංେԽ͢Δ • ੈͷத͕ѻ͏σʔλ͕૿͑Δ • σόΠεͷ૿ՃɿΨϥέʔ → iPhoneɺFitbitɺ • ߴ࣭ͷϝσΟΞɿVGA →
4KɺCD → ϋΠϨκ • σδλϧԽ͕ਐΉɿۜߦৼΓࠐΈ → Χʔυܾࡁ • γεςϜ/ػೳ͕Ճ͞Εͯσʔλ͕૿͑Δ • ϒϥβ͔ΒͷΞΫηεɿ → ΞϓϦɺ༷ʑͳσόΠε(Amazon echo)͔ΒͷΞΫηε
ηΩϡϦςΟରࡦඞཁ͕ͩ ίετͱ͕͔͔࣌ؒΔ
ηΩϡϦςΟෳࡶͰ๛ • ωοτϫʔΫηΩϡϦςΟ • σʔλϕʔεͷΞΫηεݖ • ίϯϐϡʔτͷݖݶ • ΞϓϦέʔγϣϯͷݖݶ •
ϩάͳͲγεςϜσʔλͷΞΫηεݖݶ • ΫϥυαʔϏεͷݖݶ • ֤छπʔϧͷΞΫηεݖݶ
ݖݶཧͱӡ༻Λߟ͑Δ • ݖݶͷछྨͷઃܭ͕ඞཁ • ཧऀɺ։ൃऀɺӾཡऀɺҰ࣌Ϣʔβɺࣾ֎ͷϢʔβ • ωοτϫʔΫɿΞΫηεݩɺϓϩτίϧɺIPϨϯδ • ΫϥυݖݶɿIAM ϢʔβɺIAM
ϩʔϧɺACL… • ݖݶͷӡ༻ͱࠪʹίετ͕͔͔Δ • Ϣʔβ͕૿͑Δ/ݮΔ • ΞΫηεݩ͕૿͑ΔɿBIπʔϧ͔ΒΞΫηε͍ͨ͠ • ʮ୭͕ཧͯͯ͠ɺݖݶ༩୭͕ͯ͠ɺ ӡ༻ϧʔϧ୭͕ܾΊͯΔΜͰ͚ͨͬ͠ʁʯ
ΫϥυΛ৴པ͗͢͠ͳ͍
Ϋϥυߴ৴པͰ͋Δ͕ 100%མͪͳ͍Θ͚Ͱͳ͍ • ఆظϝϯςφϯεͷ᠘ • ϝϯςͰαʔϏεఀࢭ͢Δ • AWS RedshiftɺGoogle CloudSQLͳͲ
• Ϋϥυ߹ͷγϟοτμϯ • AWS EC2ɿشൃϝϞϦʹσʔλ͋ΔΜͰ͚͢Ͳ… • ṖͷαʔϏεϨϕϧͷԼ • ੈքதͷΈΜͳͰͬͯΔͷͰ ଞͷϢʔβ/ςφϯτʹҾͬுΒΕΔ͜ͱ͕͋Δ
݁ہɺݴ͍͔ͨͬͨ͜ͱ
తͱ༏ઌॱҐΛ໌֬ʹ͠ γεςϜߏங͢Δ
Sense of purpose ʮతʯͱ͍͏ͷɺΒҰਓͻͱΓ͕ɺ খ͞ͳࣗҎ্ͷԿ͔ͷҰ෦ͩͱײ͡ΒΕΔײ֮ͷ͜ͱͰ͢ɻ ͕ࣗඞཁͱ͞Εɺͦͯ͠ΑΓྑ͍ະདྷͷͨΊʹ ʑؤு͍ͬͯΔͱײ͡ΒΕΔײ֮ͷ͜ͱͳͷͰ͢ɻ https://youtu.be/4VwElW7SbLA
Q & A
͋Γ͕ͱ͏͍͟͝·ͨ͠
ΞυςΫελδΦͰ ΤϯδχΞΛืूதͰ͢ ※ΦϑΟεݟֶ͚ͩͰେৎͰ͢ αΠόʔΤʔδΣϯτ ΞυςΫελδΦ https://adtech.cyberagent.io/