Slide 1

Slide 1 text

"Microservices" is dead.
 Long live "Microservices". @qsona / FiNC Technologies Inc. 2018-12-21 ۜ࠲Rails#4 @ϦϯΫΞϯυϞνϕʔγϣϯ #ginzarails

Slide 2

Slide 2 text

"Microservices fundamentalism" is like abstinence-only sex ed: ϚΠΫϩαʔϏεݪཧओٛ͸ɺېཉͷΈ͔ΒͳΔੑڭҭͷΑ͏ͩɻ

Slide 3

Slide 3 text

Over the years, the "Microservices rhetoric" got louder and angrier. More mean-spirited. ௕೥ʹΘͨͬͯɺϚΠΫϩαʔϏεͷϨτϦοΫ
 (੣࣮͞ͷͳ͍ඒࣙྷ۟)͸ɺ ͏Δ͘͞ɺౖΓͬΆ͘ɺڱྔʹͳ͖ͬͯͨɻ

Slide 4

Slide 4 text

͜Ε͸ͳʹ • TDD is dead. Long live testing. (by DHH)
 ͱ͍͏໊ΤϯτϦͷվม • ͝ଘ͡ͳ͍ํ͸
 ςετۦಈ։ൃ
 ෇࿥CΛඞಡʂ

Slide 5

Slide 5 text

Θͨ͠͸ͩΕ • @qsona, ϚΠΫϩαʔϏεԺ݈೿

Slide 6

Slide 6 text

Microservices ݪཧओٛʁ

Slide 7

Slide 7 text

ྫ: ίϯ΢ΣΠͷ๏ଇ • ૊৫ͷߏ଄ͱٕज़ͷߏ଄͸Ұக͍ͯ͘͠ɺͱ ͍͏๏ଇ

Slide 8

Slide 8 text

ίϯ΢ΣΠͷ๏ଇݪཧओٛ • 1αʔϏεɾ1νʔϜ͡Όͳ͍ͱͩΊ • ૊৫ΛׂΒͳ͍ͳΒɺαʔϏεΛׂΔҙຯ͸ ͳ͍ • 100ਓҎ্ͷ૊৫͡Όͳ͚Ε͹΍ͬͪΌͩΊ

Slide 9

Slide 9 text

※ಉ྅Ͱ͢(@ota42y͞Μ)

Slide 10

Slide 10 text

(ͪͳΈʹ಺༰͸͍͍ͩͨಉҙ) it depends... agree

Slide 11

Slide 11 text

Microservices ݪཧओٛ...? • গͳ͘ͱ΋ Martin Fowler ΍ Sam Newmanͷ ͜ͱͰ͸ͳ͍ • ൴Βͷൃ৴͸ɺͱͯ΋ͱͯ΋੣࣮ • Ұ෦Λ੾Γऔ֦ͬͯେղऍ͠ɺڧ͗͢Δൃ৴ ͕ͳ͞ΕΔ͜ͱ͕͋Δ

Slide 12

Slide 12 text

qsonaͷॴײ • શͯͷڧ͍ҙݟ (ݪཧओٛ) ͸ɺ͋ΔίϯςΩετΛ ݩʹൃ৴͞ΕΔ • ࣮ࡍͷݱ৔Λࢧ͑ΔΞϓϦέʔγϣϯΤϯδχΞͷ ࢹ఺͸ɺஔ͍͚ͯ΅Γʹ͞Ε͍ͯΔΑ͏ʹײ͡Δ • ࠷ۙɺϚΠΫϩαʔϏεͱ͍͏ݴ༿Λൃ͢Δͷ͕͸ ͹͔ΒΕΔΑ͏ʹͳͬͨ...

Slide 13

Slide 13 text

qsonaͷॴײ • "counterintuitive ram" (௚ײʹ൓͢Δഁ৓Ṁ) ͱͯ͠ɺݱঢ়Λม͑ΔͨΊʹɺݪཧओٛతͳ ҙݟΛڣͿɺͱ͍͏͜ͱ͸͋Δ͕.... • Microservices ʹ͓͍ͯɺͦ͏͍͏ϑΣʔζ͸ ੈքతʹݟͨΒͱͬ͘ʹա͗ڈ͍ͬͯΔ

Slide 14

Slide 14 text

