SlideShare a Scribd company logo
Srini Karlekar – Director, Software Engineering, Capital
One.
Twitter: @skarlekar
LinkedIn: skarlekar
 Serverless Architectures are those models where the applications logic provided by
the Developer is run on stateless, compute containers that are provisioned and
managed by a provider.
 Typically these compute instances are ephemeral (short-lived for the duration of
the request-response cycle), typically runs a function and triggered through an
event.
 Due to the on-demand provisioning nature of this architecture, the systems built
using Serverless technologies are inherently scalable and highly responsive under
load.
2
 The introduction of function as a service (faaS) as Lambda by Amazon in
re:Invent, Nov 2014 (and out of beta in late 2015) created a momentum for
"serverless" platform architecture. AWS Lambda was soon followed by most major
cloud platform vendors, including IBM, Microsoft, Google and, more recently,
Oracle. Serverless is a cloud-native platform model.
 Per Gartner, by 2022 most cloud architectures will evolve to a fundamentally
serverless model rendering the cloud platform architectures dominating in 2017
as legacy architectures1.
 Serverless is a cloud-native platform model and reflects the core-promise of cloud-
computing by offering agility and capability on demand at a value price.
31. The Key Trends in PaaS, 2017 - Published: 31 January 2017 ID: G00313016
 FaaS - The technique of building applications
using Serverless architecture.
 Cost Efficiency – Pay per execution model is most
efficient at managing costs.
 Ephemeral – Short-lived process triggered via
event.
 Auto-scaling – Compute resources are provisioned
granularly per request.
 Event-driven – Functions respond to events such
as http, file drop, alerts, timer, topics etc
 Microservices – Modules built to satisfy a specific
goal and uses a simple, well-defined interface.
4
 State - Due to the ephemeral nature of the FaaS architecture, the state of
your application should be managed externally from the FaaS
infrastructure or off-loaded to a cache or data-base.
 Duration - Because of the on-demand provisioning and low-cost nature of
the FaaS solution there is a restriction on how long your functions are
allowed to run. To keep the price low - as you are billed by minutes of
usage, some providers such as Amazon AWS and Microsoft Azure restrict
the duration of time a function is allowed to process a request.
5
 Deployment & Resource Limits - Some providers such as AWS
have deployment limits on the size of the deployment package, code
and libraries that can be deployed in the package.
 This could be severely limiting for some applications such as image
processing functions that depend on large libraries that have to be
packaged along with the code.
 Additionally, there are limits on the number of concurrent function
executions, ephemeral disk capacity (temp space) etc.
 While some of these limits are soft limits and can be reconfigured
per function by working with the providers, others are hard limits
and will force you to reevaluate the choice of your design.
6
 Latency - Due to the on-demand provisioning nature of the
FaaS infrastructure, applications that uses languages such
as Java/Scala that require a longer start time to spin up
JVMs may encounter longer runtime.
 Having said that, providers optimize the infrastructure spin-
ups based on the usage patterns of the functions.
 On the other hand, due to the interpreted nature of Python
and Javascript, functions written in these languages may
not see a significant difference in latency between a PaaS
and FaaS offering.
7
While there are new providers entering the market to exploit the Serverless wave,
the following rule the roost:
 Amazon with its AWS Lambda,
 Microsoft with its Azure Functions,
 Google with its Google Functions and
 IBM with its Openwhisk.
8
9
http://bit.ly/2qArW04
10
 Organizations want to diversify risk and hence do not want to be bound to
a single provider.
 While not having to manage infrastructure by using serverless functions is
nice, having to deal with hundreds of functions in a project between
multiple providers, managing buckets, messaging and permissions
becomes an issue in itself.
 While many providers are entering into the Serverless field to make
developing cloud-native applications easy, you are still bound to
idiosyncrasies of the provider when it comes to their FaaS offering.
 Not only do you have to learn the different terminologies used by the
various providers, you will have to learn how to use their offerings on their
respective consoles or CLI (Command Line Interface).
11
 The Serverless Framework is an MIT open-source project, actively
maintained by a vibrant and engaged community of developers and
provides robust plugins for various FaaS providers and allows to extend it
when needed.
 The Serverless Framework allows you to provision and deploy REST APIs,
backend services, data pipe-lines, and other uses cases by providing a
framework and CLI to build serverless services across many providers by
abstracting away provider-level complexity.
 The Serverless Framework is different than other application frameworks
because:
 It manages your code as well as your infrastructure
 It supports multiple languages (Node.js, Python, Java, and more)
12
Serverless Framework consists of the following core concepts:
Service
Function
Events
Resources
Plugins
13
Service - The unit of organization. It's where you define your Functions, the
Events that trigger them, and the Resources your Functions use, all in one
file titled serverless.yml. More information at: https://goo.gl/9SKBvx
An application can have multiple services and hence multiple serverless.yml
files.
14
Functions - A Function is an independent unit of deployment. It manifests
itself as a Lambda or Azure Function depending upon the provider. It's
merely code, deployed in the cloud, that is most often written to perform a
single job such as:
 Saving a user to the database
 Processing a file in a database
 Performing a scheduled task
