Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
FiNCでの5年間に渡る マイクロサービスの育て方 / microservices at ...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Shinozuka Fumiya
December 08, 2018
Technology
8.6k
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
FiNCでの5年間に渡る マイクロサービスの育て方 / microservices at FiNC
Shinozuka Fumiya
December 08, 2018
More Decks by Shinozuka Fumiya
See All by Shinozuka Fumiya
プログラミング未経験の学生をエンジニアにしてきたノウハウを公開
shinofumijp
0
2.3k
FiNCのサービスライフサイクルに応じた施策の振り返り
shinofumijp
1
180
Other Decks in Technology
See All in Technology
Claude Codeで作ったアプリを安全に公開する/Built with Claude Japan 2026
yoshidashingo
0
210
なぜ東京にいる私が、新潟の技術コミュニティを運営するのか by 八雲慎之助
yakumo
0
220
Kiro Crew 入門 (手を離しても進む仕事) | 目指せ Kiro マスター 11
inariku
PRO
4
510
AI時代の組織作り:チーム開発から「個人×AI」への移行と、持続可能な「開発資本」の築き方
ham0215
2
310
続・ソフトウェアアーキテクトのための意思決定術: Decision Readiness, Revisited — When AI Changes the Economics of Software Architecture
snoozer05
PRO
9
2.7k
ゼロから作るWebアプリの新定番!?Amplify Gen 2 × AWS Blocksで実現する「開発速度とRDBの柔軟性のいいとこ取り」
amixedcolor
1
170
レガシーコードに対する loop engineering的なAI開発プロセス導入について
kubell_hr
0
280
An Introduction to Context Ontology Accelerator (teaching AI agents what your data means)
inariku
PRO
1
120
Shared Signals Framework 仕様解説
oidfj
0
190
Copilot Coworkで「みのるん式」やってみた
minorun365
PRO
2
1.6k
[dbts2026]数十PBの超巨大データ×AI活用を支えるSnowflakeの実力〜大規模環境におけるアーキテクチャと運用のリアル〜
y_matsubara
0
110
Metadata - Section 3 : Dublin Core Standard · DC
mohab1
0
110
Featured
See All Featured
[SF Ruby Conf 2025] Rails X
palkan
3
1.5k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
560
Evolving SEO for Evolving Search Engines
ryanjones
0
360
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
510
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.3k
Between Models and Reality
mayunak
4
560
What the history of the web can teach us about the future of AI
inesmontani
PRO
3
790
Typedesign – Prime Four
hannesfritz
42
3.2k
First, design no harm
axbom
PRO
2
1.4k
Navigating Weather and Climate Data
rabernat
0
590
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
320
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.9k
Transcript
FiNCͰͷ5ؒʹΔ ϚΠΫϩαʔϏεͷҭͯํ Manager / Server side engineer @shinofumijp
FiNCͱ͍͏ΞϓϦΛ͝ଘͰ͔͢?
iOS/Android FiNC APP ϞόΠϧωΠςΟϒͷϔϧεέΞΞϓϦ
4,000,000DOWNLOAD iOS/Android FiNC APP
όοΫΤϯυϚΠΫϩαʔϏεͰߏ iOS/Android FiNC APP
iOS/Android FiNC APP MICROSERVICES 40
iOS/Android FiNC APP ENGINEERS 50
ࣰ௩ೖࣾ࣌(2014)ͷFiNC
2014 - FiNC @shinofumijp MICROSERVICES 0
2014 - FiNC @shinofumijp ENGINEERS 0
- 2014 - աڈ - 2018 - ݱࡏ
- 2014 - աڈ - 2018 - ݱࡏ
ࠓ͞ͳ͍͜ͱ RailsͷςοΩʔͳ ϚΠΫϩαʔϏεͷཁૉٕज़ͷ Ϛωδϝϯτͷ
RailsςοΩʔͳ ϚΠΫϩαʔϏεͷཁૉٕज़ͷ Ϛωδϝϯτͷ FiNCΞϓϦͷੜ
ͷ্
גࣜձࣾFiNC Technologies (Ҏ߱FiNCͱදه) — αʔόʔαΠυΤϯδχΞ — Ϛωʔδϟʔ ࣰ௩࢙ @shinofumijp #ϫΠϯΤΩεύʔτ
#Ϊλʔ #εέϘʔ FiNCΞϓϦͷੜ ͷ্
FiNCΞϓϦͷੜ ͷ্ ɾFiNCͱผͷձࣾ ɾϝϯόʔ ɹɹɾ (ݱFiNCදऔకCTO) ɹɹɾ (ݱFiNCΤϯδχΞ) ɹɹɾ (ಉ্)
ɹɹɾ (ಉ্) ɾࣄۀ༰ ɹɹɾҩༀྲྀ௨ͷ࠷దԽ ɹɹɾडୗ։ൃ ҙࣝͷߴֶ͍ੜͱֶͯ͠ੜ࣌ʹىۀ
FiNCΞϓϦͷੜ ͷ্ 2013ʹೆ͕1݅ͷ։ൃҊ݅Λड FiNC͍ͬͯ͏μΠΤοτͬͯΔ͓Ζ͍ϕϯνϟʔ͕ ͋ΜͶΜ͚ͲɺΒΜʁ
։ൃ
FiNCΞϓϦͷੜ ։ൃ LINE্Ͱߦͳ͍ͬͯͨμΠΤοτࢦಋΛ WebΞϓϦέʔγϣϯԽ ɾFiNCμΠΤοτՈఉڭࢣ ɹɹɾ࣌FiNC͕ఏڙ͍ͯͨ͠αʔϏε ɹɹɾμΠΤοτΛ͍ͨ͠Ϣʔβʔʹରͯ͠ɺ ɹɹɹઐՈͷઌੜ͕LINE্ͰΞυόΠεΛ͢ΔαʔϏε
FiNCΞϓϦͷੜ ։ൃ
FiNCΞϓϦͷੜ ։ൃ 20143݄ʹϦϦʔε
FiNCΞϓϦͷੜ ։ൃ 20143݄࣌ͷΞʔΩςΫνϟ ɾσϓϩΠࣰ௩͕ϩʔΧϧ͔Βcap production deploy ɹɾࣰ௩ͷ৺ଁʹ͋·Γʹѱ͍ͷͰςετΛ͔͘จԽͱCIͷಋೖΛߦ͏
FiNCΞϓϦͷੜ ։ൃ ΞϓϦέʔγϣϯ։ൃͷํ ɾ12 factor appsʹଇΔ ɾςʔϒϧͷਖ਼نԽݫີʹߦ͏ ɾߏཧπʔϧΛ͍Πϯϑϥͷߏங࠶ݱੑ͕͋ΔΑ͏ʹ
FiNCΞϓϦͷੜ ։ൃ ΞϓϦέʔγϣϯ։ൃͷํ → ͜ΕΒͷํ͕ɺ ޙͷϚΠΫϩαʔϏεͷΓग़͢͠͞ʹͭͳ͕ͬͨ ɾ12 factor appsʹଇΔ ɾςʔϒϧͷਖ਼نԽݫີʹߦ͏
ɾߏཧπʔϧΛ͍Πϯϑϥͷߏங࠶ݱੑ͕͋ΔΑ͏ʹ
FiNCΞϓϦͷੜ ೖࣾ ϦϦʔεͱಉ࣌ʹFiNCʹೖࣾ ɾೲͰͳ͘ɺ ͷ3ਓɺ ɹFiNCʹೖࣾ͠αʔϏεͷܧଓతͳ։ൃΛߦ͏͜ͱΛܾҙ ɾΓͷϝϯόʔ( )ݩͷΦϑΟεͷཹक൪Λ͍͕ͤͯͨɺ ɹ࣍ୈʹڐՄͳ͘ΦϑΟεʹ্ΓࠐΉΑ͏ʹͳΓͦͷ··δϣΠϯ
FiNCΞϓϦͷੜ ೖࣾ ͳͥࣗͷձࣾΛΜͰ·Ͱೖࣾͨ͠ͷ͔ ɾҩྍඅͷߴಅͱੜ׆श׳ප ɾ༧ྖҬͰͷ৽Ϗδωεͷ಄ ɾFiNCදߔޱͷਓฑͱϏδϣϯ ɹɹɾFiNCͰ͔͠ٹ͑ͳ͔ͬͨਓΛ1ਓͰଟ͘ٹ͍͍ͨ ɹɹɾҰੜʹҰͷ͔͚͕͑ͷͳ͍ਓੜͷޭΛαϙʔτ͢Δ
RailsςοΩʔͳ ϚΠΫϩαʔϏεͷཁૉٕज़ͷ Ϛωδϝϯτͷ FiNCͷΞʔΩςΫνϟͷมભ
- 2014ޙ~2015 - ظ 02 - 2016~2017~ - Ճظ 03
- 2018~ - άϩʔεظ 04 FiNC MICROSERVICES PERIOD - 2014 લ - ։࢝ 01
- 2014 લ - ։࢝ 01 - 2014ޙ~2015 - ظ
02 - 2016~2017~ - Ճظ 03 - 2018~ - άϩʔεظ 04 FiNC MICROSERVICES PERIOD
- 2014 લ - ։࢝ 01 - 2014ޙ~2015 - ظ
02 - 2016~2017~ - Ճظ 03 - 2018~ - άϩʔεظ 04 FiNC MICROSERVICES PERIOD
FiNCͷΞʔΩςΫνϟͷมભ ࣌ͬͯ20141݄ ɾFiNCμΠΤοτՈఉڭࢣͷ։ൃ͕ॱௐʹਐΜͰ͍ͨࠒʹFiNCදͷߔޱͱձ͏ 01 ϚΠΫϩαʔϏεԽͷ։࢝
FiNCͷΞʔΩςΫνϟͷมભ μΠΤοτՈఉڭࢣͷઌੜʹͳΔࢿ֨ͷൃߦͱEϥʔχϯάΛ ఏڙ͍ͨ͠ μΠΤοτՈఉڭࢣʹਃ͠ࠐΉਓͱઌੜͷϚονϯά͕Ͱ͖Δ Έ΄͍͠ ͋ͱμΠΤοτՈఉڭࢣͷଔۀੜͱઌੜΛத৺ʹͨ͠ ίϛϡχςΟΛ࡞Γ͍ͨ 01 ϚΠΫϩαʔϏεԽͷ։࢝ ๏ਓͷརްੜͱ͍͏ܗͰಋೖ͍͖͍ͯͨ͠
֤छδϜͱͷఏܞΛͯ͠ɺձһূͱͯ͠ͷར༻ɺτϨʔχϯά༰ ͷه͕Ͱ͖ΔΑ͏ʹ͍ͨ͠ ݈߁ʹྀ͚ͨͩ͠ΛऔΓѻ͏ECΛ࡞ͬͯɺFiNCΛ ͬͯ͘Ε͍ͯΔਓʹ͓ಘʹར༻Ͱ͖ΔΑ͏ʹ͍ͨ͠ μΠΤοτ͚ͩ͡Όͳ͘ϔϧεέΞιϦϡʔγϣϯͷ ϓϥοτϑΥʔϜʹ͍ͨ͠
FiNCͷΞʔΩςΫνϟͷมભ ߟ͑ͨ͜ͱ ɾ͜Ε͚ͩଟ͘ͷҟͳΔυϝΠϯΛ ɹ1ͭͷΞϓϦέʔγϣϯͰ։ൃ͢Δͷ͍͠ͱײͨ͡ ɹɾ։ൃମ੍ɺ৫ͱͯ͠ͷεέʔϧ ɹɾΞϓϦέʔγϣϯͷෳࡶ͞ 01 ϚΠΫϩαʔϏεԽͷ։࢝
FiNCͷΞʔΩςΫνϟͷมભ 01 ϚΠΫϩαʔϏεԽͷ։࢝ ҨࢠݕࠪͷӾཡػೳΛ৽͍͠ RailsΞϓϦέʔγϣϯͱͯ͠࡞ ɾ͜Ε͕FiNCͷϚΠΫϩαʔϏεͷ࢝·Γ ɹɹɾ࣮࣌ɺࣰ௩ϚΠΫϩαʔϏεͱ͍͏ݴ༿Βͳ͔ͬͨ ɹɹɾΞϓϦέʔγϣϯ͕ࣗతʹৼΔ͍ɺ݁Ռ߹ͰσʔλΛಉظ͠߹͏͕࢟ ɹɹɹͳΜͱͳ͘૾͍ͭͨ
FiNCͷΞʔΩςΫνϟͷมભ ΞʔΩςΫνϟ ɾΤϯδχΞ3ਓ 01 ϚΠΫϩαʔϏεԽͷ։࢝
- 2014 લ - ։࢝ 01 - 2014ޙ~2015 - ظ
02 - 2016~2017~ - Ճظ 03 - 2018~ - άϩʔεظ 04 FiNC MICROSERVICES PERIOD
- 2014 લ - ։࢝ 01 - 2014ޙ~2015 - ظ
02 - 2016~2017~ - Ճظ 03 - 2018~ - άϩʔεظ 04 FiNC MICROSERVICES PERIOD
FiNCͷΞʔΩςΫνϟͷมભ 02 ϚΠΫϩαʔϏεͷظ Ϗδωεల։ʹݺԠͨ͠ ϚΠΫϩαʔϏεͷՃ ɾ๏ਓ͚αʔϏε ɹɹɾຊͷޕޙͷηογϣϯͰొஃ͢Δਗ਼ਫ͕ೖࣾ͠ɺ ɹɹɹϦʔυΤϯδχΞͱͯ͠։ൃ ɾઐՈͷࢿ֨ൃߦࣄۀͱEϥʔχϯά৴αʔϏε ɾECαʔϏε
αʔϏεͷ୯Ґ ɾൺֱతେཻ͖͍ͷαʔϏε ɾ1ࣄۀʹ1,2αʔϏε ɾ1νʔϜʹΤϯδχΞ0.5~1໊ FiNCͷΞʔΩςΫνϟͷมભ 02 ϚΠΫϩαʔϏεͷظ
FiNCͷΞʔΩςΫνϟͷมભ 02 ϚΠΫϩαʔϏεͷظ ϏδωεԣஅػೳͱͳΔ ج൫ܥαʔϏεͷ։ൃߦ͏ ɾϨίϝϯσʔγϣϯج൫ ɾೝূج൫
Ϩίϝϯσʔγϣϯج൫ͷࣦഊ ɾ։ൃ։࢝ॳͳ͔ͬͨ ɾޙʹϨίϝϯσʔγϣϯج൫Λ൚༻Խ͠Α͏ͱͯ͠Ϩίϝϯσʔγϣϯͱ ɹ໊͕͘ͷશͯͷΛෛΘͤͯ͠·ͬͨ FiNCͷΞʔΩςΫνϟͷมભ 02 ϚΠΫϩαʔϏεͷظ ɾྫ ɹɹɾϑΥϩʔ͢ΔϢʔβΛϨίϝϯυ͍ͨ͠ ɹɹɾECͷΛϨίϝϯυ͍ͨ͠
ɹɹɾهࣄͷϨίϝϯυΛ͍ͨ͠
൚༻Ϩίϝϯσʔγϣϯج൫ͷಈػ ɾϨίϝϯσʔγϣϯج൫FiNCͷશαʔϏεͷϢʔβߦಈσʔλΛԣஅతʹ ɹѻͬͯɺϨίϝϯσʔγϣϯΛߦ͏αʔϏε FiNCͷΞʔΩςΫνϟͷมભ 02 ϚΠΫϩαʔϏεͷظ ɾϚΠΫϩαʔϏεͰσʔλΛԣஅͯ͠ѻ͏͜ͱ͕͍͠ͷͰɺ ɹϨίϝϯσʔγϣϯج൫Λ൚༻Խͯ͋͠ΒΏΔ ɹϨίϝϯσʔγϣϯΛߦ͍͍ͨͱ͍͏ಈػࣗମೲಘͰ͖Δ
൚༻ϨίϝϯσʔγϣϯͷԿ͕͔? ɾϨίϝϯσʔγϣϯج൫ʹ֤αʔϏεͷυϝΠϯ͕ࣝඞཁͱͳΓɺ ɹਆαʔϏεͱͳͬͯ͠·ͬͨ ɹɹɾϨίϝϯυϩδοΫ֤αʔϏεͷυϝΠϯϩδοΫ FiNCͷΞʔΩςΫνϟͷมભ 02 ϚΠΫϩαʔϏεͷظ ※ਆαʔϏεͷޙड़ ※2018ʹϨίϝϯσʔγϣϯج൫ͷϦΞʔΩςΫτΛߦͬͨ Ϩίϝϯσʔγϣϯج൫
ϑΥϩʔϨίϝϯσʔγϣϯ هࣄϨίϝϯσʔγϣϯ ECϨίϝϯσʔγϣϯ
ΞʔΩςΫνϟ FiNCͷΞʔΩςΫνϟͷมભ 02 ϚΠΫϩαʔϏεͷظ ɾΤϯδχΞ10~30ਓ ೝূαʔϏε ϨίϝϯυαʔϏε
- 2014 લ - ։࢝ 01 - 2014ޙ~2015 - ظ
02 - 2016~2017~ - Ճظ 03 - 2018~ - άϩʔεظ 04 FiNC MICROSERVICES PERIOD
- 2014 લ - ։࢝ 01 - 2014ޙ~2015 - ظ
02 - 2016~2017~ - Ճظ 03 - 2018~ - άϩʔεظ 04 FiNC MICROSERVICES PERIOD
2016 ɾňFiNCμΠΤοτՈఉڭࢣʯΛμΠΤοτʹࢭ·Βͣ ɹ݈߁ཧશൠʹରԠ͘͢ϦχϡʔΞϧΛ։࢝ ɹɹɾΤϯδχΞ࠾༻ͷຊ֨Խ ɹɹɾػೳՃʹ͏৽نϚΠΫϩαʔϏε࡞ ɹɹɾຊମαʔϏε͔ΒͷαʔϏεΓग़͠ FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ ※͜ͷลΓͰRubyք۾ͰإΛग़͢@ota42yͱ@qsona͕ೖࣾ
ɾαʔόΛEC2͔ΒDocker+ECSʹҠߦ
2017 ɾ3݄ʹFiNCΞϓϦͷਖ਼ࣜϩʔϯν FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ
ϚΠΫϩαʔϏεͷ୯Ґ ɾجຊٕज़୯ҐͰͳ͘υϝΠϯ୯ҐͰׂ FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ ɾνʔϜͱαʔϏευϝΠϯͷҰக ɾྫ ɹɹɾϥΠϑϩάαʔϏε ɹɹɹɹɾาɺମॏɺ৯ࣄɺਭͷهΛߦ͏αʔϏε ɹɹɾϝσΟΞαʔϏε
ɹɹɹɹɾ݈߁ؔ࿈هࣄͷ৴Λߦ͏αʔϏε ɹɹɾαϒεΫϦϓγϣϯαʔϏε ɹɹɹɹɾαϒεΫϦϓγϣϯͷཧͱαʔϏεఏڙΛߦ͏αʔϏε
ϚΠΫϩαʔϏεԽͷՃʹ͍ ༷ʑͳϚΠΫϩαʔϏε՝͕ݦࡏԽ FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ
ϚΠΫϩαʔϏε՝1 ɾຊମαʔϏε͕ਆαʔϏεʹͳΔ FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ ຊମαʔϏε αʔϏε1 αʔϏε2 αʔϏε3 αʔϏεN
…
ਆαʔϏεͷഎܠ ɾΫϥΠΞϯτΞϓϦଆͰ֤αʔϏεͷAPIϦιʔεΛू͢Δͷ͕େม FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ ɾUI੍ޚϑϥάཧΛߦ͏ࡍʹຊମαʔϏε͕ศར
ਆαʔϏεͷରԠ ɾAPIͷϦιʔεࢦΛڧΊΔͨΊͷٕज़બఆ FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ ɾϦιʔεࢦͷAPIΛू͢ΔͨΊͷBFF(Backends For Frontends)
APIϦιʔεࢥߟΛڧΊΔͨΊͷٕज़બఆ ɾBefore ɹɹɾgrape ɹɹɾrabl FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ ɾAfter ɹɹɾActionController ɹɹɾActiveModelSerializer
ɹɹɾjson_schema + committee
ϦιʔεࢦͷAPIΛू͢ΔͨΊͷBFF ɾόοΫΤϯυͷAPIΛू͠ϑϩϯτΤϯυ͕ར༻͍͢͠Α͏ʹՃ͢ΔϨΠϠʔ FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ ɾUI੍ޚ౷߹BFF͕ߦ͏͜ͱʹΑΓ֤αʔϏε ɹυϝΠϯʹ࣮ͳAPI͕ఏڙՄೳʹ BFF αʔϏε1 αʔϏε2
αʔϏε3 αʔϏεN … ຊମαʔϏε
ϦιʔεࢦͷAPIΛू͢ΔͨΊͷBFF FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ ※͜ͷ࣮࣌ͨ͠BFFʹผͷ͕ൃੜ͠2018ʹϦΞʔΩςΫτ BFF αʔϏε1 αʔϏε2 αʔϏε3 αʔϏεN
… ຊମαʔϏε
ϚΠΫϩαʔϏε՝2 ɾΞϓϦέʔγϣϯؒͷσʔλಉظͷґଘؔ FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ
ى͖ͨ͜ͱ ɾຊମαʔϏεͰϢʔβʔͷୀձ͕͋ͬͨ࣌ʹຊମαʔϏε͔Βɺ ɹ๏ਓɾECɾೝূج൫ͷୀձAPIΛݺͼग़͍ͯͨ͠ FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ ୀձ ຊମαʔϏε EC ๏ਓ
ೝূج൫ ୀձ ୀձ ୀձ
ݩͷσʔλߋ৽ϑϩʔͷ ɾߋ৽͞ΕΔαʔϏε͕Ͳ͜ͷαʔϏεʹӨڹΛ༩͑Δ͔ΛΒͳ͍ͱ͍͚ͳ͍ FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ ɾߋ৽Λड͚औΔαʔϏε͕૿͑Δͱɺߋ৽ͷ௨ΛՃ࣮͠ͳ͍ͱ͍͚ͳ͍
ରԠ ɾΠϕϯτυϦϒϯΞʔΩςΫνϟͷมߋ ɹɹɾAWS SNS/SQSΛ༻͍ͨPub/Sub ɹɹɾมߋͷ௨Λड͚औΓ͍ͨαʔϏε͕ΩϡʔΛτϐοΫʹαϒεΫϥΠϒ͢Δ FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ ຊମαʔϏε EC
๏ਓ ೝূج൫ AWS SQS AWS SQS AWS SQS AWS SNS
ରԠ FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ ຊମαʔϏε EC ๏ਓ ೝূج൫ AWS SQS
AWS SQS AWS SQS AWS SNS ɾࢀߟ ɹɹɾϚΠΫϩαʔϏεʹ͓͚ΔඇಉظΞʔΩςΫνϟ @ota42y ɹɹɹhttps://www.slideshare.net/ota42y/ss-80254350
ϚΠΫϩαʔϏε՝3 ɾશମؒͷѲ͕ࠔʹͳΔ FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ
ձࣾͷํੑͱ αʔϏε։ൃͷؔੑ͕Θ͔ΓͮΒ͘ͳΔ FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ ɾ݁ՌɺΤϯδχΞͷϞνϕʔγϣϯͷԼʹͭͳ͕Δ
ରԠ ɾϚωδϝϯτ՝ͱͯ͠औΓΉ ɹɹɾৄ͘͠ޕޙͷηογϣϯͰਗ਼ਫ͕͢༧ఆ FiNCͷΞʔΩςΫνϟͷมભ 03 ϚΠΫϩαʔϏεԽͷՃظ
- 2014 લ - ։࢝ 01 - 2014ޙ~2015 - ظ
02 - 2016~2017~ - Ճظ 03 - 2018~ - άϩʔεظ 04 FiNC MICROSERVICES PERIOD
- 2014 લ - ։࢝ 01 - 2014ޙ~2015 - ظ
02 - 2016~2017~ - Ճظ 03 - 2018~ - άϩʔεظ 04 FiNC MICROSERVICES PERIOD
FiNCͷΞʔΩςΫνϟͷมભ 04 άϩʔεظ άϩʔε͕ඞཁͳػೳΛத৺ʹ ϚΠΫϩαʔϏεԽͱϦΞʔΩςΫτ ɾྫ ɹɹɾΞϓϦͷνϡʔτϦΞϧͷϚΠΫϩαʔϏε ɹɹɾϢʔβؒίϛϡχςΟͷϚΠΫϩαʔϏε ɹɹɾϨίϝϯσʔγϣϯج൫ͷϦΞʔΩςΫτ ɹɹɾBFFͷϦΞʔΩςΫτ
FiNCͷΞʔΩςΫνϟͷมભ 04 άϩʔεظ ݱࡏ BFF ECαʔϏε܈ ೝূج൫ ๏ਓ͚αʔϏε܈ Ϩίϝϯσʔγϣϯج൫ ΞϓϦαʔϏε܈
ɾΤϯδχΞ50ਓ
FiNCͷΞʔΩςΫνϟͷมભ 04 άϩʔεظ ݱࡏͷϚΠΫϩαʔϏε՝ͱऔΓΈ ɾService Mesh ɾԣஅ՝ͱΦʔφʔγοϓ ɾϢʔβମݧΛ࣠ʹͨ͠ϓϩμΫτ։ൃ
FiNCͷΞʔΩςΫνϟͷมભ 04 άϩʔεظ Service Mesh ɾׂѪ
FiNCͷΞʔΩςΫνϟͷมભ 04 άϩʔεظ ԣஅ՝ͱΦʔφʔγοϓ ɾαʔϏεؒΛ·͕ͨΔʹରͯ͠୲ऀཱ͕ͯͮΒ͘ղܾ͕͞ΕͮΒ͍
FiNCͷΞʔΩςΫνϟͷมભ 04 άϩʔεظ ରԠ ɾԣஅ՝ʹରͯ͠ΦʔφʔγοϓΛ࣋ͪ͘͢͢Δ৫ઃܭΛࡧத
FiNCͷΞʔΩςΫνϟͷมભ 04 άϩʔεظ ෦׆ͱশͯ͠ ɾɹɹɹɹ͕༗ࢤΛืΓͳ͕Βղܾͱਚྗ
FiNCͷΞʔΩςΫνϟͷมભ 04 άϩʔεظ ׆ಈྫͷҰ෦հ ɾશϚΠΫϩαʔϏεͷϥΠϒϥϦΞοϓσʔτ ɹɹɾશαʔϏεͷϥΠϒϥϦΞοϓσʔτΛఆظతʹߦ͏ͷŧŔŕŪŸƃŪƄř
FiNCͷΞʔΩςΫνϟͷมભ 04 άϩʔεظ ߦͬͨ͜ͱ ɾϥΠϒϥϦͷΞοϓσʔτঢ়گͷՄࢹԽ ɾΞοϓσʔτ࡞ۀ ɾΞοϓσʔτ࡞ۀͷޙ͍ ɾdependabotͷશࣾಋೖͷಇ͖͔͚ˠಋೖ͕ܾ·ͬͨ
FiNCͷΞʔΩςΫνϟͷมભ 04 άϩʔεظ ࢯᐌ͘
FiNCͷΞʔΩςΫνϟͷมભ 04 άϩʔεظ ϢʔβʔମݧΛ࣠ͱͨ͠ϓϩμΫτ։ൃ
FiNCͷΞʔΩςΫνϟͷมભ 04 άϩʔεظ FiNCͰػೳɾυϝΠϯ୯ҐͰ αʔϏεΛׂ͖ͯͨ͠ ɾ։ൃମ੍ϓϩμΫτʹӨڹΛ༩͑ɺ ɹΞϓϦͷϢʔβʔମݧ͕ػೳ࣠Ͱஅ͞Εͯ͠·͍͍͢
FiNCͷΞʔΩςΫνϟͷมભ 04 άϩʔεظ ରԠ ɾҰ؏ͨ͠ϢʔβʔମݧΛఏڙ͢ΔͨΊͷΞʔΩςΫνϟมߋ ɹɹɾ։ൃνʔϜͷମ੍มߋ ɹɹɾϑϩϯτΤϯυɾόοΫΤϯυαʔϏεͷϦΞʔΩςΫτ
RailsςοΩʔͳ ϚΠΫϩαʔϏεͷཁૉٕज़ͷ Ϛωδϝϯτͷ ϚΠΫϩαʔϏεͷྺ࢙ΛৼΓฦͬͯ
ϚΠΫϩαʔϏεͷྺ࢙ΛৼΓฦͬͯ ϓϩμΫτʹߩݙ ॳظ͔ΒϚΠΫϩαʔϏεԽΛߦͳͬͨ͜ͱʹΑΓɺ ػೳՃɾάϩʔεɾΤϯδχΞ૿ʹ͑ΒΕΔ։ൃ৫ͱͳΓ ϓϩμΫτͷʹߩݙͰ͖ͨ
ϚΠΫϩαʔϏεͷྺ࢙ΛৼΓฦͬͯ πϥϛΛΓӽ͑ ϚΠΫϩαʔϏεͷπϥϛɾ᠘ʹ࣌ʑͰ໘͕ͨ͠ɺ ඞཁʹԠͯ͡ΞʔΩςΫνϟͷมߋΛߦ͏͜ͱͰ Γӽ͑Δ͜ͱ͕Ͱ͖ͨ
ϚΠΫϩαʔϏεͷྺ࢙ΛৼΓฦͬͯ ΑΓྑ͍αʔϏεఏڙΛࢦͨ݁͠Ռ ΤϯδχΞ͚ͩͰͳ͘ اըɺσβΠφʔɺQAɺΧελϚʔαϙʔτؚΊɺ શһ͕ΑΓΑ͍αʔϏεͷఏڙΛࢦͨ݁͠Ռ͕ ݱࡏͷFiNCͷΞʔΩςΫνϟͱϓϩμΫτ (ͨͩਖ਼ ͕ߩݙͨ͜͠ͱͳΜͯ΄ͱΜͲͳ͍Ͱ͢)
ࠓޙΞʔΩςΫνϟͷվળɺܧଓͯ͠ߦ͏
ϚΠΫϩαʔϏεͷྺ࢙ΛৼΓฦͬͯ ࠓޙΞʔΩςΫνϟͷվળɺܧଓͯ͠ߦ͏ ΑΓྑ͍αʔϏεΛఏڙ͢ΔͨΊ ͦͯ͠FiNCͰ͔͠ٹ͑ͳ͔ͬͨਓΛ1ਓͰଟ͘ٹ͏ͨΊ
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ - Thank You - ϚΠΫϩαʔϏε՝Λࠀ͠ 'J/$ͷάϩʔεʹߩݙͯ͘͠ΕΔΤϯδχΞΛืू͍ͯ͠·͢