qsonaͷॴײ • ίϯ΢ΣΠͷ๏ଇݪཧओٛͰ͍͏ͱ... • ٕज़ͱಉ༷ɺ૊৫΋΍͸Γ໨తͰ͸ͳ͍ • ٕज़ͱ૊৫ͷ྆ྠͰɺϏδωεɾϓϩμΫτʹ޲͖߹͍ͬͯ͘΋ ͷ • ٕज़ͷϦΞʔΩςΫτʹ͸͕͔͔࣌ؒΔ • αʔϏεͷ୯Ґ = ૊৫ ͕ৗʹ੒Γཱͭ΄ͲϏδωε͸୯७Ͱ͸ͳ͍ • ݪཧओٛతओு͸ɺݱ৔ͷ໰୊ͱઓ͏ਓʹ͸ڹ͔ͳ͍

Slide 15

Slide 15 text

What is "Microservices" ? • ҰݴͰ͸આ໌Ͱ͖ͳ͍͠ɺ໌֬ͳఆٛ΋ͳ͍ • ίϯηϓτͷू߹ͱɺपลͷΤίγεςϜͱ ͯ͠ଊ͑ͯ΄͍͠

Slide 16

Slide 16 text

"Microservices" as a Concept • ϏδωευϝΠϯͰαʔϏεΛ෼ׂ͢Δ͜ͱ • αʔϏεͷ౷߹ʹ͸ඪ४ͷٕज़Λ࢖͏͜ͱ • ୯Ұ੹೚ݪଇɺૄ݁߹ͱߴڽूɺetc • ϚΠΫϩαʔϏεͷʮྑ͞ʯΛ୲อ͢ΔྖҬ • ॳग़͔Βશ͘มΘ͍ͬͯͳ͍

Slide 17

Slide 17 text

"Microservices" as an Ecosystem • Docker, Kubernetes, ECS / GKE • CI/CD πʔϧ • Envoy, Service Mesh (Istio, AWS App Mesh) • ϚΠΫϩαʔϏεͷʮσϝϦοτʯΛফ͢ྖҬ • ೥ʑਐԽ͍ͯ͠Δ

Slide 18

Slide 18 text

Concept & Ecosystem • ίϯηϓτΛ஌Γɺඞཁͳͱ͖ʹऔΓೖΕΔ͜ͱͰɺϝ ϦοτΛڗड͠ɺ • ΤίγεςϜʹ͏·͘৐Δ͜ͱͰɺ
 σϝϦοτΛݮΒ͢ • ͦ͏͍͏͏·͍෇͖߹͍ํΛ͢Ε͹ɺϚΠΫϩαʔϏε ͸ΈΜͳͷຯํʹͳΔ • ͱ͍͏ओுΛ͜Ε͔Β͍͖͍ͯͨ͠

Slide 19

Slide 19 text

গ͠୤ઢ

Slide 20

Slide 20 text

Q. Mircoservices Λ΍ͬͪΌ͍ ͚ͳ͍ձࣾ͸ʁ • ͳ͍…ͱ͍͍͍͕ͨɺ͋Δ͔΋͠Εͳ͍ • ௒ελʔτΞοϓͰ • ·ͩϓϩμΫτΛϩʔϯνͯ͠ͳͯ͘ • ΤϯδχΞ͸ֶੜ͚ͩ...

Slide 21

Slide 21 text

No content

Slide 22

Slide 22 text

No content

Slide 23

Slide 23 text

FiNC ❤ Microservices • "ϚΠΫϩαʔϏε" ͱ͍͏ݴ༿Λ஌Βͳ͍͏ͪ ͔ΒϚΠΫϩαʔϏεΛࢦ޲͍ͯͨ͠ • ʮҰੜʹҰ౓ͷ͔͚͕͑ͷͳ͍ਓੜΛαϙʔτ ͢ΔʯͨΊͷ Microservices Λ΍Γ͍ͨਓ͸੠ Λ͔͚ͯ΄͍͠ • We are hiringɺਅ݋ʹ࠾༻΍ͬͯ·͢

Slide 24

Slide 24 text

શͯͷձ͕ࣾͦ͏Ͱ͸ͳ͍ • ՝୊ͷઃఆ͸༷ʑɺ໨త΋༷ʑ • ਎ۙͳ໰୊Λղܾ͢Δձࣾ΋͋Δ • খ͞ͳϓϩμΫτΛ࡞Γଓ͚Δձࣾ΋͋Δ • ͦ͏͍͏ձࣾ΍ΤϯδχΞʹͱͬͯɺ
 Microservices ͸ແԑͳͷ͔ʁ

