SlideShare une entreprise Scribd logo
1  sur  37
Télécharger pour lire hors ligne
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Tom Myers, Sr. Cloud Architect, Accenture Cloud Platform
Matt Lancaster, Lightweight Architectures Global Lead
Accenture Cloud Platform
Serverless Journey
ARC202
November 29, 2016
What Makes an Offering a “Platform”
*Platform Ecosystems: Aligning Architecture, Governance, and Strategy, Amrit Tiwana, 2014, Section 1.2.
The common denominator
of all platforms
is that they facilitate
interactions between
distinct groups (the two
“sides”) that want to interact
with and need each other.*
What is the Accenture Cloud Platform?
Accenture Cloud Platform (ACP) offers clients an on-ramp to the cloud.
ACP provides
governance, analytics,
and services to support
the transition to and
provide ongoing
support of their cloud
journey.
ACP services enable
clients on one side, and
Accenture solution
providers on the other.
ACP has transitioned
over time from on-
premises data center,
to cloud virtual data
center, and is now
transitioning to
serverless platform.
How Does ACP Support its Ecosystem?
ACP
Accenture
Business
Groups
Clients
AWS
Service
Catalog
Development
Process
Why Serverless?
ACP is fundamentally a
collection of services
coordinated by an
orchestrator and
ordered via service
catalog.
A microservices
architecture – services
orchestrated and
interacting via APIs – is
well-suited for such an
offering.
A serverless design
can optimally host
highly available and
scalable microservices.
Why AWS?
The serverless options
available from AWS are
the most mature from
any cloud provider.
Scalability, availability,
reliability, performance
and other architectural
concerns are well-
addressed in AWS.
A number of good tools
exist to design and
deploy complex
microservices to the
AWS Cloud service
environment.
The Accenture AWS
Business Group is our
1-year old partnership
with Amazon Web
Services, to bring clients
the power of cloud
through AWS.
Ring 0
• Core Services
• APIs to support Ring 1+
• Continuous Delivery
Ring 1
• Applications/ Services
• Rely on Ring 0
• Agile Releases
Ring 2
• Client Applications/ Services
• Rely on Rings 0 & 1
• Client Control
ACP Ring Model
Serverless Architecture
Serverless Architecture
DNS Owned by Enterprise IT Dept.
Serverless Architecture
Global CDN
Serverless Architecture
Lambda execution with SNS, Redis,
Amazon Kinesis for communication
Serverless Architecture
DynamoDB, Amazon Redshift, Elasticsearch
for persistent storage
Serverless Architecture
Serverless Architecture
Components Accounts
• API Gateway
• Lambda
• Amazon ElastiCache for Redis
• DynamoDB, Amazon Redshift
• Amazon Kinesis & DynamoDB
Streams
• Elasticsearch
• SNS Topics/Subscriptions & SQS
• CloudWatch Logs
• CloudFront/S3
Flexible design allows components to be swapped
• Rings
– Core
– Apps
• Lifecycle
– Sandbox
– Dev
– Test
– Stage
– Prod
10 accounts with cross-account roles Core ⇄ Apps
DevOps Pipeline
DevOps Model
Continuous
Delivery
• Terraform + Apex
– CloudFormation didn’t fully support API G/W when we needed it
– Custom framework (code consistency, name checking, etc.)
• Solved a lot of the initial inherent complexity in Lambda and API G/W
deployment
• Higher-level abstraction for all infrastructure with simple config files to
generate Terraform
• Supports cross project & AWS account Terraform dependencies and stores
state on S3
• Accenture DevOps Platform
– We currently use BitBucket, Jenkins, Sonar
– Also supports Nexus, Kibana, Selenium, etc.
– Deploys via ACP as an automated stack
– https://github.com/Accenture/adop-docker-compose
Challenges
• CloudFormation
– Occasionally gets stuck requiring AWS Support to resolve
– Monitoring status and completion of stacks
– Diagnosing and fixing errors not always straightforward
– Verbose JSON format for large stacks at times unwieldy (even with
Troposphere) - YAML a welcome addition!!
• API Gateway
– Limited initial support in CloudFormation
– Overhead of creating large API Gateway definitions
– HTTP method mappings complex
– Recent enhancements such as Swagger import and passthrough will help a lot!
• Need to explicitly define all infrastructure, which gets complex at scale
– IAM roles, policies, Lambda functions & SNS/stream mappings, etc.
– Handled by custom framework
Lessons Learned
• Lightweight frameworks can allow greater flexibility
(e.g., AWS account per environment/stage)
• Pick a Lambda runtime – lots will work, but less reuse opportunities
• Operability and security must be considered and designed for
• Plan for upgrades ahead of time (e.g., Elasticsearch)
• Pay attention to limits (e.g. CloudWatch logs writes, batch size, and
message dates in batch events, DynamoDB read/write)
• Define Lambda logging conventions and how these fit into the
monitoring components (Elasticsearch/Kibana)
• Being an early adopter comes with risk and often requires workarounds
Benefits
• Deploy in minutes (no delay waiting for other teams)
– 10 deploys per day (or more)
– Deployment triggers on code-commit
• Bug fixes deploy more quickly with isolated functions and CD
• Use of custom framework allows for rapid creation of complex
components that use multiple AWS services
• Swagger provides rapid deployment of documentation
• API Gateway simplifies API versioning and deployments
Patterns
• Write functions in Lambda functions – design for parallel execution
– Small, idempotent routines
– Built in restart, retry
– Cache state (Redis, ElastiCache)
• Surface Lambda functions with API Gateway
– User Custom Domain Names and pathing to gather APIs together
– This enables independent build with a consistent experience
• Communicate with services
– SNS to send messages
– Amazon Kinesis to pass data
• Target storage to Elasticsearch
– Search queries are probably what you need anyway
• Persist data with DynamoDB
– Keep a date key (epoch) to partition and purge data
– Send backup to low cost storage
Hybrid Integration Example
Operations and Monitoring Example
The Future of Serverless Applications
Current State Future State
• Heavy use of the console to manage
different services
• Lambda is over-utilized
• Shoving existing code into Lambda
• No real system health visualizations
• Use a framework to manage resources
• Use platform services (e.g., velocity
templates, Amazon Kinesis streams) to
supplement Lambda
• Develop applications to ensure minimal
code deployments
• Use open source time series
visualization tool for operational
readiness
Don’t Use Lambda for Everything
• Consider the capabilities available within AWS first, and use Lambda
only when necessary
• Take advantage of Apache Velocity for transformations in the API
Gateway instead of using a Lambda function
• If data ingestion is required, consider using an AWS Proxy to Amazon
Kinesis for greater throughput and scalability
• Most AWS services expose a RESTful endpoint for an API Gateway
AWS proxy interaction
• Use Lambda where you need to execute business logic
Use Velocity Instead of Lambda for
Transformations
Use Streams to Optimize Throughput
stream Lambda function
• Using DynamoDB or Amazon Kinesis Streams allows bulk processing of data
• Tuning the EventSourceMapping BatchSize to just under 100 ms ensures that
you’re getting the greatest value from your Lambda functions
Be Nice to Your Lambda
• Use bundlers like Webpack or Browserify to ensure only required
dependencies are present in deployed Lambda functions.
• Ensure that no dev dependencies are being included in your packaged
Lambda functions.
• Lambda containers have the ability to persist across invocations. Make
sure to group multiple related methods in the same handler file to
increase invocation rate, in order to avoid cold boot delays.
• Instantiate persistent objects outside of methods to increase Lambda
execution performance during container reuse conditions.
Don’t Bother with CloudWatch for
Operations Metrics
• CloudWatch is not a realistic choice for enterprise operations metrics
• Dedicated time-series systems like Prometheus.io are a far better choice for
near real-time operations dashboards
CloudWatch Prometheusvs
Story Time!
Alexia – An Alexa Node.js Framework
Written in ES6
Speech assets generation
Cards support
Works with Lambda, Hapi,
Express
Build in state machine
Starter kit
Alexa Skill with Alexia Framework
const alexia = require('alexia');
const app = alexia.createApp();
app.intent('HelloIntent',
'Hello', () => {
return 'Hello from Alexia
app';
});
Interaction API
Demo Architecture
Echo Alexa
Skills Kit
Lambda
Handler
API
Gateway
Catalog API
“Aspirin has been added
to your cart. But I’ve
found interactions
between your medications.
Please consult with your doctor
or pharmacist”
Case Study – Pharmacy Advisor
Showcase modern architecture
principles and leverage from
Amazon Web Services
Case Study – Pharmacy Advisor
“Add Aspirin to my cart.”
“Aspirin has been added
to your cart. But I’ve
found interactions
between your medications.
Please consult it with your
doctor or pharmacist”
Demo Conversation
“Add Ibuprofen to my cart.”
“Ibuprofen has been added
to your cart.”
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Tom Myers
thomas.w.myers@accenture.com
@TomMyersACP
Visit us at the Accenture booth #829
Matt Lancaster
matthew.d.lancaster@accenture.com
@urnamma
Remember to complete
your evaluations!

