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
AWS Fargateで得する人損する人
Search
Masato Oshima
December 12, 2017
Technology
3
5.9k
AWS Fargateで得する人損する人
https://jawsug-container.connpass.com/event/71130/
での登壇内容
Masato Oshima
December 12, 2017
Tweet
Share
More Decks by Masato Oshima
See All by Masato Oshima
ECSからEKSへの移行への移行事例の紹介
mpon
6
3.5k
APIがある外部サービスはTerraformで管理できますよ
mpon
12
6.9k
Envoyを分かりやすく例えつつApp Meshの話をします
mpon
7
6k
kubernetes-meetup-4
mpon
2
2.4k
Unidirectional Data Flow in ReSwift
mpon
0
1.5k
DDD Practice in iOS
mpon
0
410
Swift compile time is so slow
mpon
3
5.3k
Fight Xcode Project with Golang
mpon
1
2.7k
iPad Multi Taking
mpon
0
65
Other Decks in Technology
See All in Technology
Next.js のページ遷移を全力で止める
ypresto
9
3.7k
ネットワークだけ隔離されたコンテナ作成デモ / Kichijoji.pm36
tenforward
1
250
チームビルディングは"感性"で向き合おう / Team Building with Awareness
kohzas
0
280
不動産 x AIことはじめ~データの真価を拓くために
estie
0
130
DuckDB雑紹介(1.1対応版)@DuckDB座談会
ktz
6
1.4k
不動産売買取引におけるAIの可能性とプロダクトでのAI活用
zabio3
0
280
LLVM/ASMを使った有限体の高速実装
herumi
0
120
PDF Viewer作成の今までとこれから
hunachi
0
480
DevRelの始め方
moongift
PRO
2
400
LINEヤフーのフロントエンド組織・体制の紹介
lycorp_recruit_jp
1
1.2k
実務における脅威モデリングを考えよう
nikinusu
1
730
より快適なエラーログ監視を目指して
leveragestech
4
1.5k
Featured
See All Featured
Making Projects Easy
brettharned
113
5.8k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
123
18k
Building a Modern Day E-commerce SEO Strategy
aleyda
36
6.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
663
120k
Design by the Numbers
sachag
277
19k
StorybookのUI Testing Handbookを読んだ
zakiyama
26
5.1k
Pencils Down: Stop Designing & Start Developing
hursman
119
11k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
326
21k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
230
17k
How STYLIGHT went responsive
nonsquared
93
5.1k
Scaling GitHub
holman
458
140k
Transcript
AWS FargateͰ ಘ͢Δਓଛ͢Δਓ JAWS-UG ίϯςφࢧ෦ #10
SF*OWFOU ࢀՃ ͖ͯ͠·ͨ͠ େຬʂʂ &,4ͷൃදͷॠؒˠ
Masato Oshima github.com/mpon @_mpon iOS,Scala,Infra Engineer ίϯςφ·ΘΓͷ ͓༑ୡ͕ཉͯͬ͘͠ ͖ͯ·ͨ͠
։ൃࢧԉ(ͱ͍͏ͱ͜ΖͰಇ͍͍ͯ·͢ ։ൃࢧԉ( ɾɾɾ w ֤αʔϏεͷΠϯϑϥߏஙɺӡ༻ w ۀվળɺࣗಈԽਪਐ w "84্ʹΠϯϑϥߏங
w ࡐͷελσΟαϓϦ&/(-*4)ʹ͍ͭͯ w ϚΠΫϩαʔϏεԽͷഎܠ w &$Ϋϥελʔͷ߹ͷ w 'BSHBUFͱ&$Ϋϥελʔͷඅ༻ൺֱ w 'BSHBUFͷϝϦοτ
w 'BSHBUFʹͨ͠ͱ͖ͷ՝ w ʹئ͍Λ "HFOEB
ελσΟαϓϦ&/(-*4) ɾΦϯϥΠϯӳޠֶशαʔϏε ɾӳձԻը૾ɾಈըͳͲΛ৴ ɾΫΠζܗࣜͰֶशσʔλɺཤྺΛอଘ ɾJ04ɺ"OESPJEɺ8FCͰར༻Մೳ
ৗӳձίʔε ϦϦʔεॳ
ৗӳձίʔε ࠷ॳݸ͙Β͍ͷαʔϏε ͩͬͨ ϦϦʔεॳ
ৗӳձίʔε αʔϏε͕ॱௐʹ৳ͼͯདྷͯ ৽͍͠ίʔεΛ૿͢͜ͱʹ %#͕ωοΫʹͳͬͯ͘Δ ϦϦʔεॳ
ϚΠΫϩαʔϏεԽ
https://www.slideshare.net/danveloper/microservices-the-right-way ৺ʹਂ͍ইΛෛͬͨํͷ࡞
ελσΟαϓϦ&/(-*4)ͷαʔϏεؒͷίϯϙʔωϯτਤ ཁૉ͕ଟ͍ͷͰུ֓Ͱઆ໌͠·͢
ৗӳձίʔε 50&*$ίʔε ςΩετൢച ϦϦʔε͔Β
ৗӳձίʔε 50&*$ίʔε ςΩετൢച ͍ͬͺ͍૿͑ͨ ෦௨৴H31$Ͱߦ͏ %#Λׂ ϦϦʔε͔Β
ϦϦʔεॳ ࠓ Ϋϥελʔ ίϯςφΠϯελϯε े ഒ ΠϯελϯελΠϓ NNFEJVN
NMBSHF αʔϏε ഒ λεΫ ഒ QSPEVDUJPOڥͷਪҠ
ίϯςφӡ༻͍͍ʂʂ &$4͍͍ ͍͍Αɺ͍͍Μ͚ͩͲ ͬͱ͓͍͖͍҆ͯͨ͘͠
&$4Λ&$Ͱ࡞Δ߹ w σϓϩΠͷͨΊʹ༨ͳϦιʔε͕͍Δ w εέʔϧΠϯ͠ʹ͍͘
.BYJNVNQFSDFOUΛʹ͍ͨ͠ w Ұ࣌తʹEFTJSFE$PVOUͷഒͷۭ͖༰ྔ͕͍ Δ w EFTJSFE$PVOU͕ͩͱݸͷUBTL͕Ұ࣌త ʹ্ཱ͕ͪΔ w ಈతϙʔτϚοϐϯάͰ͖ͯͳ͍ͱ͞Βʹ൵ ࢂͳ͜ͱʹ
i-0001 task task i-0001 task task task task ৽͍͠UBTL͕ ऩ·Γ͖Βͳ͍ ͷͰ༨Πϯε λϯε͕ඞཁ i-0002
.BYJNVNNJOJNVNͰઅ Ͱ͖Δ͚Ͳɾɾ w গͣͭ͠ೖΕସ͑Λ͢ΔͷͰશ෦ೖΕସΘΔ· Ͱʹ͕͔͔࣌ؒΔ i-0001 task task i-0001 task
task i-0001 task task i-0001 task i-0001 task
εέʔϧΠϯ͠ʹ͍͘ w BVUPTDBMJOHͰεέʔϧΠϯ͢Δͱ͖ʹ ESBJOJOHରΛબͳ͍ʢݸผʹ QSPUFDU͢Ε͍͚Δʣ %SBJOJOHΨνϟ
εέʔϧΠϯ͠ʹ͍͘ w σϓϩΠͷ͚࣌ͩ૿ͯͦ͜͠ΛҰ࣌ తͳॴͱͯ͠σϓϩΠʹͬͯ͘ΕΔ Θ͚Ͱͳ͍ʢຬวͳ͘λεΫ͕ࢄΒ ΔͷͰESBJOJOHͰ͖ͳ͍ʣ i-0001 task task task
task ཧ ݱ࣮ i-0002 i-0001 task task task task i-0002 Ͳͬͪফͤͳ͍
ɾΫϥελʔ࡞Βͳ͍͍ͯ͘ ɾඵ՝ۚ
අ༻Λൺֱ ͯ͠ΈΑ͏
ϦϦʔεॳ ࠓ Ϋϥελʔ ίϯςφΠϯελϯε े ഒ ΠϯελϯελΠϓ NNFEJVN
NMBSHF αʔϏε ഒ λεΫ ഒ ·ͣ&$ͰΫϥελʔཱͯͨ߹ͷྉۚΛܭࢉ
NMBSHFI NPOUI NPOUI Ծʹͱͯ͠ܭࢉ
W$16 NFNPSZ શମʹΊΔ UBTLͷׂ߹ "1*H31$ (# ίϯςϯπ ೖߘ"1*
(# 8FC৴ OHJOY (# ίϯςϯπ ৴OHJOY (# QSPEVDUJPOڥͷUBTL
QSPEVDUJPOڥͷUBTL W$16 NFNPSZ શମʹΊΔ UBTLͷׂ߹ "1*H31$ (# ίϯςϯπ
ೖߘ"1* (# 8FC৴ OHJOY (# ίϯςϯπ ৴OHJOY (# ·ͣ͜͜Λܭࢉͯ͠ΈΔ
NMBSHFI NPOUI NPOUI W$16ɺ(#
I NPOUI ࣌ؒW$16͋ͨΓ ࣌ؒ(#ϝϞϦ͋ͨΓ (# ϲ݄ͷI EBZTΛ͔͚Δ
NMBSHFI NPOUI NPOUI W$16ɺ(#
I NPOUI UBTL NPOUI ݱঢ়͋ͨΓUBTL͕ฏۉݸ ೖ͍ͬͯΔͷͰɺ ͷ߹ UBTL UBTL ͱԾఆͯ͠ܭࢉ
W$16 NFNPSZ શମʹΊΔ UBTLͷׂ߹ ߹ܭNPOUI "1*H31$ (#
ίϯςϯπ ೖߘ"1* (# 8FC৴ OHJOY (# ίϯςϯπ ৴OHJOY (# QSPEVDUJPOڥͷUBTL
NMBSHFI NPOUI NPOUI W$16ɺ(#
I NPOUI UBTL૯߹ܭ ฏۉ NPOUI
NMBSHFI NPOUI NPOUI W$16ɺ(#
I NPOUI UBTL૯߹ܭ ฏۉ NPOUI 'BSHBUFͷํׂ͕ߴ ͚ͩͲɺਓ݅අߟ͑ͨΒɾɾʁ
ͦΜͳʹѱ͘ͳ͍☺
NBYJNVNQFSDFOUΛʹؾܰʹͰ͖Δ w ඵ՝ۚͳͷͰҰ࣌తʹ૿͑Δ΄΅ແ ࢹͰ͖Δ w αʔϏεҰͭͣͭ͡Όͳ͘શαʔϏε ฒྻͰҰʹσϓϩΠͰ͖Δ serviceA task:1 task:1
task:2 task:2 serviceB task:1 task:2 ۭ͖༰ྔΛؾʹ ͠ͳͯ͘ྑ͍ ͪ߹Θͤ͠ͳ ͯ͘ྑ͍
ؾܰʹ૿ͤΔ w JOTV⒏DJFOUDQVʹ·͞Εͳ͍ w αʔϏεՃ࣌BVUPTDMBJOHؾʹ͠ͳ ͍ BVUPTDBMJOHͷ ཧ͠ͳͯ͘0,
ؾܰʹݮΒͤΔ w %SBJOJOHରΛߟ͑ͳͯ͘ྑ͍ w ؾܰʹεέʔϧΠϯɾΞτ͕Մೳʹͳ Δ w FYதUBTLΛݮΒ͢ͳͲ taskA taskA
taskA taskA taskB taskB UBTL"Λ taskA taskA taskB taskB ר͖ࠐΜͰผͷ 5BTLΛLJMM͠ͳ ͍
՝
'BSHBUFʹͨ͠߹ͷ՝ w 5BTLͭʹରͯ͠&/*͕ͭBUUBDI͞ΕΔͷͰ&/*ͷ੍ ݶΛؾʹ͠ͳ͍ͱ͍͚ͳ͍71$σϑΥϧτͰ w TVCOFUͷ*1͕ރׇ͢ΔࣾࣄͰ੍ݶ͞Ε͍ͯ ͨΓ͢Δͱݫ͍͠ w %BUBEPHBHFOUΛͲ͜ʹ͍ΕΔ͔TJEFDBSύλʔ ϯͪΐͬͱ໘
w 4QPU'MFFUͱൺֱͯ͠͠·͏ͱྉۚతʹݫ͍͠ ຊ൪POMZͰ͔͑͠ͳ͍ w ґવͱͯ͠4FSWJDF%JTDPWFSZʹ&-#͕ඞཁ&,4 ʹ͍͖͍ͨ
ʹئ͍Λ ɾUBTL͕উखʹࢭΊΒΕͯ͠·͏͜ͱ͕͋Δ͕ೖࡳՄೳ ʹͳͬͨΒ·ͨىಈͯ͠0''ఔͷྉۚͰར༻Ͱ͖ Δ'BSHBUFPO4QPU'MFFU ɾ$MVTUFSΛҙࣝ͠ͳͯ͘Α͘ͳͬͨͷͰຊ&-# ࡞Γͨ͘ͳ͍ %PDLFSpMF͚ͩΛॻ͚͍͍ੈք
࠙ձͰ͜ͷลΓͷղܾࡦͳͲ Λڭ͑ͯΒ͍͍ͨͰ͢ ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