Slide 25

Slide 25 text

To be continued...

Slide 26

Slide 26 text

Rails and Microservices • Rails ͔ΒݟΔͱɺ Microservices ͸
 ࣗ෼ͱ͸ҧ͏ྖҬͷ໰୊Λղܾ͢Δଘࡏ • Rails ʹ଍Γͳ͍ͱ͜ΖΛ
 Microservices Ͱิ׬Ͱ͖Δ

Slide 27

Slide 27 text

͓·͔ͤ vs ΞϥΧϧτ

Slide 28

Slide 28 text

Easy vs Simple ;ͭ͏ͷRailsΞϓϦέʔγϣϯ։ൃ, Takafumi ONAKA https://www.slideshare.net/takafumionaka/rails-77195340

Slide 29

Slide 29 text

"Easy" is Difficult. • Easy Λҡ࣋͢Δͷ͸Ή͔͍ͣ͠

Slide 30

Slide 30 text

Is Rails "Easy"? • Rails ͸ͲΜͳ໰୊ʹର͢Δ౴͑Λ༻ҙͯ͠Δ Θ͚Ͱ͸ͳ͍ • ͦΜͳສೳͳEasy͸ଘࡏ͠ͳ͍

Slide 31

Slide 31 text

Rails ͱ େن໛։ൃ

Slide 32

Slide 32 text

Rails ͱ େن໛։ൃ • جຊతʹ͸ "தن໛" ·ͰͷΞϓϦέʔγϣϯ Λߴ଎ʹ࣮૷͢Δͷʹ޲͍͍ͯΔ • େن໛ʹͳΔͱ೉͘͠ͳΔଆ໘͋Γ • ੩తܕ෇͚, ϞδϡʔϧԽ, Dependency Injection, Event sourcing ͷ࢓૊ΈͳͲ͸ͳ͍

Slide 33

Slide 33 text

Rails Λ֦ு͢Δʁ • Service Object, Form Object • Decorator • Trailblazer • ...

Slide 34

Slide 34 text

Rails Λ֦ு͠ͳ͍ • ͋Δఔ౓ͷൣғ·Ͱ͸ Rails ( + PlainͳΫϥ ε ) Ͱ͏·͘΍Γ • Rails Ͱ͏·͘΍ΕΔൣғΛӽ͖͑ͯͨΒɺ αʔϏεΛ෼ׂ͍ͯ͘͠ɺͱ͍͏ߟ͑ํ

Slide 35

Slide 35 text

ྫ: Πϕϯτιʔγϯά • ୯ҰͷRailsαʔϏε಺ͰΠϕϯτιʔγϯά ͢ΔͱɺͦΕͳΓʹ໰୊͕ى͖΍͍͢ • ActiveRecordͷcallbackΛ࢖͏ͱɺҙਤͤͣ ʹൃಈ͢Δ໰୊͕ى͖͕ͪ • transaction ͷൣғ͸ʁ

Slide 36

Slide 36 text

Ұͭͷߟ͑ํ • ୯ҰͷRailsαʔϏε಺Ͱ͸ɺΠϕϯτιʔγϯά͠ͳ͍ (callback͸͘͝ݶఆత༻్Ͱ) • ͦͷ͔ΘΓɺ୯ҰαʔϏε಺ͷtransaction͸୲อ͢Δ • ෳ਺αʔϏεؒ͸Πϕϯτιʔγϯά͠ɺ݁Ռ੔߹ੑΛ ୲อ͢Δ • ྫ͑͹ GCPͷ Cloud Pub/Sub ࢖͏

Slide 37

Slide 37 text

ϝϦοτΛड͚Δ͜ͱͱɺ σϝϦοτ΁ͷରॲ • ݸผσϓϩΠ, ো֐ہॴԽ, ݸผεέʔϦϯά ͳͲͷԸܙΛಉ࣌ʹड͚Δ • ෼ࢄΩϡʔ, ෼ࢄτϨʔγϯά, etc... ͷۤ͠Έ Λड͚Δ • ͜ΕΛࢧ͑ΔΤίγεςϜ͸ݱࡏඇৗʹ੝Γ ্͕͍ͬͯΔ

Slide 38

Slide 38 text

Rails ͱ γεςϜ෼ׂ

Slide 39

Slide 39 text

