Serverless Meetup, London, December 5th, 2017
A quick summary of all serverless announcements from the AWS re:Invent 2017.
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.Serverless RecapD a n i l o P o c c i a , T e c h n i c a l E v a n g e l i s td a n i l o p @ a m a z o n . c o m@ d a n i l o pd a n i l o pL o n d o n , D e c e m b e r 5 t h 2 0 1 7
View Slide
W E L C O M E4 3 , 0 0 0 +attendees1 , 3 0 0 +technical sessions6 0 , 0 0 0 +live stream registrations
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.AWS Lambda Doubles Maximum Memory Capacityfor Lambda FunctionsYou can now allocate 3,008MB of memory to yourAWS Lambda functions. Previously, the maximumamount of memory available to your functions was1,536MB. Now, it's easier to process workloads withhigher memory or denser compute requirements,such as big data analysis, large file processing, andstatistical computations.AWS Lambda Introduces Enhanced ConsoleExperienceThe AWS Lambda console has been updated withenhancements and new features that improve theexperience of creating, configuring, testing, andmonitoring your Lambda functions.AWS Lambda Per Function Concurrency/ThrottleYou can now set a concurrency limit on individualAWS Lambda functions. The concurrency limit youset will reserve a portion of your account levelconcurrency limit for a given function. This featureallows you to throttle a given function if it reaches amaximum number of concurrent executions allowed.This is useful when you want to limit traffic rates todownstream resources called by Lambda (e.g.databases) or if you want to control the consumptionof elastic network interfaces (ENI) and IP addressesfor functions accessing a private VPC..NET Core 2.0 language support (pre-announce)…and GoAWS Lambda
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.AWS CloudTrail Adds Logging of Execution Activityfor AWS Lambda FunctionsYou can now log the execution activity of your AWSLambda functions with AWS CloudTrail Lambda dataevents. Previously, you could only log Lambdamanagement events, which provide information onwhen and by whom a function was created,modified, or deleted. Now, you can also recordLambda data events and get additional details onwhen and by whom an Invoke API call was made andwhich Lambda function was executed.Support for Serverless Deployments in AWSCodeDeployYou can now use AWS CodeDeploy to deploy AWSLambda functions. CodeDeploy helps you automatethe testing, rollout and, if necessary, rollback ofLambda functions. This will help you reduce risksassociated with updating Lambda functions.AWS Lambda
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.New Deployment Optionsfor AWS Lambda FunctionsYou can now shift incomingtraffic between two AWSLambda function versionsbased on pre-assignedweights. This allows you togradually shift trafficbetween two versions,helping you reduce the riskand limit the blast radius ofnew Lambda deployments.You can now also use AWSCodeDeploy toautomatically manage therollout of new functionversions.Gradual Code DeploymentResources:MyLambdaFunction:Type: AWS::Serverless::FunctionProperties:Handler: index.handlerRuntime: nodejs4.3CodeUri: s3://bucket/code.zipAutoPublishAlias: liveDeploymentPreference:Type: Canary10Percent10MinutesAlarms:# A list of alarms that you want to monitor- !Ref AliasErrorMetricGreaterThanZeroAlarm- !Ref LatestVersionErrorMetricGreaterThanZeroAlarmHooks:# Validation Lambda functions that are run# before & after traffic shiftingPreTraffic: !Ref PreTrafficLambdaFunctionPostTraffic: !Ref PostTrafficLambdaFunctionAWS LambdaDeployment Preference TypeCanary10Percent30MinutesCanary10Percent5MinutesCanary10Percent10MinutesCanary10Percent15MinutesLinear10PercentEvery10MinutesLinear10PercentEvery1MinuteLinear10PercentEvery2MinutesLinear10PercentEvery3MinutesAllAtOnce
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.Increased the limits for Lambda@Edge functionsYou can choose up to 1536MB of memory, deploylarger packages up to 50MB, and implementLambda@Edge functions with longer timeouts, up to30 seconds.Advanced response generationNow with support for binary responses (such asimages) and higher Lambda function limits, you canmove more complex logic to the edge than waspossible previously.Network calls on viewer-facing eventsIn addition to the remote network calls from origin-facing CloudFront events, Lambda@Edge nowsupports remote network calls from viewer-facingCloudFront events. For instance, you can now makeremote calls to your authentication servers to verifyuser-privilege levels and serve premium vs. non-premium content based on what each user isauthorized for.Lambda@Edge (Nov 21, 2017)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.Content-based dynamic origin selectionPreviously with Lambda@Edge, you could onlyforward requests to a pre-defined origin that youconfigured for your CloudFront distribution. Nowyou can front multiple backend origin applicationservices with Amazon CloudFront and useLambda@Edge to route requests to the appropriateorigin dynamically, based on the attributes of therequest.Lambda@Edge (Nov 21, 2017)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.AWS Greengrass has three new featuresFirst, AWS Lambda functions running on GreengrassCore devices can natively interact with thecapabilities of the underlying host device.Second, Greengrass can now also use the popularindustrial messaging protocol OPC-UA.Third, you can now remotely update the GreengrassCore software to take advantage of new features,bug fixes and security enhancements.AWS Greengrass ML Inference PreviewAWS Greengrass ML inference lets you deploy andrun ML inference locally on connected devices. Doinginference on connected devices reduces the latencyand cost of sending device data to the cloud to makea prediction. Rather than sending all data to thecloud for ML inference, ML inference is performedright on devices and data is sent to the cloud onlywhen it requires more processing.AWS Greengrass
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.API Gateway Canary Release DeploymentsYou can now use canary release deployments togradually roll out new APIs in Amazon API Gateway.This helps you more safely roll out API changes andlimit the blast radius of new deployments.Using the new stage-level settings for canaries, youcan set the percentage of API requests that ishandled by new API deployments to a stage. You canalso define new stage variables with the canarysettings.When canary settings are enabled for a stage, APIGateway will generate an additional AmazonCloudWatch Logs group and CloudWatch metrics forthe requests handled by the canary deployment API.API Gateway Private VPC IntegrationsYou can now provide access to HTTP(S) resourceswithin your Amazon Virtual Private Cloud (VPC)without exposing them directly to the publicInternet. You can use API Gateway to create an APIendpoint that is integrated with your VPC.Amazon API Gateway Supports Regional APIEndpoints (Nov 2, 2017)You can now choose from two types of API endpointswhen creating REST APIs and custom domains withAmazon API Gateway. A regional API endpoint is anew type of endpoint that is accessed from the sameAWS region in which your REST API is deployed.The second type of API endpoint is the edge-optimized API. Edge-optimized APIs are endpointsthat are accessed through a CloudFront distributionthat is created and managed by API Gateway.Amazon API Gateway
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.The AWS Serverless Application Repository, nowavailable in Preview, is a collection of serverlessapplications published by developers, companies,and partners in the serverless community. Now,customers can easily discover, deploy, and publisheverything from code samples and components forbuilding web and mobile applications to back-endprocessing services and complete applications.AWS Serverless Application Repository Preview
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.AWS Cloud9 is acloud-baseddevelopmentenvironment (IDE)that lets you write,run, and debugyour code with justa browser.It includes a codeeditor, debugger,and terminal.It is integrated inthe new enhancedAWS Lambdaconsole.AWS Cloud9
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.Amazon Simple Notification Service (SNS)Introduces Message Filtering (Nov 22, 2017)You can now use message filtering on AmazonSimple Notification Service (SNS) to build simplerand more streamlined pub/sub architectures.Message filtering enables Amazon SNS topicsubscribers to selectively receive only a subset of themessages they are interested in, as opposed toreceiving all messages published to a topic. This newapproach removes the design complexity ofimplementing message filtering logic in yoursubscribers, or message routing logic in yourpublisher systems.Amazon SNS
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.Amazon DynamoDB Global TablesGlobal Tables builds upon DynamoDB’s globalfootprint to provide a fully managed multi-region,multi-master global database that provides fastlocal read and write performance for massivelyscaled applications with globally dispersed users.Global Tables handles the difficult work ofautomatically replicating data between regions andresolving update conflicts, enabling developers tofocus on the application logic when building globallydistributed applications.Amazon DynamoDB On-Demand BackupOn-Demand Backup allows you to create full backupsof your DynamoDB tables data and settings for dataarchival, helping you meet your corporate andgovernmental regulatory requirements. You canbackup tables from a few to hundreds of terabytes ofdata instantaneously, with no impact on performanceand availability to your production applications.Amazon DynamoDB
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.Sign Up for the Preview of Amazon AuroraServerlessThis new serverless mode will save you time andmoney by automatically adjusting database capacityto match your application needs. The preview will beavailable for the MySQL-compatible edition ofAmazon Aurora.Stay tuned for more information about AmazonAurora Serverless in early 2018. Our current plan isto make it available in production form with MySQLcompatibility in the first half, and to follow up withPostgreSQL compatibility later in the year.Amazon Aurora Serverless Preview
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.Amazon S3 Select PreviewMost applications have to retrieve the complete setof objects and then filter out just the required data.With Amazon S3 Select, applications can offload theheavy lifting of filtering and accessing data insideobjects to the Amazon S3 service to retrieve only asubset of data from an S3 object instead ofretrieving the entire object. By reducing the volumeof data that has to be loaded and processed by youranalytics applications, S3 Select can improve theperformance of most applications that frequentlyaccess data from S3 by up to 400%.Amazon Glacier SelectAmazon Glacier Select is a new way to query archiveddata in Amazon Glacier. Amazon Glacier Select allowsqueries to run directly on data stored in AmazonGlacier, retrieving only the data you need out of yourarchives to use for analytics. This allows you toreduce total cost of ownership while massivelyextending your data lake into cost-effective archivestorage.Amazon S3 & Amazon Glacier
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.Amazon Kinesis Video Streams makes it easy tosecurely stream video, audio, and other time-encoded data from sources like cameras, RADARs,thermal sensors, and other connected devices toAWS for machine learning (ML), analytics, and more.Amazon Kinesis Video Streams
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.AWS AppSync is a fully managedserverless GraphQL service for real-time data queries, synchronization,communications and offlineprogramming features.AWS AppSync automatically updatesthe data in web and mobileapplications in real time, andupdates data for offline users assoon as they reconnect. AppSyncmakes it easy to build collaborativemobile and web applications thatdeliver responsive, collaborativeuser experiencesYou can use AWS AppSync to buildnative mobile and web apps withiOS, Android, JavaScript and ReactNative.AWS AppSync Preview
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.Advanced Security Features for Amazon CognitoAdvanced security features for Amazon Cognitoenable you to secure access to your applicationsusing risk-based adaptive authentication andcompromised credentials protection. When AmazonCognito detects unusual sign-in activity, such assign-in attempts from new locations and devices, itprompts users for additional verification.AWS Mobile Hub redesigned console (Nov 21, 2017)With the redesigned console, a project now allowsusers to define four different app platforms for theirbackend. This means developers can configurebackend features like User Sign-in once, andintegrate it with an iOS, Android, Web, and ReactNative app, all through the console.AWS Amplify, a declarative JavaScript library forcloud development with mobile or webapplications (Nov 21, 2017)The AWS Amplify library modules are broken downinto categories (Auth, Analytics, Storage, APIs,Caching) to quickly add features such as UserSignUp/SignIn, MFA, tracking or metric analytics,content management or Serverless API integration.There are components and extensions for React andReact Native.AWS Mobile CLI (Nov 21, 2017)With the new AWS Mobile CLI developers have acomprehensive CLI experience for building projects.This experience includes creating serverless back-ends with AWS Lambda, allowing you to inject cloudfunctionality into an existing project. The Amplifylibrary then allows common configuration from thisprocess to be consumed for usage in a single line ofcode.AWS Mobile & Amazon Cognito
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.AWS Elemental MediaConvertAWS Elemental MediaConvert is a service thatformats and compresses offline video content fordelivery to televisions or connected devices. High-quality video transcoding makes it possible to createon-demand video assets for virtually any device.AWS Elemental MediaPackageAWS Elemental MediaPackage is a service thatperforms just-in-time packaging for cost-effectivevideo distribution. Enrich video experiences withtime-shifted TV and other advanced features whilesecuring valuable content and reducing storagecosts.AWS Elemental MediaStoreAWS Elemental MediaStore is a high-performancestorage service paired with the security anddurability of Amazon S3 that is optimized to handlehigh frequency requests for video data.AWS Elemental MediaLiveAWS Elemental MediaLive is a service that lets youencode broadcast-grade live video for televisions orconnected devices. Quickly stand up broadcastchannels or live events and scale them as neededwith the push of a button.AWS Elemental MediaTailorAWS Elemental MediaTailor is a service that makes iteasy to insert targeted advertising into streamingvideo at scale. By personalizing content, you canincrease viewer engagement and boost videomonetization.New Media Services
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.Amazon Rekognition VideoAmazon Rekognition Video is a deep learningpowered video analysis service that tracks people,detects activities, and recognizes objects, celebrities,and inappropriate content. Amazon RekognitionVideo can detect and recognize faces in live streams.Rekognition Video analyzes existing video stored inAmazon S3 and returns specific labels of activities,people and faces, and objects with time stamps soyou can easily locate the scene. It can also performfacial recognition on live video from Amazon KinesisVideo Steams. For people and faces, it also returnsthe bounding box, which is the specific location ofthe person or face in the frame.Amazon ComprehendAmazon Comprehend is a natural languageprocessing (NLP) service that uses machine learningto find insights and relationships in text. AmazonComprehend identifies the language of the text;extracts key phrases, places, people, brands, orevents; understands how positive or negative thetext is; and automatically organizes a collection oftext files by topic. You can use the AmazonComprehend APIs to analyze text and use the resultsin a wide range of applications including voice ofcustomer analysis, intelligent document search, andcontent personalization for web applications.New API-driven Machine Learning Services
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.Amazon Transcribe PreviewAmazon Transcribe is an automatic speechrecognition (ASR) service that makes it easy fordevelopers to add speech-to-text capability to theirapplications. Using the Amazon Transcribe API, youcan analyze any audio files stored in a commonformat (WAV, MP3, etc.) in Amazon Simple StorageService (S3) and have the service return a text file ofall the transcribed speech.Amazon Translate PreviewAmazon Translate is a neural machine translationservice that delivers fast, high-quality, andaffordable language translation. Neural machinetranslation is a form of language translationautomation that uses machine learning and deeplearning models to deliver more accurate and morenatural sounding translation than traditionalstatistical and rule-based translation algorithms.Amazon Translate allows you to easily translate largevolumes of text efficiently, and to localize websitesand applications for international users.New API-driven Machine Learning Services
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.Amazon Sumerian lets you create and run virtualreality (VR), augmented reality (AR), and 3Dapplications quickly and easily without requiring anyspecialized programming or 3D graphics expertise.With Sumerian, you can build highly immersive andinteractive scenes that run on popular hardwaresuch as Oculus Rift, HTC Vive, and iOS mobiledevices.Amazon Sumerian Preview
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.Alexa for Business is an AWS service thatmakes it easy for you to empower yourorganization with Alexa by giving youremployees their own intelligent assistantfor work. Alexa for Business gives you thetools to manage Alexa for your organization– at scale.Alexa for Business
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.…and lots more!https://aws.amazon.com/new/reinvent/