15
Anything that triggers an Function to execute is regarded by the
Framework as an Event.
Events on AWS are:
 An AWS API Gateway HTTP endpoint request (e.g., for a REST API)
 An AWS S3 bucket upload (e.g., for an image)
 A CloudWatch timer (e.g., run every 5 minutes)
 An AWS SNS topic (e.g., a message)
 A CloudWatch Alert (e.g., something happened)
When you define an event for your functions in the Serverless Framework,
the Framework will automatically create any infrastructure necessary for
that event (e.g., an API Gateway endpoint) and configure your Functions to
listen to it.
16
Simply put, events are the things that trigger your functions to run. If you
are using AWS as your provider, all events in the service are anything in
AWS that can trigger an AWS Lambda function, like an S3 bucket upload,
an SNS topic, and HTTP endpoints created via API Gateway.
Upon deployment, the framework will deploy any infrastructure required for
an event (e.g., an API Gateway endpoint) and configure your function to
listen to it.
17
Resources are infrastructure components which your Functions uses.
If you use AWS as you provider, then resources are:
 An AWS DynamoDB Table (e.g., for saving Users/Posts/Comments data)
 An AWS S3 Bucket (e.g., for saving images or files)
 An AWS SNS Topic (e.g., for sending messages asynchronously)
Anything that can be defined in CloudFormation is supported by the
Serverless Framework
The Serverless Framework not only deploys your Functions and the Events
that trigger them, but it also deploys the infrastructure components your
Functions depend upon.
18
19
An example of resources in Serverless Framework using AWS as provider:
20
Serverless Framework needs access to your cloud provider account credentials
to deploy resources on your behalf. For AWS you can use AWS CLI (aws
configure). Azure is more involved.
Following links provide excellent guidance on setting up the credentials for
various providers currently supported on the Serverless Framework.
AWS - https://serverless.com/framework/docs/providers/aws/guide/credentials/
Azure -
https://serverless.com/framework/docs/providers/azure/guide/credentials/
Google -
https://serverless.com/framework/docs/providers/google/guide/credentials/
21
Create a new service using the Python template on Amazon, specifying a
unique name and an optional path for your service.
serverless create --template aws-python --name helloWorld --path
helloWorldService
Serverless framework will now create the service declaration for the
helloWorld service in directory helloWorldService.
22
Serverless Framework translates the service declaration in the
serverless.yml file into a Cloud Formation or Resource Manager template
depending upon the provider you choose.
To deploy your service, all the functions and provision the resources, enter:
serverless deploy --verbose
To deploy a single function after making changes to it, enter:
serverless deploy function --function <myfunction> --verbose
23
Serverless Framework allows you to invoke a function locally for testing or
invoke a deployed function.
To invoke your function locally, enter:
serverless invoke local --function <myfunction> --log
To invoke a deployed function, enter:
serverless invoke function --function <myfunction> --stage <my
stage> --region <myregion>
Note: If you omit the stage and region option, the default stage (dev) and
region specified in your provider configuration will be used.
 Cognitive Services are machine learning services that makes your applications
more intelligent, engaging and discoverable.
 These cognitive services expands on machine learning APIs and enables
developers to easily add intelligent features – such as emotion and video detection;
facial, speech and vision recognition; and speech and language understanding –
into their applications.
 The leading cloud providers such as Google, Amazon, Microsoft and IBM provide a
portfolio cognitive services that are API-driven and easy to use.
 These pre-packaged, API-driven cognitive function as a service is also called AIaaS
or Artificial Intelligence as a Service.
 AIaaS service is billed in the same fashion as other serverless services for the
compute and storage by the minute unless noted otherwise by the provider.
24
25
26
27
28
29
30
31
 BotChehara is a Slack Bot that recognizes pictures of celebrities, famous