γεςϜ෼ׂͷ؍఺ • جຊతʹRailsαʔϏε͕Ͱ͔͘ͳΔͱਏ͍ͷͰɺԿ Β͔ͷ෼ׂͨ͘͠ͳΔ (ͱ͜͜Ͱ͸Ծఆ͢Δ) • ٕज़తͳ؍఺ʹԊͬͯ෼ׂ͢Δਓ͕ଟ͍ • ؅ཧը໘Railsɺόον༻Railsɺetc... • ϚΠΫϩαʔϏεͰ͸ɺϏδωευϝΠϯʹͦͬͯ ෼ׂ͢Δ

Slide 40

Slide 40 text

Α͋͘ΔγφϦΦ • αʔϏεͷϦϦʔεͱ؅ཧը໘ͷϦϦʔε͸෼཭͍ͨ͠ Ͷɾɾɾ • ؅ཧը໘༻ͷRails͕ര஀ • Shared Database Pattern ΍ Shared ORM Pattern (෼அ͞ ΕͨϞϊϦε) • ςʔϒϧͷεΩʔϚมߋͳͲ͕͓ޓ͍ʹӨڹ͢ΔΑ͏ʹ ͳͬͯਏ͍

Slide 41

Slide 41 text

Α͋͘ΔγφϦΦ • ؅ཧը໘Λ෼཭͍͚ͨ͠Ͳɺڞ༗DB͸Ξϯν ύλʔϯͩΑͶɾɾɾ • ؅ཧը໘͸Single Page AppͰ࡞Δ • ؅ཧը໘޲͚ͷAPIΛ͕Μ͹ͬͯ։ൃ͢Δ • ͦΕ͸ Rails ΤϯδχΞͷຊ๬ͩͬͨͷ͔...?

Slide 42

Slide 42 text

Rails ͷྑ͞Λੜ͔͍ͨ͠ • View·ͰαΫοͱศརʹ࡞ΕΔͷ͕Railsͷྑ ͞͡Όͳ͍͔ • ؅ཧը໘ΛSPAʹ෼཭ͱ͔ɺࢷΛམͱͨ͠ ύοαύαͷRailsͰ͸...

Slide 43

Slide 43 text

ϏδωευϝΠϯͰ෼ׂ͠Α͏ • ϏδωευϝΠϯͷڥքΛݟ͚ͭΑ͏ • Domain-Driven Design ͷग़൪ • ͦͷڥքʹԊͬͯ෼ׂ͠Α͏ • ͦͷ͔ΘΓɺ؅ཧը໘·Ͱ֤αʔϏεͰఏڙ ͠Α͏

Slide 44

Slide 44 text

؅ཧը໘ͷ౷߹͸ʁ • ͜ͷํ๏ʹ͢Δͱɺ؅ཧը໘͕ࢄΒ͹Δ • ΞΧ΢ϯτ • σʔλͷ౷߹ • UIͷ౷߹/౷Ұײ

Slide 45

Slide 45 text

ΞΧ΢ϯτͷ౷߹ • SAML ౳ͷඪ४ٕज़Λར༻ͨ͠ Single Sign-onΛ࣮૷ ͢Δ (language-agnostic) • ͦͷ্ͰɺRailsʹ޲͚ͨศརͳํ๏΋༻ҙ͢Δ • ྫ͑͹ɺ Rails Engine ͷgemΛಋೖ͢Δ͚ͩͰͰ͖ ΔΑ͏ʹ͢Δ • ඪ४ + ศརϥΠϒϥϦͷೋஈߏ͑

Slide 46

Slide 46 text

σʔλͷ౷߹ • લఏͱͯ͠ɺσʔλΛ౷߹ͯ͠ѻ͏͜ͱʹ͸ σϝϦοτ΋͋Δ • ݸਓͷηϯγςΟϒͳ৘ใͷΞΫηείϯ τϩʔϧ͕೉͘͠ͳΔ

Slide 47

Slide 47 text

σʔλͷ౷߹ • ࠷௿ݶͷ৘ใ͸APIͰ࿈ܞ͢Δ • ৔߹ʹΑͬͯ͸ڞ༗DB (֎͔Β͸ Read Only) • εΩʔϚมߋͰ؅ཧը໘͕յΕΔՄೳੑ͕ ͋Δ͕ɺ਺೔ͷμ΢ϯλΠϜ͕ڐ͞ΕΔͳ ΒͦΕͰ΋͍͍

Slide 48

Slide 48 text

