Don’t spin up servers anymore to deploy your applications. Servers are costly and involves regular maintenance and security patching to keep your servers safe from hackers which means additional pay checks for IT support. This adds up operational cost and burden on startups where fund is limited most of the cases.
Moreover during initial phase of a startup product ( or a new product from a popular giant) you don’t know how much traffic your product is going to attract. Your product may get occasional traffic through out the day but as you have provisioned your servers, you are paying for 24 hours, 7 days.
Server-less architecture gives you the flexibility to pay only for the resources used by your application without running a fleet of EC2 containers, Elastic Load Balancers when most of the time they sit idle.
Use Amazon API Gateway which is a fully managed service that makes it easy for developers to create, publish, maintain, monitor, and secure APIs at any scale. Amazon API Gateway handles all the tasks involved in accepting and processing up to hundreds of thousands of concurrent API calls, including traffic management, authorization and access control, monitoring, and API version management. Amazon API Gateway has no minimum fees or startup costs. You pay only for the API calls you receive and the amount of data transferred out.
Use AWS Lambda for your backend which lets you run code without provisioning or managing servers. You pay only for the compute time you consume – there is no charge when your code is not running. Lambda supports variety of popular programming languages such as NodeJS, Java, Python, C# and Go.
Use AWS DynamoDB for your storage which is a fully managed NoSQL database for all applications that need consistent, single-digit millisecond latency at any scale. It is a fully managed cloud database and supports both document and key-value store models.
Use AWS S3 to host your static web assets which is highly available and durable object storage. Your assets are automatically replicated to multiple availability zones within same region for high availability. Use AWS CloudFront to serve your static web content from S3 bucket. Amazon CloudFront is a global content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to your viewers with low latency and high transfer speeds. CloudFront offers a simple, pay-as-you-go pricing model with no upfront fees. CloudFront can server up to 10,000 request per seconds.
OfficeBot ( https://officebot.info ) was built entirely on server-less architecture as described in above diagram.