Contenu connexe

Tendances

AWS re:Invent 2016: The State of Serverless Computing (SVR311)
AWS re:Invent 2016: The State of Serverless Computing (SVR311)AWS re:Invent 2016: The State of Serverless Computing (SVR311)
AWS re:Invent 2016: The State of Serverless Computing (SVR311)Amazon Web Services
 
AWS re:Invent 2016: Taking DevOps to the AWS Edge (CTD302)
AWS re:Invent 2016: Taking DevOps to the AWS Edge (CTD302)AWS re:Invent 2016: Taking DevOps to the AWS Edge (CTD302)
AWS re:Invent 2016: Taking DevOps to the AWS Edge (CTD302)Amazon Web Services
 
AWS re:Invent 2016: Monitoring, Hold the Infrastructure: Getting the Most fro...
AWS re:Invent 2016: Monitoring, Hold the Infrastructure: Getting the Most fro...AWS re:Invent 2016: Monitoring, Hold the Infrastructure: Getting the Most fro...
AWS re:Invent 2016: Monitoring, Hold the Infrastructure: Getting the Most fro...Amazon Web Services
 
(NET307) Pinterest: The road from EC2-Classic To EC2-VPC
(NET307) Pinterest: The road from EC2-Classic To EC2-VPC(NET307) Pinterest: The road from EC2-Classic To EC2-VPC
(NET307) Pinterest: The road from EC2-Classic To EC2-VPCAmazon Web Services
 