UIͷ౷߹ • ϦϯΫू΍ɺڞ௨ͷϔομʔ͕͋Ε͹ڐ͞Ε ΔͳΒͦΕͰ͍͍ • ແཧͯ͠౷߹͢Δͱେม • ෳ਺ͷαʔϏεͷίϯϙʔωϯτΛɺ΋ͬͱ ߴ౓ʹ౷߹ɾ࿈ܞ͍ͯ͘͠ʹ͸ɾɾɾʁ

Slide 49

Slide 49 text

Micro Frontends • ͜ͷಓΛಥ͖٧Ί͍ͯ͘ͱ Micro Frontends
 ͱ͍͏ΞʔΩςΫνϟʹͳ͍ͬͯ͘ • ֤αʔϏε͕ Web Components Λఏڙ͠ɺ
 ౷߹ϨΠϠʔ͕ͦΕΒΛ഑ஔ͢Δ • ֤Component͸ΠϕϯτͳͲͰڠௐͯ͠ಈ͘

Slide 50

Slide 50 text

No content

Slide 51

Slide 51 text

No content

Slide 52

Slide 52 text

ྲྀΕͷ͓͞Β͍ • ϏδωευϝΠϯͰ෼ׂ͢Δ (ίϯηϓτ) • αʔϏε෼ׂΛߦ͍ͳ͕Β΋ɺ
 ؅ཧը໘͕؆୯ʹͭ͘ΕΔ (ϝϦοτ) • ؅ཧը໘ͷମݧ౳͕෼ׂ͞ΕΔ (σϝϦοτ) • ؅ཧը໘ͷ౷߹ΛɺඞཁʹԠͯ͡
 ஈ֊తʹߦ͍ͬͯ͘ (ΤίγεςϜͷࢧԉ)

Slide 53

Slide 53 text

఻͍͑ͨ͜ͱ • ʮϏδωευϝΠϯͰ෼ׂ͢Δʯ
 = ίϯηϓτ • ͦΕʹΑΓϝϦοτ͕ಘΒΕΔ • ͦͷίϯηϓτͷ΋ͱʹΤίγεςϜ͕ൃల ͠ɺಓ͸੔උ͞Ε͍ͯ͘

Slide 54

Slide 54 text

FiNC ❤ Micro Frontends • Micro Frontends ͷಓ͸զʑ͕ઌಋ͢Δ • ຊ౰ʹඞཁͱ͍ͯ͠Δ͔Β΍Δ • ΋ͪΖΜɺ୭΋͕ඞཁͱ͢ΔΞʔΩςΫνϟͰ ͸ͳ͍ • େࣄͳͷ͸ɺઌʹਐΈ͍ͨͱ͖ͷಓ͕͋Δ͜ͱ

Slide 55

Slide 55 text

͔͜͜Β͸ࡶଟͳ࿩

Slide 56

Slide 56 text

Rails ͱ Ϋϥ΢υαʔϏε

Slide 57

Slide 57 text

Rails ͱ Ϋϥ΢υαʔϏε • Web αʔϏεͷकඋൣғͷ֦େ • ྫ͑͹ IoT ͷձࣾ => AWS IoT ͱͦͷपลͷ ϚωʔδυαʔϏεΛϑϧ׆༻͍ͨ͠ • ͚ͩͲɺWebαʔϏε΍ϞόΠϧΞϓϦ޲͚ API͸ Rails Ͱఏڙ͍ͨ͠

Slide 58

Slide 58 text

ΞʔΩςΫνϟͷҰྫ • Web αʔϏε͸ Rails • AWS ޲͚ʹ͸ Serverless Framework Λར༻͢Δ • ࣮ଶͱͯ͠͸ AWS Lambda ʹσϓϩΠ͞ΕΔ • ϝϦοτ • Web API ΍ SNS/SQSͰͷΠϕϯτͳͲɺ࿈ܞΛ͢Δͷ͕؆୯ʹग़དྷΔʂ • AWS IoT ΍ DynamoDB ͳͲͷ௿ϨϕϧͳίϯϙʔωϯτΛ Rails ͕ҙࣝ ͠ͳ͍Ͱྑ͘ͳΓɺૄ݁߹ʹͳΔ

Slide 59

Slide 59 text

ٕज़ҟ࣭ੑ / Language-agnostic

Slide 60

Slide 60 text