landmarks and extracts texts from pictures of documents. Chehara is
Hindi for Face. BotChehara was inspired by the
SMSBot faces (see: http://github.com/skarlekar/faces).
 BotChehara is 100% Serverless AIaaS1 micro-service built on top of
the Serverless Framework and uses Python, SlackAPI, AWS
StepFunctions, AWS Rekognition and Google Vision API. You can invite
BotChehara to your SlackWorkspace.
 Whenever a picture is posted on the invited channel, BotChehara will
analyze the picture to identify faces of celebrities, famous landmarks and
post the biography or description & map of the landmark back to the
channel. If a picture of a scanned document or signage is uploaded, the bot
detects text and posts the extracted raw text back to the channel.
BotChehara code repository, installation guide and usage at:
https://github.com/skarlekar/chehara
32
33For details go to: http://bit.ly/bcinstallflow
34For details go to: http://bit.ly/bceventflow
35For details go to: http://bit.ly/bcorch
36
The CelebritySleuth application can be cloned from:
https://github.com/skarlekar/chehara
For Installation, Deployment and Usage instructions go to:
http://bit.ly/chehara
37
For further demonstration of using Serverless Framework to Deploy &
Manage Serverless Micro-services across AWS and Google Cloud Platforms,
see:
https://github.com/skarlekar/aws-gcp-proxy-serverless
This is an simple tutorial to demonstrate how to deploy multiple services on
different cloud providers using the Serverless Framework.
More specifically, this tutorial walks you through deploying an image
detection service on Google Cloud Platform (GCP) and managing it using a
proxy service running on Amazon Web Service. Both the services on either
platform is 100% serverless.
The image detection service running on GCP uses Google's FaaS solution viz.,
Cloud Functions and the proxy running on AWS uses Amazon's FaaS solution
viz., Lambda.
38
To understand the concept of Serverless and explore the differences between
Serverless Architecture and Serverless Framework go to:
http://bit.ly/slswhite

More Related Content

What's hot

Windows and .NET on AWS
Windows and .NET on AWSWindows and .NET on AWS
Windows and .NET on AWS
Amazon Web Services
 
Serverless computing - Build and run applications without thinking about servers
Serverless computing - Build and run applications without thinking about serversServerless computing - Build and run applications without thinking about servers
Serverless computing - Build and run applications without thinking about servers
Amazon Web Services
 
Expanding your Data Center with Hybrid Cloud Infrastructure
Expanding your Data Center with Hybrid Cloud InfrastructureExpanding your Data Center with Hybrid Cloud Infrastructure
Expanding your Data Center with Hybrid Cloud Infrastructure
Amazon Web Services
 
AWS re:Invent 2016: State of the Union: Containers (CON316)
AWS re:Invent 2016: State of the Union:  Containers (CON316)AWS re:Invent 2016: State of the Union:  Containers (CON316)
AWS re:Invent 2016: State of the Union: Containers (CON316)
Amazon Web Services
 
Cloud computing
Cloud computingCloud computing
Cloud computing
Nagesh Ramamoorthy
 
AWS Innovate: Best of Both Worlds: Leveraging Hybrid IT with AWS- Dhruv Singhal
AWS Innovate: Best of Both Worlds: Leveraging Hybrid IT with AWS- Dhruv SinghalAWS Innovate: Best of Both Worlds: Leveraging Hybrid IT with AWS- Dhruv Singhal
AWS Innovate: Best of Both Worlds: Leveraging Hybrid IT with AWS- Dhruv Singhal
Amazon Web Services Korea
 
Peeling the Onion - Monoliths to Serverless Microservices on Amazon Web Services
Peeling the Onion - Monoliths to Serverless Microservices on Amazon Web ServicesPeeling the Onion - Monoliths to Serverless Microservices on Amazon Web Services
Peeling the Onion - Monoliths to Serverless Microservices on Amazon Web Services
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
 
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
 
Demistifying serverless on aws
Demistifying serverless on awsDemistifying serverless on aws
Demistifying serverless on aws
AWS Riyadh User Group
 
Deep Dive on Microservices and Docker
Deep Dive on Microservices and DockerDeep Dive on Microservices and Docker
Deep Dive on Microservices and Docker
Kristana Kane
 
Migrating Databases to AWS for Business Critical Applications and Analytics
Migrating Databases to AWS for Business Critical Applications and Analytics Migrating Databases to AWS for Business Critical Applications and Analytics
Migrating Databases to AWS for Business Critical Applications and Analytics
Amazon Web Services
 
Real World Development: Peeling The Onion – Migrating A Monolithic Applicatio...
Real World Development: Peeling The Onion – Migrating A Monolithic Applicatio...Real World Development: Peeling The Onion – Migrating A Monolithic Applicatio...
Real World Development: Peeling The Onion – Migrating A Monolithic Applicatio...Amazon Web Services
 
Journey Towards Scaling Your Application to 10 million users
Journey Towards Scaling Your Application to 10 million usersJourney Towards Scaling Your Application to 10 million users
Journey Towards Scaling Your Application to 10 million users
Amazon Web Services
 
Microsoft SQL Server Dive Deep.pdf
Microsoft SQL Server Dive Deep.pdfMicrosoft SQL Server Dive Deep.pdf
Microsoft SQL Server Dive Deep.pdf
Amazon Web Services
 
AWS re:Invent 2016: Automated DevOps and Continuous Delivery (DEV211)
AWS re:Invent 2016: Automated DevOps and Continuous Delivery (DEV211)AWS re:Invent 2016: Automated DevOps and Continuous Delivery (DEV211)
AWS re:Invent 2016: Automated DevOps and Continuous Delivery (DEV211)
Amazon Web Services
 
WKS407 Wild Rydes Takes Off – The Dawn of a New Unicorn
WKS407 Wild Rydes Takes Off – The Dawn of a New UnicornWKS407 Wild Rydes Takes Off – The Dawn of a New Unicorn
WKS407 Wild Rydes Takes Off – The Dawn of a New Unicorn
Amazon 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: [JK REPEAT] Serverless Architectural Patterns and Best Pr...
AWS re:Invent 2016: [JK REPEAT] Serverless Architectural Patterns and Best Pr...AWS re:Invent 2016: [JK REPEAT] Serverless Architectural Patterns and Best Pr...
AWS re:Invent 2016: [JK REPEAT] Serverless Architectural Patterns and Best Pr...
Amazon Web Services
 
Migrate from Oracle to Amazon Aurora using AWS Schema Conversion Tool & AWS D...
Migrate from Oracle to Amazon Aurora using AWS Schema Conversion Tool & AWS D...Migrate from Oracle to Amazon Aurora using AWS Schema Conversion Tool & AWS D...
Migrate from Oracle to Amazon Aurora using AWS Schema Conversion Tool & AWS D...
Amazon Web Services
 

What's hot (20)

Windows and .NET on AWS
Windows and .NET on AWSWindows and .NET on AWS
Windows and .NET on AWS
 
Serverless computing - Build and run applications without thinking about servers
Serverless computing - Build and run applications without thinking about serversServerless computing - Build and run applications without thinking about servers
Serverless computing - Build and run applications without thinking about servers
 
Expanding your Data Center with Hybrid Cloud Infrastructure
Expanding your Data Center with Hybrid Cloud InfrastructureExpanding your Data Center with Hybrid Cloud Infrastructure
Expanding your Data Center with Hybrid Cloud Infrastructure
 
AWS re:Invent 2016: State of the Union: Containers (CON316)
AWS re:Invent 2016: State of the Union:  Containers (CON316)AWS re:Invent 2016: State of the Union:  Containers (CON316)
AWS re:Invent 2016: State of the Union: Containers (CON316)
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
AWS Innovate: Best of Both Worlds: Leveraging Hybrid IT with AWS- Dhruv Singhal
AWS Innovate: Best of Both Worlds: Leveraging Hybrid IT with AWS- Dhruv SinghalAWS Innovate: Best of Both Worlds: Leveraging Hybrid IT with AWS- Dhruv Singhal
AWS Innovate: Best of Both Worlds: Leveraging Hybrid IT with AWS- Dhruv Singhal
 
Peeling the Onion - Monoliths to Serverless Microservices on Amazon Web Services
Peeling the Onion - Monoliths to Serverless Microservices on Amazon Web ServicesPeeling the Onion - Monoliths to Serverless Microservices on Amazon Web Services
Peeling the Onion - Monoliths to Serverless Microservices on 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...
 
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)
 