AWS re:Invent 2016: Develop, Build, Deploy, and Manage Containerized Services...
AWS re:Invent 2016: Develop, Build, Deploy, and Manage Containerized Services...AWS re:Invent 2016: Develop, Build, Deploy, and Manage Containerized Services...
AWS re:Invent 2016: Develop, Build, Deploy, and Manage Containerized Services...Amazon Web Services
 
NEW LAUNCH! Developing Serverless C# Applications
NEW LAUNCH! Developing Serverless C# ApplicationsNEW LAUNCH! Developing Serverless C# Applications
NEW LAUNCH! Developing Serverless C# ApplicationsAmazon Web Services
 
AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)
AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)
AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)Amazon Web Services
 
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...Amazon Web Services
 
AWS re:Invent 2016: Using AWS Lambda to Build Control Systems for Your AWS In...
AWS re:Invent 2016: Using AWS Lambda to Build Control Systems for Your AWS In...AWS re:Invent 2016: Using AWS Lambda to Build Control Systems for Your AWS In...
AWS re:Invent 2016: Using AWS Lambda to Build Control Systems for Your AWS In...Amazon Web Services
 
SRV302 Deep Dive on Serverless Application Development
SRV302 Deep Dive on Serverless Application DevelopmentSRV302 Deep Dive on Serverless Application Development
SRV302 Deep Dive on Serverless Application DevelopmentAmazon Web Services
 
AWS re:Invent 2016: What’s New with AWS Lambda (SVR202)
AWS re:Invent 2016: What’s New with AWS Lambda (SVR202)AWS re:Invent 2016: What’s New with AWS Lambda (SVR202)
AWS re:Invent 2016: What’s New with AWS Lambda (SVR202)Amazon Web Services
 
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...Amazon Web Services
 
AWS re:Invent 2016: How Gree Launched New Games Faster and More Securely with...
AWS re:Invent 2016: How Gree Launched New Games Faster and More Securely with...AWS re:Invent 2016: How Gree Launched New Games Faster and More Securely with...
AWS re:Invent 2016: How Gree Launched New Games Faster and More Securely with...Amazon Web Services
 
