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
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
Optunaの最新リリースv5.0について
pfn
PRO
0
120
[JAWS-UG彩の国埼玉#12]そろそろ準備する?re:Invent2026をやさしく解説 / reinvent2026-sainokuni
sh_fk2
1
340
AI × アーキテクト 第1・2章|生成AIの課題とアーキテクトの素養
daidaidai
0
170
Webの常識が通じないHTMLメールのダークモード
teamlab
PRO
0
120
PHPカンファレンス関西の招待状 / Invitation to PHP Conference Kansai
ykanoh
0
110
10年後、Engineering 行為を剥奪されるとして、わたしたちは、どう、何を創ればいいだろうか。 / If Engineering Is Taken Away in 10 Years, How and What Should We Create?
bitkey
PRO
1
190
Claude Code本は、どのように執筆チームで書かれたか
oikon48
1
380
遠藤な_めぐろLT #38 「社内のAI活用推進」@麻布台_20261009
endonanana
0
130
Temporal 最高!でも改めて「日付」について調べたら人類の負債すぎる件
riyaamemiya
0
140
Rust で関数型ドメインモデリング
takonda
0
140
DevelopersIO 2026 知識の地図を描く ─ オントロジーとは何か?
ishikawa_satoru
1
1.7k
TinyGoでオブザーバビリティ?OpenTelemetryはTinyGoで使えるのか / Is OpenTelemetry available in TinyGo environment?
ymotongpoo
2
140
Featured
See All Featured
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
480
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
890
My Coaching Mixtape
mlcsv
0
360
Ruling the World: When Life Gets Gamed
codingconduct
0
400
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
310
Building the Perfect Custom Keyboard
takai
2
910
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
480
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
540
Ethics towards AI in product and experience design
skipperchong
2
430
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/$ͷάϩʔεʹߩݙͯ͘͠ΕΔΤϯδχΞΛืू͍ͯ͠·͢