Demistifying serverless on aws
Demistifying serverless on awsDemistifying serverless on aws
Demistifying serverless on aws
 
Deep Dive on Microservices and Docker
Deep Dive on Microservices and DockerDeep Dive on Microservices and Docker
Deep Dive on Microservices and Docker
 
Migrating Databases to AWS for Business Critical Applications and Analytics
Migrating Databases to AWS for Business Critical Applications and Analytics Migrating Databases to AWS for Business Critical Applications and Analytics
Migrating Databases to AWS for Business Critical Applications and Analytics
 
Real World Development: Peeling The Onion – Migrating A Monolithic Applicatio...
Real World Development: Peeling The Onion – Migrating A Monolithic Applicatio...Real World Development: Peeling The Onion – Migrating A Monolithic Applicatio...
Real World Development: Peeling The Onion – Migrating A Monolithic Applicatio...
 
Journey Towards Scaling Your Application to 10 million users
Journey Towards Scaling Your Application to 10 million usersJourney Towards Scaling Your Application to 10 million users
Journey Towards Scaling Your Application to 10 million users
 
Microsoft SQL Server Dive Deep.pdf
Microsoft SQL Server Dive Deep.pdfMicrosoft SQL Server Dive Deep.pdf
Microsoft SQL Server Dive Deep.pdf
 
AWS re:Invent 2016: Automated DevOps and Continuous Delivery (DEV211)
AWS re:Invent 2016: Automated DevOps and Continuous Delivery (DEV211)AWS re:Invent 2016: Automated DevOps and Continuous Delivery (DEV211)
AWS re:Invent 2016: Automated DevOps and Continuous Delivery (DEV211)
 
WKS407 Wild Rydes Takes Off – The Dawn of a New Unicorn
WKS407 Wild Rydes Takes Off – The Dawn of a New UnicornWKS407 Wild Rydes Takes Off – The Dawn of a New Unicorn
WKS407 Wild Rydes Takes Off – The Dawn of a New Unicorn
 
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: [JK REPEAT] Serverless Architectural Patterns and Best Pr...
AWS re:Invent 2016: [JK REPEAT] Serverless Architectural Patterns and Best Pr...AWS re:Invent 2016: [JK REPEAT] Serverless Architectural Patterns and Best Pr...
AWS re:Invent 2016: [JK REPEAT] Serverless Architectural Patterns and Best Pr...
 
