Motive: How a 3 tier application stack can be migrated
to AWS Lambda, what is pros and cons associated and expected serverless
architecture.
What is mean by Serverless Concept: A serverless architecture is a way to build and run applications and services without having to manage infrastructure. Your application still runs on servers, but all the server management is done by AWS. You no longer have to provision, scale, and maintain servers to run your applications, databases, and storage systems.
What is AWS Lambda and its working:
AWS Lambda is a managed service of AWS, Lambda is a function as a
service and was launched in 2014. This service automatic provision a
server when a need/call for a function received and release the server
once the call is over. The time taken in provision of service (when
function call received) may vary from few seconds to 10 minutes to
respond to first function query. If there is no function call for next
15 minutes then it starts release of the server and follow the same way
for further process. This means theoretically, there may be reasonable
delay to the request in such case for every first call after a timeout
period.
Pros and Cons of using serverless services managed by AWS:
Pros:
No operating systems to choose, patch, or manage.
No servers to monitor, scale-out, or secure.
No risk to infrastructure cost by over-provisioning.
No risk to application performance by under-provisioning.
Reduced Cost of Execution
Cons:
No Control Over Environment
More Complex Call Patterns
Less control on Database compared to hosted on EC2
Need to investigate if this architecture suffice compliance requirement like PCIDDS or other if applicable as application stack's environment is in hand of AWS support.
Pros and Cons of using serverless services managed by AWS:
Pros:
No operating systems to choose, patch, or manage.
No servers to monitor, scale-out, or secure.
No risk to infrastructure cost by over-provisioning.
No risk to application performance by under-provisioning.
Reduced Cost of Execution
Cons:
No Control Over Environment
More Complex Call Patterns
Less control on Database compared to hosted on EC2
Need to investigate if this architecture suffice compliance requirement like PCIDDS or other if applicable as application stack's environment is in hand of AWS support.
AWS S3: For Presentation Tier
AWS Application Gateway: For Integration Tier
AWS Lambda: DAO Tier
AWS Database: DB Tier