Slide 1

Slide 1 text

WHAT HAS CHANGED IN THE WORLD OF SERVERLESS AT RE:INVENT 2018?? MASASHI TERUI @ JAWS-UG NAGOYA 2018.12.12

Slide 2

Slide 2 text

SERVERWORKS CO.,LTD. + FREELANCER • Serverless Oji-san • Serverless Framework Plugin Developer • Serverlessconf Tokyo 2016,2017,2018 speaker • Remote worker (in Sapporo-shi, Hokkaido) • http://marcy.hatenablog.com/entry/2018/08/04/231241 MASASHI TERUI ARCHITECT / DEVELOPER

Slide 3

Slide 3 text

ࡳຈ͔Βདྷ·ͨ͠ ؾԹ͕ࠩϠόΠ͆ʢ-10℃ → 10℃ʣ ※Πϝʔδը૾Ͱ͢ ※ࠓேͷ༷ࢠͰ΋ͳ͚Ε͹ɺੴङࢢʢྡͷࢢʣͰڈ೥ࡱͬͨࣸਅͰ͆͢

Slide 4

Slide 4 text

CEO Andy Jassy(3೔໨): Ұൠ޲͚ϝοηʔδ CTO Werner Vogels(4೔໨): ։ൃऀ޲͚ϝοηʔδ re:Inventͷkeynote͸ʢಛʹࠓ೥͸͜ͷ৭͕ڧ͍ʣ

Slide 5

Slide 5 text

׬શʹSERVERLESSਪ͠ 2೔໨ΩʔϊʔτͰͷΞοϓσʔτ͸ શͯServerlessؔ࿈

Slide 6

Slide 6 text

• Lambda Layers • Custom Runtime API • Step Function Service Integrations • DynamoDB Transactions • DynamoDB On-Demand • WebSocket support for API Gateway • Amplify Console • Cloud Map
 ※ݸਓతʹΠϯύΫτ͋Δͱࢥͬͨ΍͚ͭͩநग़ͯ͠·͢ Serverlessؔ࿈ͷϦϦʔε

Slide 7

Slide 7 text

• ڞ௨ϥΠϒϥϦஔ͖৔ͱͯ͠͸ਖ਼௚Ͳ͏ͳΜͩΖ͏ײ • ֤ݴޠͷඪ४తͳϥΠϒϥϦ؅ཧʹ৐ͬͨํ͕ྑ͘ͳ͍ʁ • LayerͷॏͶॱΛอͭͨΊʹஞ࣍ॲཧ͞ΕΔ͔ΒSpin Up͕ଟগ஗͘ͳΔΒ͍͠͠(ݱঢ়) • ΞϓϦέʔγϣϯͱϥΠϑαΠΫϧͷҟͳΔ
 ӡ༻༻్ͷϥΠϒϥϦͱ͔͸ྑ͍࢖͍ํͩͱࢥ͏ • https://www.datadoghq.com/blog/datadog-lambda-layer/ • ಡΈࠐΈઐ༻σʔλஔ͖৔ͱͯ͠༗༻ • ڞ௨ઃఆϑΝΠϧͱ͔ࣙॻσʔλͱ͔ • ΋͏ͪΐͬͱ༰ྔ(250MB)૿͑Δͱྑ͍Μ͚ͩͲͳʔ|шƅ)ŧŽŕ Lambda Layers

Slide 8

Slide 8 text

• ެࣜʹແ͍ͩ͜ΘΓͷݴޠ͕࢖͍͍ͨΈ͍ͨͳਓʹ͸ྑ͍ʢCOBO…͍΍ͳΜͰ΋ͳ͍Ͱ͢ • ެࣜͰྑ͍΍੎తʹ͸͜ΕࣗମΛ࢖͏͔͍ͬͯ͏ΑΓAPI͕ެ։͞Εͨ͜ͱ͕େ͖͍ • ެࣜͷAPIͱ͸ҧ͏ • ಉ࣌ʹग़ͨRuby͸Ұॹ • ଞ͸ݴޠʹΑͬͯ͸࠷దԽͯ͠Δ͔ΒͪΐͬͱϨΠςϯγʹ͕ࠩ͋Δ͔΋ͬͯݴͬͯͨ • Herokuͷbuildpackײ͋Δ • PaaSͬΆ͘࢖͏ͷ΋࠷ૣΞϦͰ͸ • ΋͏ͪΐͬͱ༰ྔ(250MB)૿͑Δͱྑ͍Μ͚ͩͲͳʔ|шƅ)ŧŽŕ Custom Runtime API

Slide 9

Slide 9 text

• Lambdaͷ࣮૷ݮͬͯศརʂʂ • ಛʹ֎෦ೖྗ͕DynamoDBʹೖͬͯ͘Δ·Ͱϧʔϓ͢Δ΍ͭͱ͔ • ΋͸΍States Language͚ͩͰΞϓϦ࡞Εͦ͏ʢ΍Βͳ͍͚Ͳ͆ʣ Step Function Service Integrations

Slide 10

Slide 10 text