Migrate from Oracle to Amazon Aurora using AWS Schema Conversion Tool & AWS D...
Migrate from Oracle to Amazon Aurora using AWS Schema Conversion Tool & AWS D...Migrate from Oracle to Amazon Aurora using AWS Schema Conversion Tool & AWS D...
Migrate from Oracle to Amazon Aurora using AWS Schema Conversion Tool & AWS D...
 

Similar to Building Cross-Cloud Platform Cognitive Microservices Using Serverless Architecture

Building Serverless Microservices Using Serverless Framework on the Cloud
Building Serverless Microservices Using Serverless Framework on the CloudBuilding Serverless Microservices Using Serverless Framework on the Cloud
Building Serverless Microservices Using Serverless Framework on the Cloud
Srini Karlekar
 
Serverless Architecture
Serverless ArchitectureServerless Architecture
Serverless Architecture
Rajind Ruparathna
 
Service Models
Service ModelsService Models
Service Models
Allwyn24
 
Testing of Serverless Application on Amazon WebService Cloud
Testing of Serverless Application on Amazon WebService CloudTesting of Serverless Application on Amazon WebService Cloud
Testing of Serverless Application on Amazon WebService Cloud
Rustam Zeynalov
 
Aws interview questions and answers
Aws interview questions and answersAws interview questions and answers
Aws interview questions and answers
kavinilavuG
 
Aws serverless multi-tier_architectures
Aws serverless multi-tier_architecturesAws serverless multi-tier_architectures
Aws serverless multi-tier_architectures
sonpro2312
 
AWS Serverless Introduction (Lambda)
AWS Serverless Introduction (Lambda)AWS Serverless Introduction (Lambda)
AWS Serverless Introduction (Lambda)
Ashish Kushwaha
 
Serverless Architectures
Serverless Architectures Serverless Architectures
Serverless Architectures
SuraiyaHasan19004210
 
AWS Interview Questions and Answers -CREDO SYSTEMZ.pdf
AWS Interview Questions and Answers -CREDO SYSTEMZ.pdfAWS Interview Questions and Answers -CREDO SYSTEMZ.pdf
AWS Interview Questions and Answers -CREDO SYSTEMZ.pdf
nishajeni1
 
Comparative Study of Various Platform as a Service Frameworks
Comparative Study of Various Platform as a Service Frameworks Comparative Study of Various Platform as a Service Frameworks
Comparative Study of Various Platform as a Service Frameworks
neirew J
 
COMPARATIVE STUDY OF VARIOUS PLATFORM AS A SERVICE FRAMEWORKS
COMPARATIVE STUDY OF VARIOUS PLATFORM AS A SERVICE FRAMEWORKSCOMPARATIVE STUDY OF VARIOUS PLATFORM AS A SERVICE FRAMEWORKS
COMPARATIVE STUDY OF VARIOUS PLATFORM AS A SERVICE FRAMEWORKS
ijccsa
 
Serverless architectures-with-aws-lambda
Serverless architectures-with-aws-lambdaServerless architectures-with-aws-lambda
Serverless architectures-with-aws-lambda
saifam
 
Cloud Computing Serverless Architecture
Cloud Computing Serverless ArchitectureCloud Computing Serverless Architecture
Cloud Computing Serverless Architecture
YASH Technologies
 
AWS Lambda Documentation
AWS Lambda DocumentationAWS Lambda Documentation
AWS Lambda Documentation
Whizlabs
 
Aws serverless multi-tier_architectures
Aws serverless multi-tier_architecturesAws serverless multi-tier_architectures
Aws serverless multi-tier_architectures
Devthilina Abayaratne
 
Moving Your Enterprise to the Cloud
Moving Your Enterprise to the CloudMoving Your Enterprise to the Cloud
Moving Your Enterprise to the CloudImesh Gunaratne
 
Serverless Frameworks.pdf
Serverless Frameworks.pdfServerless Frameworks.pdf
Serverless Frameworks.pdf
Simform
 
Cloud service providers
Cloud service providersCloud service providers
Cloud service providers
AgnihotriGhosh1
 
Deep Dive on Serverless Stack
Deep Dive on Serverless StackDeep Dive on Serverless Stack
Deep Dive on Serverless Stack
Amazon Web Services
 
Cloud computing
Cloud computingCloud computing
Cloud computing
gd1410
 

Similar to Building Cross-Cloud Platform Cognitive Microservices Using Serverless Architecture (20)

Building Serverless Microservices Using Serverless Framework on the Cloud
Building Serverless Microservices Using Serverless Framework on the CloudBuilding Serverless Microservices Using Serverless Framework on the Cloud
Building Serverless Microservices Using Serverless Framework on the Cloud
 
Serverless Architecture
Serverless ArchitectureServerless Architecture
Serverless Architecture
 