AWS re:Invent 2016: Real-time Data Processing Using AWS Lambda (SVR301)
AWS re:Invent 2016: Real-time Data Processing Using AWS Lambda (SVR301)AWS re:Invent 2016: Real-time Data Processing Using AWS Lambda (SVR301)
AWS re:Invent 2016: Real-time Data Processing Using AWS Lambda (SVR301)Amazon Web Services
 
Deep Dive on Microservices and Amazon ECS
Deep Dive on Microservices and Amazon ECSDeep Dive on Microservices and Amazon ECS
Deep Dive on Microservices and Amazon ECSAmazon Web Services
 
Getting Started with Serverless Architectures | AWS Public Sector Summit 2016
Getting Started with Serverless Architectures | AWS Public Sector Summit 2016Getting Started with Serverless Architectures | AWS Public Sector Summit 2016
Getting Started with Serverless Architectures | AWS Public Sector Summit 2016Amazon Web Services
 
AWS re:Invent 2016: Running, Configuring, and Securing Windows Workloads (ARC...
AWS re:Invent 2016: Running, Configuring, and Securing Windows Workloads (ARC...AWS re:Invent 2016: Running, Configuring, and Securing Windows Workloads (ARC...
AWS re:Invent 2016: Running, Configuring, and Securing Windows Workloads (ARC...Amazon Web Services
 
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...Amazon Web Services
 

Tendances (20)

AWS re:Invent 2016: The State of Serverless Computing (SVR311)
AWS re:Invent 2016: The State of Serverless Computing (SVR311)AWS re:Invent 2016: The State of Serverless Computing (SVR311)
AWS re:Invent 2016: The State of Serverless Computing (SVR311)
 
AWS re:Invent 2016: Taking DevOps to the AWS Edge (CTD302)
AWS re:Invent 2016: Taking DevOps to the AWS Edge (CTD302)AWS re:Invent 2016: Taking DevOps to the AWS Edge (CTD302)
AWS re:Invent 2016: Taking DevOps to the AWS Edge (CTD302)
 
Serverless architecture
Serverless architectureServerless architecture
Serverless architecture
 
AWS re:Invent 2016: Monitoring, Hold the Infrastructure: Getting the Most fro...
AWS re:Invent 2016: Monitoring, Hold the Infrastructure: Getting the Most fro...AWS re:Invent 2016: Monitoring, Hold the Infrastructure: Getting the Most fro...
AWS re:Invent 2016: Monitoring, Hold the Infrastructure: Getting the Most fro...
 
(NET307) Pinterest: The road from EC2-Classic To EC2-VPC
(NET307) Pinterest: The road from EC2-Classic To EC2-VPC(NET307) Pinterest: The road from EC2-Classic To EC2-VPC
(NET307) Pinterest: The road from EC2-Classic To EC2-VPC
 
AWS re:Invent 2016: Develop, Build, Deploy, and Manage Containerized Services...
AWS re:Invent 2016: Develop, Build, Deploy, and Manage Containerized Services...AWS re:Invent 2016: Develop, Build, Deploy, and Manage Containerized Services...
AWS re:Invent 2016: Develop, Build, Deploy, and Manage Containerized Services...
 
NEW LAUNCH! Developing Serverless C# Applications
NEW LAUNCH! Developing Serverless C# ApplicationsNEW LAUNCH! Developing Serverless C# Applications
NEW LAUNCH! Developing Serverless C# Applications
 
AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)
AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)
AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)
 
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
 
AWS re:Invent 2016: Using AWS Lambda to Build Control Systems for Your AWS In...
AWS re:Invent 2016: Using AWS Lambda to Build Control Systems for Your AWS In...AWS re:Invent 2016: Using AWS Lambda to Build Control Systems for Your AWS In...
AWS re:Invent 2016: Using AWS Lambda to Build Control Systems for Your AWS In...
 
SRV302 Deep Dive on Serverless Application Development
SRV302 Deep Dive on Serverless Application DevelopmentSRV302 Deep Dive on Serverless Application Development
SRV302 Deep Dive on Serverless Application Development
 
AWS re:Invent 2016: What’s New with AWS Lambda (SVR202)
AWS re:Invent 2016: What’s New with AWS Lambda (SVR202)AWS re:Invent 2016: What’s New with AWS Lambda (SVR202)
AWS re:Invent 2016: What’s New with AWS Lambda (SVR202)
 
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
 
AWS re:Invent 2016: How Gree Launched New Games Faster and More Securely with...
AWS re:Invent 2016: How Gree Launched New Games Faster and More Securely with...AWS re:Invent 2016: How Gree Launched New Games Faster and More Securely with...
AWS re:Invent 2016: How Gree Launched New Games Faster and More Securely with...
 
AWS re:Invent 2016: Real-time Data Processing Using AWS Lambda (SVR301)
AWS re:Invent 2016: Real-time Data Processing Using AWS Lambda (SVR301)AWS re:Invent 2016: Real-time Data Processing Using AWS Lambda (SVR301)
AWS re:Invent 2016: Real-time Data Processing Using AWS Lambda (SVR301)
 
SEC301 Security @ (Cloud) Scale
SEC301 Security @ (Cloud) ScaleSEC301 Security @ (Cloud) Scale
SEC301 Security @ (Cloud) Scale
 
Deep Dive on Microservices and Amazon ECS
Deep Dive on Microservices and Amazon ECSDeep Dive on Microservices and Amazon ECS
Deep Dive on Microservices and Amazon ECS
 
Getting Started with Serverless Architectures | AWS Public Sector Summit 2016
Getting Started with Serverless Architectures | AWS Public Sector Summit 2016Getting Started with Serverless Architectures | AWS Public Sector Summit 2016
Getting Started with Serverless Architectures | AWS Public Sector Summit 2016
 
AWS re:Invent 2016: Running, Configuring, and Securing Windows Workloads (ARC...
AWS re:Invent 2016: Running, Configuring, and Securing Windows Workloads (ARC...AWS re:Invent 2016: Running, Configuring, and Securing Windows Workloads (ARC...
AWS re:Invent 2016: Running, Configuring, and Securing Windows Workloads (ARC...
 
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...
 

Similaire à AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)

Aws re invent 2018 recap
Aws re invent 2018 recapAws re invent 2018 recap
Aws re invent 2018 recapCloudHesive
 
SMC301 The State of Serverless Computing
SMC301 The State of Serverless ComputingSMC301 The State of Serverless Computing
SMC301 The State of Serverless ComputingAmazon Web Services
 
Serverless without Code (Lambda)
Serverless without Code (Lambda)Serverless without Code (Lambda)
Serverless without Code (Lambda)CloudHesive
 
Getting Started with AWS Lambda and Serverless Computing
Getting Started with AWS Lambda and Serverless ComputingGetting Started with AWS Lambda and Serverless Computing
Getting Started with AWS Lambda and Serverless ComputingAmazon Web Services
 
AWS 101 - An Introduction to the Amazon Cloud
AWS 101  - An Introduction to the Amazon CloudAWS 101  - An Introduction to the Amazon Cloud
AWS 101 - An Introduction to the Amazon CloudCloudHesive
 
AWS re:Invent 2016: Event Handling at Scale: Designing an Auditable Ingestion...
AWS re:Invent 2016: Event Handling at Scale: Designing an Auditable Ingestion...AWS re:Invent 2016: Event Handling at Scale: Designing an Auditable Ingestion...
AWS re:Invent 2016: Event Handling at Scale: Designing an Auditable Ingestion...Amazon Web Services
 
Getting Started with AWS Lambda and the Serverless Cloud - AWS Summit Cape T...
 Getting Started with AWS Lambda and the Serverless Cloud - AWS Summit Cape T... Getting Started with AWS Lambda and the Serverless Cloud - AWS Summit Cape T...
Getting Started with AWS Lambda and the Serverless Cloud - AWS Summit Cape T...Amazon Web Services
 
Building compelling Enterprise Solutions on AWS
Building compelling Enterprise Solutions on AWSBuilding compelling Enterprise Solutions on AWS
Building compelling Enterprise Solutions on AWSAmazon Web Services
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesAmazon Web Services
 
Deep Dive on AWS Lambda - January 2017 AWS Online Tech Talks
Deep Dive on AWS Lambda - January 2017 AWS Online Tech TalksDeep Dive on AWS Lambda - January 2017 AWS Online Tech Talks
Deep Dive on AWS Lambda - January 2017 AWS Online Tech TalksAmazon Web Services
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudAmazon Web Services
 
Cloud First: New Architecture for New Infrastructure
Cloud First: New Architecture for New InfrastructureCloud First: New Architecture for New Infrastructure
Cloud First: New Architecture for New InfrastructureAmazon Web Services
 
Serverless design considerations for Cloud Native workloads
Serverless design considerations for Cloud Native workloadsServerless design considerations for Cloud Native workloads
Serverless design considerations for Cloud Native workloadsTensult
 
Come costruire apllicazioni "12-factor microservices" in AWS
Come costruire apllicazioni "12-factor microservices" in AWSCome costruire apllicazioni "12-factor microservices" in AWS
Come costruire apllicazioni "12-factor microservices" in AWSAmazon Web Services
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudAmazon Web Services
 

Similaire à AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202) (20)

Aws re invent 2018 recap
Aws re invent 2018 recapAws re invent 2018 recap
Aws re invent 2018 recap
 
SMC301 The State of Serverless Computing
SMC301 The State of Serverless ComputingSMC301 The State of Serverless Computing
SMC301 The State of Serverless Computing
 
Serverless without Code (Lambda)
Serverless without Code (Lambda)Serverless without Code (Lambda)
Serverless without Code (Lambda)
 
Managing Your Cloud Assets
Managing Your Cloud AssetsManaging Your Cloud Assets
Managing Your Cloud Assets
 
Demistifying serverless on aws
Demistifying serverless on awsDemistifying serverless on aws
Demistifying serverless on aws
 
Best of re:Invent
Best of re:InventBest of re:Invent
Best of re:Invent
 
Getting Started with AWS Lambda and Serverless Computing
Getting Started with AWS Lambda and Serverless ComputingGetting Started with AWS Lambda and Serverless Computing
Getting Started with AWS Lambda and Serverless Computing
 
AWS 101 - An Introduction to the Amazon Cloud
AWS 101  - An Introduction to the Amazon CloudAWS 101  - An Introduction to the Amazon Cloud
AWS 101 - An Introduction to the Amazon Cloud
 
AWS re:Invent 2016: Event Handling at Scale: Designing an Auditable Ingestion...
AWS re:Invent 2016: Event Handling at Scale: Designing an Auditable Ingestion...AWS re:Invent 2016: Event Handling at Scale: Designing an Auditable Ingestion...
AWS re:Invent 2016: Event Handling at Scale: Designing an Auditable Ingestion...
 
Getting Started with AWS Lambda and the Serverless Cloud - AWS Summit Cape T...
 Getting Started with AWS Lambda and the Serverless Cloud - AWS Summit Cape T... Getting Started with AWS Lambda and the Serverless Cloud - AWS Summit Cape T...
Getting Started with AWS Lambda and the Serverless Cloud - AWS Summit Cape T...
 
The Best of re:invent 2016
The Best of re:invent 2016The Best of re:invent 2016
The Best of re:invent 2016
 
Building compelling Enterprise Solutions on AWS
Building compelling Enterprise Solutions on AWSBuilding compelling Enterprise Solutions on AWS
Building compelling Enterprise Solutions on AWS
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
 
Deep Dive on AWS Lambda - January 2017 AWS Online Tech Talks
Deep Dive on AWS Lambda - January 2017 AWS Online Tech TalksDeep Dive on AWS Lambda - January 2017 AWS Online Tech Talks
Deep Dive on AWS Lambda - January 2017 AWS Online Tech Talks
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless Cloud
 
Cloud First: New Architecture for New Infrastructure
Cloud First: New Architecture for New InfrastructureCloud First: New Architecture for New Infrastructure
Cloud First: New Architecture for New Infrastructure
 
Serverless design considerations for Cloud Native workloads
Serverless design considerations for Cloud Native workloadsServerless design considerations for Cloud Native workloads
Serverless design considerations for Cloud Native workloads
 
AWS Lambda and Serverless Cloud
AWS Lambda and Serverless CloudAWS Lambda and Serverless Cloud
AWS Lambda and Serverless Cloud
 
Come costruire apllicazioni "12-factor microservices" in AWS
Come costruire apllicazioni "12-factor microservices" in AWSCome costruire apllicazioni "12-factor microservices" in AWS
Come costruire apllicazioni "12-factor microservices" in AWS
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless Cloud
 

Plus de Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

Plus de Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Dernier

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 

Dernier (20)

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 

AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)

  • 1. © 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Tom Myers, Sr. Cloud Architect, Accenture Cloud Platform Matt Lancaster, Lightweight Architectures Global Lead Accenture Cloud Platform Serverless Journey ARC202 November 29, 2016
  • 2. What Makes an Offering a “Platform” *Platform Ecosystems: Aligning Architecture, Governance, and Strategy, Amrit Tiwana, 2014, Section 1.2. The common denominator of all platforms is that they facilitate interactions between distinct groups (the two “sides”) that want to interact with and need each other.*
  • 3. What is the Accenture Cloud Platform? Accenture Cloud Platform (ACP) offers clients an on-ramp to the cloud. ACP provides governance, analytics, and services to support the transition to and provide ongoing support of their cloud journey. ACP services enable clients on one side, and Accenture solution providers on the other. ACP has transitioned over time from on- premises data center, to cloud virtual data center, and is now transitioning to serverless platform.
  • 4. How Does ACP Support its Ecosystem? ACP Accenture Business Groups Clients AWS Service Catalog Development Process
  • 5. Why Serverless? ACP is fundamentally a collection of services coordinated by an orchestrator and ordered via service catalog. A microservices architecture – services orchestrated and interacting via APIs – is well-suited for such an offering. A serverless design can optimally host highly available and scalable microservices.
  • 6. Why AWS? The serverless options available from AWS are the most mature from any cloud provider. Scalability, availability, reliability, performance and other architectural concerns are well- addressed in AWS. A number of good tools exist to design and deploy complex microservices to the AWS Cloud service environment. The Accenture AWS Business Group is our 1-year old partnership with Amazon Web Services, to bring clients the power of cloud through AWS.
  • 7. Ring 0 • Core Services • APIs to support Ring 1+ • Continuous Delivery Ring 1 • Applications/ Services • Rely on Ring 0 • Agile Releases Ring 2 • Client Applications/ Services • Rely on Rings 0 & 1 • Client Control ACP Ring Model
  • 9. Serverless Architecture DNS Owned by Enterprise IT Dept.
  • 11. Serverless Architecture Lambda execution with SNS, Redis, Amazon Kinesis for communication
  • 12. Serverless Architecture DynamoDB, Amazon Redshift, Elasticsearch for persistent storage
  • 14. Serverless Architecture Components Accounts • API Gateway • Lambda • Amazon ElastiCache for Redis • DynamoDB, Amazon Redshift • Amazon Kinesis & DynamoDB Streams • Elasticsearch • SNS Topics/Subscriptions & SQS • CloudWatch Logs • CloudFront/S3 Flexible design allows components to be swapped • Rings – Core – Apps • Lifecycle – Sandbox – Dev – Test – Stage – Prod 10 accounts with cross-account roles Core ⇄ Apps
  • 16. DevOps Model Continuous Delivery • Terraform + Apex – CloudFormation didn’t fully support API G/W when we needed it – Custom framework (code consistency, name checking, etc.) • Solved a lot of the initial inherent complexity in Lambda and API G/W deployment • Higher-level abstraction for all infrastructure with simple config files to generate Terraform • Supports cross project & AWS account Terraform dependencies and stores state on S3 • Accenture DevOps Platform – We currently use BitBucket, Jenkins, Sonar – Also supports Nexus, Kibana, Selenium, etc. – Deploys via ACP as an automated stack – https://github.com/Accenture/adop-docker-compose
  • 17. Challenges • CloudFormation – Occasionally gets stuck requiring AWS Support to resolve – Monitoring status and completion of stacks – Diagnosing and fixing errors not always straightforward – Verbose JSON format for large stacks at times unwieldy (even with Troposphere) - YAML a welcome addition!! • API Gateway – Limited initial support in CloudFormation – Overhead of creating large API Gateway definitions – HTTP method mappings complex – Recent enhancements such as Swagger import and passthrough will help a lot! • Need to explicitly define all infrastructure, which gets complex at scale – IAM roles, policies, Lambda functions & SNS/stream mappings, etc. – Handled by custom framework
  • 18. Lessons Learned • Lightweight frameworks can allow greater flexibility (e.g., AWS account per environment/stage) • Pick a Lambda runtime – lots will work, but less reuse opportunities • Operability and security must be considered and designed for • Plan for upgrades ahead of time (e.g., Elasticsearch) • Pay attention to limits (e.g. CloudWatch logs writes, batch size, and message dates in batch events, DynamoDB read/write) • Define Lambda logging conventions and how these fit into the monitoring components (Elasticsearch/Kibana) • Being an early adopter comes with risk and often requires workarounds
  • 19. Benefits • Deploy in minutes (no delay waiting for other teams) – 10 deploys per day (or more) – Deployment triggers on code-commit • Bug fixes deploy more quickly with isolated functions and CD • Use of custom framework allows for rapid creation of complex components that use multiple AWS services • Swagger provides rapid deployment of documentation • API Gateway simplifies API versioning and deployments
  • 20. Patterns • Write functions in Lambda functions – design for parallel execution – Small, idempotent routines – Built in restart, retry – Cache state (Redis, ElastiCache) • Surface Lambda functions with API Gateway – User Custom Domain Names and pathing to gather APIs together – This enables independent build with a consistent experience • Communicate with services – SNS to send messages – Amazon Kinesis to pass data • Target storage to Elasticsearch – Search queries are probably what you need anyway • Persist data with DynamoDB – Keep a date key (epoch) to partition and purge data – Send backup to low cost storage
  • 23. The Future of Serverless Applications Current State Future State • Heavy use of the console to manage different services • Lambda is over-utilized • Shoving existing code into Lambda • No real system health visualizations • Use a framework to manage resources • Use platform services (e.g., velocity templates, Amazon Kinesis streams) to supplement Lambda • Develop applications to ensure minimal code deployments • Use open source time series visualization tool for operational readiness
  • 24. Don’t Use Lambda for Everything • Consider the capabilities available within AWS first, and use Lambda only when necessary • Take advantage of Apache Velocity for transformations in the API Gateway instead of using a Lambda function • If data ingestion is required, consider using an AWS Proxy to Amazon Kinesis for greater throughput and scalability • Most AWS services expose a RESTful endpoint for an API Gateway AWS proxy interaction • Use Lambda where you need to execute business logic
  • 25. Use Velocity Instead of Lambda for Transformations
  • 26. Use Streams to Optimize Throughput stream Lambda function • Using DynamoDB or Amazon Kinesis Streams allows bulk processing of data • Tuning the EventSourceMapping BatchSize to just under 100 ms ensures that you’re getting the greatest value from your Lambda functions
  • 27. Be Nice to Your Lambda • Use bundlers like Webpack or Browserify to ensure only required dependencies are present in deployed Lambda functions. • Ensure that no dev dependencies are being included in your packaged Lambda functions. • Lambda containers have the ability to persist across invocations. Make sure to group multiple related methods in the same handler file to increase invocation rate, in order to avoid cold boot delays. • Instantiate persistent objects outside of methods to increase Lambda execution performance during container reuse conditions.
  • 28. Don’t Bother with CloudWatch for Operations Metrics • CloudWatch is not a realistic choice for enterprise operations metrics • Dedicated time-series systems like Prometheus.io are a far better choice for near real-time operations dashboards CloudWatch Prometheusvs
  • 30. Alexia – An Alexa Node.js Framework Written in ES6 Speech assets generation Cards support Works with Lambda, Hapi, Express Build in state machine Starter kit
  • 31. Alexa Skill with Alexia Framework const alexia = require('alexia'); const app = alexia.createApp(); app.intent('HelloIntent', 'Hello', () => { return 'Hello from Alexia app'; });
  • 32. Interaction API Demo Architecture Echo Alexa Skills Kit Lambda Handler API Gateway Catalog API
  • 33. “Aspirin has been added to your cart. But I’ve found interactions between your medications. Please consult with your doctor or pharmacist” Case Study – Pharmacy Advisor
  • 34. Showcase modern architecture principles and leverage from Amazon Web Services Case Study – Pharmacy Advisor
  • 35. “Add Aspirin to my cart.” “Aspirin has been added to your cart. But I’ve found interactions between your medications. Please consult it with your doctor or pharmacist” Demo Conversation “Add Ibuprofen to my cart.” “Ibuprofen has been added to your cart.”
  • 36. © 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Tom Myers thomas.w.myers@accenture.com @TomMyersACP Visit us at the Accenture booth #829 Matt Lancaster matthew.d.lancaster@accenture.com @urnamma