• DynamoDBͰ།Ұେมͩͬͨॴ͕ແ͘ͳͬͨʂʂ • Kinesis StreamsʹҰ୴ೖΕͯ௚ྻԽͱ͔΍Βͳͯ͘Α͘ͳΔ • https://speakerdeck.com/marcyterui/lets-become-the-master-of-dynamodb-data- modeling-to-become-the-master-of-serverless?slide=45 • Ͱ΋ɺςʔϒϧލ͛ΔτϥϯβΫγϣϯ͔ͩΒͬͯ
 RDBΈ͍ͨʹਖ਼نԽͯ͠ྑ͍ͬͯצҧ͍ͪ͠ΌμϝͰ͔͢ΒͶʁʁ • جຊతͳઃܭํ਑͸มΘΒͳ͍ • ৄ͘͠͸ʮDynamoDB ދͷרʯͰݕࡧ DynamoDB Transactions

Slide 11

Slide 11 text

• DynamoDB΋͍ͭʹServerlessͷ஥ؒೖΓͰ͢Ͷʂʁʂʁ • ※CNCFͷServerlessఆٛͰ͸ʮΩϟύγςΟͷࣄલ༧໿ෆཁʯͱ͋Δ • τϥϑΟοΫมಈ͕ܹ͍࣌͠ʹͱͯ΋༗ޮͰ͢Ͷ • Auto Scaling͸ϕʔεͷCapacity͕ͦΕͳΓʹແ͍ͱ্ख͍͜ͱ͍͔ͳ͍ • ߃ৗతʹτϥϑΟοΫ͕ಡΊΔ৔߹͸ߴͭ͘͘ͷͰ஫ҙ • ࠷ॳ͸On-DemandͰ࣮ଌ஋ݟͯ༧໿͢Δͱ͔͢Δͱྑͦ͞͏ • ಺෦తͳPartition෼ׂͱ͔ಉ͡͸ͣͩͱࢥͬͯΔ͚ͲͲ͏ͳΜ DynamoDB On-Demand

Slide 12

Slide 12 text

• AppSync͕ग़͔ͨΒདྷͳ͍ͷ͔ͱࢥͬͯͨ • StatefulͳWebSocketͷϋϯυϦϯάΛ
 StatelessͳLambdaͰͰ͖Δͷ͸ֵ໋͔΋͠Εͳ͍Ͱ͢Αʂʁ • 2017೥ͷre:InventͰAPI GatewayͷPMͱΈΜͳͰޠͬͨهԱ • ૹ৴/ड৴ͰFunction෼͚ΒΕΔͳΒΞπ͍ • Pollingͷ๾໓ɺͦͯ͠ਅͷEvent Driven Architecture΁…ʂʂ • ૣ͘དྷͯʂʂ WebSocket support for API Gateway

Slide 13

Slide 13 text

• ଧ౗Firebaseʂʂʢ͍ͬͯ͏ίϯηϓτͳͷ͔ͳͬͯʣ • FirebaseϗϯτΊͬͪΌָͳΜͰؤுͬͯ΄͍͠ • ࣗ༝౓΍֦ுੑ͸Amplify(ͱؔ࿈αʔϏε)ͷํ͕ߴ͍ͱࢥ͏ͷͰ • AppSyncͱAmplify͸ϑϩϯτΤϯυͷ৽ඪ४ʹͳΔͱ͸ࢥͬͯΔ Amplify Console

Slide 14

Slide 14 text

• ECS/EKS(ͱEC2)Ҏ֎ͷAWSαʔϏεͷ֤छϦιʔε΋
 HTTPϕʔεͳΒσΟεΧόϦͰ͖Δʂʂ • Ͱ΋ϨΠςϯγ͕՝୊ • ΫϦΞͰ͖Ε͹ServerlessͰ΋෦෼తͳCanary Releaseͱ͔
 Blue/Green Deploymentͱ͔ྑ͍ײ͡ʹͰ͖ΔΑ͏ʹͳΔ • http://blog.serverworks.co.jp/tech/2018/12/04/cloudmap-serverless-discovery/ Cloud Map

Slide 15

Slide 15 text

• (ී௨ͷ)ηογϣϯߦ͔ͳ͍ • Youtube, SlideshareͰݟΕΔ • Workshop, Hackathon, Chalk Talk͕Φεεϝ • ӳޠ࿩ͤͳͯ͘໎࿭͔͚ͯ΋2౓ͱ߹Θͳ͍֎ࠃਓͳΒྑ͘ͳ͍ʁ • AWSࣾһ͸͓٬͞Μ͔ͩΒ੿͍ӳޠͰ΋༏͘͠౴͑ͯ͘ΕΔ • ແཧʹηογϣϯͰΔ͘Β͍ͳΒฉ͖͍ͨ͜ͱΛฉ͍ͯΈΔ ͓·͚ʢre:Inventͷա͝͠ํʣ

Slide 16

Slide 16 text

THANKS!! WernerͷKeynote͸ະདྷΛ୲͏։ൃऀ΁ͷϝοηʔδ 2019೥͸Serverlessຊ֨ීٴͷ೥ͩʂʂ