Service Models
Service ModelsService Models
Service Models
 
Testing of Serverless Application on Amazon WebService Cloud
Testing of Serverless Application on Amazon WebService CloudTesting of Serverless Application on Amazon WebService Cloud
Testing of Serverless Application on Amazon WebService Cloud
 
Aws interview questions and answers
Aws interview questions and answersAws interview questions and answers
Aws interview questions and answers
 
Aws serverless multi-tier_architectures
Aws serverless multi-tier_architecturesAws serverless multi-tier_architectures
Aws serverless multi-tier_architectures
 
AWS Serverless Introduction (Lambda)
AWS Serverless Introduction (Lambda)AWS Serverless Introduction (Lambda)
AWS Serverless Introduction (Lambda)
 
Serverless Architectures
Serverless Architectures Serverless Architectures
Serverless Architectures
 
AWS Interview Questions and Answers -CREDO SYSTEMZ.pdf
AWS Interview Questions and Answers -CREDO SYSTEMZ.pdfAWS Interview Questions and Answers -CREDO SYSTEMZ.pdf
AWS Interview Questions and Answers -CREDO SYSTEMZ.pdf
 
Comparative Study of Various Platform as a Service Frameworks
Comparative Study of Various Platform as a Service Frameworks Comparative Study of Various Platform as a Service Frameworks
Comparative Study of Various Platform as a Service Frameworks
 
COMPARATIVE STUDY OF VARIOUS PLATFORM AS A SERVICE FRAMEWORKS
COMPARATIVE STUDY OF VARIOUS PLATFORM AS A SERVICE FRAMEWORKSCOMPARATIVE STUDY OF VARIOUS PLATFORM AS A SERVICE FRAMEWORKS
COMPARATIVE STUDY OF VARIOUS PLATFORM AS A SERVICE FRAMEWORKS
 
Serverless architectures-with-aws-lambda
Serverless architectures-with-aws-lambdaServerless architectures-with-aws-lambda
Serverless architectures-with-aws-lambda
 
Cloud Computing Serverless Architecture
Cloud Computing Serverless ArchitectureCloud Computing Serverless Architecture
Cloud Computing Serverless Architecture
 
AWS Lambda Documentation
AWS Lambda DocumentationAWS Lambda Documentation
AWS Lambda Documentation
 
Aws serverless multi-tier_architectures
Aws serverless multi-tier_architecturesAws serverless multi-tier_architectures
Aws serverless multi-tier_architectures
 
Moving Your Enterprise to the Cloud
Moving Your Enterprise to the CloudMoving Your Enterprise to the Cloud
Moving Your Enterprise to the Cloud
 
Serverless Frameworks.pdf
Serverless Frameworks.pdfServerless Frameworks.pdf
Serverless Frameworks.pdf
 
Cloud service providers
Cloud service providersCloud service providers
Cloud service providers
 
Deep Dive on Serverless Stack
Deep Dive on Serverless StackDeep Dive on Serverless Stack
Deep Dive on Serverless Stack
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 

Recently uploaded

Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 

Recently uploaded (20)

Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 

