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
ExAws
Search
kanmo
January 11, 2017
Programming
1
570
ExAws
Elixir 勉強会 tokyo.ex#7 × 歌舞伎座.tech#13 資料
kanmo
January 11, 2017
Tweet
Share
More Decks by kanmo
See All by kanmo
How mixi2 Uses TiDB for SNS Scalability and Performance
kanmo
42
34k
Keep Phoenix App Productivity
kanmo
2
1.2k
Other Decks in Programming
See All in Programming
202507_ADKで始めるエージェント開発の基本 〜デモを通じて紹介〜(奥田りさ)
risatube
PRO
4
660
副作用と戦う PHP リファクタリング ─ ドメインイベントでビジネスロジックを解きほぐす
kajitack
2
440
リッチエディターを安全に開発・運用するために
unachang113
1
240
型で語るカタ
irof
1
810
「テストは愚直&&網羅的に書くほどよい」という誤解 / Test Smarter, Not Harder
munetoshi
1
220
プロダクトという一杯を作る - プロダクトチームが味の責任を持つまでの煮込み奮闘記
hiliteeternal
0
180
AIコーディングエージェント全社導入とセキュリティ対策
hikaruegashira
12
7.3k
MCPで実現できる、Webサービス利用体験について
syumai
7
1.9k
チームで開発し事業を加速するための"良い"設計の考え方 @ サポーターズCoLab 2025-07-08
agatan
1
490
はじめてのWeb API体験 ー 飲食店検索アプリを作ろうー
akinko_0915
0
160
Rails Frontend Evolution: It Was a Setup All Along
skryukov
0
320
構文解析器入門
ydah
7
1.8k
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
96
6.1k
Code Review Best Practice
trishagee
69
19k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Faster Mobile Websites
deanohume
308
31k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.5k
A Tale of Four Properties
chriscoyier
160
23k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
How to Think Like a Performance Engineer
csswizardry
25
1.8k
A Modern Web Designer's Workflow
chriscoyier
695
190k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
282
13k
Transcript
&Y"XTͰ"84ͷ"1* Λ͏ Elixir ษڧձ tokyo.ex#7 × Վب࠲.tech#13 2017/01/01
w "LJIJEF,BOH !LBONP@BL w $MBTTNFUIPEגࣜձࣾʹॴଐ w ීஈϞόΠϧΞϓϦαʔϏε෦ͱ͍͏ͱ͜ΖͰαʔ όαΠυͷ͓ࣄΛ͍ͯ͠·͢ʢ3VCZɺ/PEFͳ Ͳ
ɻ͋ͱΠϯϑϥʢ"84ʣ
"84ϝΠϯͷձࣾͰ&MJYJSͷ͜ͱΛ Α͘#MPHͰॻ͍ͯ·͢ ձࣾ ࢲ
ࢲͷΈʜ&MJYJSΛࣄͰ͑ͳ͍ w ձࣾͰΘΕ͍ͯΔݴޠ3VCZɺ/PEFɺ+BWBɺ 4DBMBʢ(Pগ͠ʣ w ࡢɺ্࢘ʹʮ&MJYJS͜ͷձࣾͰ͏Մೳੑ΄΅ ͳ͍͚ͲؤுͬͯʯͱݴΘΕͨ Ͳ͏͢Ε&MJYJS͑Δ͔ʜ
ͻΒΊ͍ͨʂ "84ͷձࣾͩ͠ɺ"84ͱ ͷ࿈ܞ͕ॆ࣮͍ͯ͠Ε ͑ΔΑ͏ʹͳΔ͔ʂ
ࠓΑ͋͘Δී௨ͷϞόΠϧόοΫΤϯυγεςϜ Ͱɺ&Y"XTΛͬͨ߹ͷ"84"1*ͷݺͼग़͠ʹͭ ͍͓ͯ͠͠·͢ w 4 w %ZOBNP%# w 4/4 424
w ,JOFTJT4USFBNT
&Y"XT w &MJYJSͷ"84$MJFOU-JCSBSZ w ରԠ͍ͯ͠ΔαʔϏε%ZOBNP%#ɺ4ɺ&$ɺ ,JOFTJTɺ-BNCEBɺ3%4ɺ4/4ɺ424ɺ,.4 w ࡢ݄ʹWFS͕ϦϦʔε͞Ε·ͨ͠ w TIBSFE@DSFEFOUJBMTFYQPOFOUJBMCBDLP⒎ʹରԠ
͍ͯͨ͠Γͱ৭ʑศར
4Λͬͨίϯςϯπ৴ $.4͔Βཧऀ͕ίϯςϯπΛొ ࡞ͨ͠ίϯςϯπʢ+40/ͱ͔ը૾ʣΛ4ʹΞο ϓϩʔυ $%/ܦ༝ͰϞόΠϧΞϓϦʹදࣔ͢Δ CMS S3 Cloud Front
Ξοϓϩʔυ μϯϩʔυ
%ZOBNP%#Λͬͨίϯςϯπ৴ w 4Ͱ৴͍ͯͨ͠ͷΛ%ZOBNP%# "1*αʔό ܦ༝ͰϞόΠϧΞϓϦʹදࣔ͢Δ DynamoDB API Server
Ϩίʔυͷऔಘ ߋ৽
আ
4/4τϐοΫΛͬͨϓογϡ௨ 424ܦ༝ͷσόΠετʔΫϯొ API Server SNS Topic CMS SQS Worker ϓογϡ௨
τʔΫϯొ
4/4τϐοΫͷύϒϦογϡ
424͔Βͷϝοηʔδऔಘɺআ
,JOFTJT4USFBNTܦ༝Ͱ%ZOBNP%# ఆྔ8$6ॻ͖ࠐΈ Stream Lambda DynamoDB Stream Lambda Worker w %ZOBNP%#ͷେྔϨίʔυॻ͖ࠐΈ
w -BNCEBͰಡΈࠐΈϨίʔυྔΛτϦΨʔͰݻఆͯ͠ %ZOBNP%#ͷॻ͖ࠐΈྔΛௐ͢Δ
4USFBNͷϨίʔυՃ ෳϨίʔυՃ
4USFBN͔ΒͷϨίʔυऔಘ
,.4 w ࡢɺ)JSPLJ0IUTVLB͞Μ͕࣮ͯ͘͠Ε·ͨ͠ʂ ͋Γ͕ͱ͏͍͟͝·͢☺ w ,.4҉߸ԽΩʔͷੜɺཧΛ"84ͰͰ͖ΔαʔϏε ҉߸Խ ෮߸Խ
·ͱΊ w &Y"XTΛͬͯ"84ͷ"1*Λ͏ͷඇৗʹ؆୯ w ݱࡏ։ൃ͕׆ൃͰࠓޙରԠαʔϏε͕૿͍͑ͯ ͘ͱࢥΘΕΔ w υΩϡϝϯτ͔ͬ͠Γ͍ͯ͠Δ w όάɺυΩϡϝϯτमਖ਼ͳͲ·ͩ·ͩਓख͕Γͳ
ͦ͏ͳͷͰߩݙͰ͖Δνϟϯε͋Δ ʢࣗখ͍͞मਖ਼ͳͲϓϧϦΫૹͬͨΓͯ͠·͢ʣ