Language-agnostic • ϓϩάϥϛϯάݴޠʹඇґଘͳٕज़બఆ • ྫ: Sidecar Pattern (Envoy ͳͲ)

Slide 61

Slide 61 text

"ඪ४"΁ͷҙࣝ • ݴޠඇґଘͳ෦෼Λଟ͘࢒͢બ୒
 => ٕज़ͷඪ४ੑʹҙ͕ࣝ޲͘ • ٕज़બఆʹ͓͚Δɺࢹ఺ͷ޿͕Γ

Slide 62

Slide 62 text

ྫ: Web API ࢓༷ • Web API ΛͲͷΑ͏ͳܗࣜͰఏڙ͢Δ͔? • RESTful + JSON + OpenAPI • RESTful + ಠࣗϑΥʔϚοτ + JSON + Open API • JSON API (RESTfulͳAPIͷҰͭͷ࢓༷) • Netflix/fast_jsonapi : JSON API ܗࣜΛαϙʔτ͢Δgem • GraphQL + JSON • gRPC + Protocol Buffers

Slide 63

Slide 63 text

ྫ: Web API ࢓༷ • ΋ͪΖΜɺ།Ұͷ౴͑͸ͳ͍͕… • ͲͷΑ͏ͳࢹ఺Λ΋ͬͯબఆ͢Δ͔ • ໨ͷલͷ՝୊ʹରॲ͢Δ͜ͱ͸ɺ
 ΋ͪΖΜେࣄ͕ͩ • ଞݴޠͰ΋࣮૷Ͱ͖Δ͔ʁͱ͍͏ࢹ఺Λ΋ͭ

Slide 64

Slide 64 text

ྫ: Web API ࢓༷ • RESTful + OpenAPI ͳΒɺ࠷ѱOpenAPI͕ඇରԠͷݴޠΛ ࢖ͬͯ΋μϝʔδ͕গͳ͍ • ಠࣗϑΥʔϚοτ΍ࣗલϥΠϒϥϦΛఆٛ͗͢͠Δͱɺଞͷݴ ޠʹߦͬͨͱ͖ʹ͖͍ͭΑͶ.. • JSON API, GraphQL, gRPC • ίϛϡχςΟͷαϙʔτঢ়گ͸Ͳ͏͔ʁ • ࠷ѱɺࣗ෼Ͱ࣮૷ͨ͠ΓOSSߩݙͰ͖ΔϨϕϧ͔ʁ

Slide 65

Slide 65 text

"ඪ४" ΁ͷؔ৺ • ඪ४Խ΍ίϛϡχςΟαϙʔτʹର͢Δؔ৺ ͸ɺٕज़తͳ੒௕Λଅ͢ɺͱ͍͏Ծઆ

Slide 66

Slide 66 text

·ͱΊ

Slide 67

Slide 67 text

·ͱΊ • ·ͱ·Γ·ͤΜͰͨ͠ɺ͝ΊΜͳ͍͞ • ׬શͳΔྗྔෆ଍ • ࿦ཧͷཪ෇͚΋গͳ͔ͬͨ... • λΠτϧͰ௼ͬͯ͢Έ·ͤΜͰͨ͠...͢Έ·ͤ Μ͢Έ·ͤΜ...

Slide 68

Slide 68 text

ݴ͍͔ͨͬͨ͜ͱ • "ϚΠΫϩαʔϏε" ͱ͍͏ݴ༿ʹଉۤ͠͞Λײͨ͘͡ͳ ͍ɾײͯ͡΄͘͠ͳ͍ • RailsΤϯδχΞʹ "ࣗ෼ʹ͸ϚΠΫϩαʔϏε͸ؔ܎ͳ͍" ͳΜͯࢥͬͯ΄͘͠ͳ͍ • খ͞ͳ૊৫Ͱ΋ϚΠΫϩαʔϏεΛҙ͍͍ࣝͯ͠ • "ϚΠΫϩαʔϏε΍ͬͯ·͢" ͬͯݴͬͨΒୟ͔ΕΔੈͷ த͸·ͬͽΒͩ

Slide 69

Slide 69 text

ݴ͍͔ͨͬͨ͜ͱ • ίϯηϓτΛཧղ͠ɺ͏·͘औΓೖΕΔͱ͜ Ζ͔Β࢝ΊΑ͏ • ΤίγεςϜΛ஌Γɺ
 ͏·͘৐Γ͜ͳͦ͏

Slide 70

Slide 70 text

"Microservices" Everywhere.