Building Cross-Cloud Platform Cognitive Microservices Using Serverless Architecture

  • 1. Srini Karlekar – Director, Software Engineering, Capital One. Twitter: @skarlekar LinkedIn: skarlekar
  • 2.  Serverless Architectures are those models where the applications logic provided by the Developer is run on stateless, compute containers that are provisioned and managed by a provider.  Typically these compute instances are ephemeral (short-lived for the duration of the request-response cycle), typically runs a function and triggered through an event.  Due to the on-demand provisioning nature of this architecture, the systems built using Serverless technologies are inherently scalable and highly responsive under load. 2
  • 3.  The introduction of function as a service (faaS) as Lambda by Amazon in re:Invent, Nov 2014 (and out of beta in late 2015) created a momentum for "serverless" platform architecture. AWS Lambda was soon followed by most major cloud platform vendors, including IBM, Microsoft, Google and, more recently, Oracle. Serverless is a cloud-native platform model.  Per Gartner, by 2022 most cloud architectures will evolve to a fundamentally serverless model rendering the cloud platform architectures dominating in 2017 as legacy architectures1.  Serverless is a cloud-native platform model and reflects the core-promise of cloud- computing by offering agility and capability on demand at a value price. 31. The Key Trends in PaaS, 2017 - Published: 31 January 2017 ID: G00313016
  • 4.  FaaS - The technique of building applications using Serverless architecture.  Cost Efficiency – Pay per execution model is most efficient at managing costs.  Ephemeral – Short-lived process triggered via event.  Auto-scaling – Compute resources are provisioned granularly per request.  Event-driven – Functions respond to events such as http, file drop, alerts, timer, topics etc  Microservices – Modules built to satisfy a specific goal and uses a simple, well-defined interface. 4
  • 5.  State - Due to the ephemeral nature of the FaaS architecture, the state of your application should be managed externally from the FaaS infrastructure or off-loaded to a cache or data-base.  Duration - Because of the on-demand provisioning and low-cost nature of the FaaS solution there is a restriction on how long your functions are allowed to run. To keep the price low - as you are billed by minutes of usage, some providers such as Amazon AWS and Microsoft Azure restrict the duration of time a function is allowed to process a request. 5
  • 6.  Deployment & Resource Limits - Some providers such as AWS have deployment limits on the size of the deployment package, code and libraries that can be deployed in the package.  This could be severely limiting for some applications such as image processing functions that depend on large libraries that have to be packaged along with the code.  Additionally, there are limits on the number of concurrent function executions, ephemeral disk capacity (temp space) etc.  While some of these limits are soft limits and can be reconfigured per function by working with the providers, others are hard limits and will force you to reevaluate the choice of your design. 6
  • 7.  Latency - Due to the on-demand provisioning nature of the FaaS infrastructure, applications that uses languages such as Java/Scala that require a longer start time to spin up JVMs may encounter longer runtime.  Having said that, providers optimize the infrastructure spin- ups based on the usage patterns of the functions.  On the other hand, due to the interpreted nature of Python and Javascript, functions written in these languages may not see a significant difference in latency between a PaaS and FaaS offering. 7
  • 8. While there are new providers entering the market to exploit the Serverless wave, the following rule the roost:  Amazon with its AWS Lambda,  Microsoft with its Azure Functions,  Google with its Google Functions and  IBM with its Openwhisk. 8
  • 10. 10
  • 11.  Organizations want to diversify risk and hence do not want to be bound to a single provider.  While not having to manage infrastructure by using serverless functions is nice, having to deal with hundreds of functions in a project between multiple providers, managing buckets, messaging and permissions becomes an issue in itself.  While many providers are entering into the Serverless field to make developing cloud-native applications easy, you are still bound to idiosyncrasies of the provider when it comes to their FaaS offering.  Not only do you have to learn the different terminologies used by the various providers, you will have to learn how to use their offerings on their respective consoles or CLI (Command Line Interface). 11
  • 12.  The Serverless Framework is an MIT open-source project, actively maintained by a vibrant and engaged community of developers and provides robust plugins for various FaaS providers and allows to extend it when needed.  The Serverless Framework allows you to provision and deploy REST APIs, backend services, data pipe-lines, and other uses cases by providing a framework and CLI to build serverless services across many providers by abstracting away provider-level complexity.  The Serverless Framework is different than other application frameworks because:  It manages your code as well as your infrastructure  It supports multiple languages (Node.js, Python, Java, and more) 12
  • 13. Serverless Framework consists of the following core concepts: Service Function Events Resources Plugins 13
  • 14. Service - The unit of organization. It's where you define your Functions, the Events that trigger them, and the Resources your Functions use, all in one file titled serverless.yml. More information at: https://goo.gl/9SKBvx An application can have multiple services and hence multiple serverless.yml files. 14
  • 15. Functions - A Function is an independent unit of deployment. It manifests itself as a Lambda or Azure Function depending upon the provider. It's merely code, deployed in the cloud, that is most often written to perform a single job such as:  Saving a user to the database  Processing a file in a database  Performing a scheduled task 15
  • 16. Anything that triggers an Function to execute is regarded by the Framework as an Event. Events on AWS are:  An AWS API Gateway HTTP endpoint request (e.g., for a REST API)  An AWS S3 bucket upload (e.g., for an image)  A CloudWatch timer (e.g., run every 5 minutes)  An AWS SNS topic (e.g., a message)  A CloudWatch Alert (e.g., something happened) When you define an event for your functions in the Serverless Framework, the Framework will automatically create any infrastructure necessary for that event (e.g., an API Gateway endpoint) and configure your Functions to listen to it. 16
  • 17. Simply put, events are the things that trigger your functions to run. If you are using AWS as your provider, all events in the service are anything in AWS that can trigger an AWS Lambda function, like an S3 bucket upload, an SNS topic, and HTTP endpoints created via API Gateway. Upon deployment, the framework will deploy any infrastructure required for an event (e.g., an API Gateway endpoint) and configure your function to listen to it. 17
  • 18. Resources are infrastructure components which your Functions uses. If you use AWS as you provider, then resources are:  An AWS DynamoDB Table (e.g., for saving Users/Posts/Comments data)  An AWS S3 Bucket (e.g., for saving images or files)  An AWS SNS Topic (e.g., for sending messages asynchronously) Anything that can be defined in CloudFormation is supported by the Serverless Framework The Serverless Framework not only deploys your Functions and the Events that trigger them, but it also deploys the infrastructure components your Functions depend upon. 18
  • 19. 19 An example of resources in Serverless Framework using AWS as provider:
  • 20. 20 Serverless Framework needs access to your cloud provider account credentials to deploy resources on your behalf. For AWS you can use AWS CLI (aws configure). Azure is more involved. Following links provide excellent guidance on setting up the credentials for various providers currently supported on the Serverless Framework. AWS - https://serverless.com/framework/docs/providers/aws/guide/credentials/ Azure - https://serverless.com/framework/docs/providers/azure/guide/credentials/ Google - https://serverless.com/framework/docs/providers/google/guide/credentials/
  • 21. 21 Create a new service using the Python template on Amazon, specifying a unique name and an optional path for your service. serverless create --template aws-python --name helloWorld --path helloWorldService Serverless framework will now create the service declaration for the helloWorld service in directory helloWorldService.
  • 22. 22 Serverless Framework translates the service declaration in the serverless.yml file into a Cloud Formation or Resource Manager template depending upon the provider you choose. To deploy your service, all the functions and provision the resources, enter: serverless deploy --verbose To deploy a single function after making changes to it, enter: serverless deploy function --function <myfunction> --verbose
  • 23. 23 Serverless Framework allows you to invoke a function locally for testing or invoke a deployed function. To invoke your function locally, enter: serverless invoke local --function <myfunction> --log To invoke a deployed function, enter: serverless invoke function --function <myfunction> --stage <my stage> --region <myregion> Note: If you omit the stage and region option, the default stage (dev) and region specified in your provider configuration will be used.
  • 24.  Cognitive Services are machine learning services that makes your applications more intelligent, engaging and discoverable.  These cognitive services expands on machine learning APIs and enables developers to easily add intelligent features – such as emotion and video detection; facial, speech and vision recognition; and speech and language understanding – into their applications.  The leading cloud providers such as Google, Amazon, Microsoft and IBM provide a portfolio cognitive services that are API-driven and easy to use.  These pre-packaged, API-driven cognitive function as a service is also called AIaaS or Artificial Intelligence as a Service.  AIaaS service is billed in the same fashion as other serverless services for the compute and storage by the minute unless noted otherwise by the provider. 24
  • 25. 25
  • 26. 26
  • 27. 27
  • 28. 28
  • 29. 29
  • 30. 30
  • 31. 31  BotChehara is a Slack Bot that recognizes pictures of celebrities, famous landmarks and extracts texts from pictures of documents. Chehara is Hindi for Face. BotChehara was inspired by the SMSBot faces (see: http://github.com/skarlekar/faces).  BotChehara is 100% Serverless AIaaS1 micro-service built on top of the Serverless Framework and uses Python, SlackAPI, AWS StepFunctions, AWS Rekognition and Google Vision API. You can invite BotChehara to your SlackWorkspace.  Whenever a picture is posted on the invited channel, BotChehara will analyze the picture to identify faces of celebrities, famous landmarks and post the biography or description & map of the landmark back to the channel. If a picture of a scanned document or signage is uploaded, the bot detects text and posts the extracted raw text back to the channel. BotChehara code repository, installation guide and usage at: https://github.com/skarlekar/chehara
  • 32. 32
  • 33. 33For details go to: http://bit.ly/bcinstallflow
  • 34. 34For details go to: http://bit.ly/bceventflow
  • 35. 35For details go to: http://bit.ly/bcorch
  • 36. 36 The CelebritySleuth application can be cloned from: https://github.com/skarlekar/chehara For Installation, Deployment and Usage instructions go to: http://bit.ly/chehara
  • 37. 37 For further demonstration of using Serverless Framework to Deploy & Manage Serverless Micro-services across AWS and Google Cloud Platforms, see: https://github.com/skarlekar/aws-gcp-proxy-serverless This is an simple tutorial to demonstrate how to deploy multiple services on different cloud providers using the Serverless Framework. More specifically, this tutorial walks you through deploying an image detection service on Google Cloud Platform (GCP) and managing it using a proxy service running on Amazon Web Service. Both the services on either platform is 100% serverless. The image detection service running on GCP uses Google's FaaS solution viz., Cloud Functions and the proxy running on AWS uses Amazon's FaaS solution viz., Lambda.
  • 38. 38 To understand the concept of Serverless and explore the differences between Serverless Architecture and Serverless Framework go to: http://bit.ly/slswhite

Editor's Notes

  1. The technique of building applications using Serverless architecture is known as FaaS (Function as a Service). The reason becomes clear when you contrast FaaS applications with the traditionally built applications or PaaS (Platform as a Service) where there is a perpetual process running on a server waiting for HTTP requests or API calls. In FaaS there is no perpetual process (for the most part) but an event mechanism that triggers the execution of a piece of code, usually just a function. You still need a perpetual gateway that will field your API calls to start the events to cascade. The other key operational difference between FaaS and PaaS is scaling. With most PaaS solutions you still need to worry about scale. With FaaS the compute resources are provisioned at a request level. You cannot get the same level of granularity with PaaS applications even if you set it to auto-scale. As a result of this, FaaS applications are extremely efficient when it comes to managing cost.