In this blog post I will explain what is Serverless Architecture.
Serverless architecture is a way to build and run applications and services without having to manage the infrastructure behind it.
When we say Serverless that doesn’t mean that there is no server attached to your application. Your application still runs on servers, of course, but the server management is done by your cloud provider. Hence you no longer have to provision, scale, and maintain services to run your applications, databases, or storage systems.
With serverless architecture, you can execute your code only when needed, and no longer need to keep your servers running at all times while also being able to scale automatically from a few requests per day to thousands of requests per second. And you only pay for the compute time you consume. There is no charge when your code’s not running.
Why should we use serverless?
Building serverless applications means that your developers can focus on their core product, instead of worrying about managing and operating servers, or runtimes, either in the cloud or on-premises.
This reduced overhead lets developers reclaim time and energy that can be spent on developing great products, with scale, and that are reliable.
There are four main benefits.
- No server management. : There’s no need to provision or maintain any servers. There’s no software or runtimes to install, maintain, or administer. All of this is done for you by a third-party vendor.
- Flexible scaling. Your application’s going to be scaled automatically by adjusting its capacity through toggling the units of consumption. For example, throughput or memory, rather than units of individual servers.
- Pay for value. You pay for a consistent execution duration, rather than by the server unit. You do not require to run your servers 24x7.
- Automated high availability. Serverless provides built-in availability and fault tolerance. You don’t need an architect for these capabilities since the servers running the application provide them by default. So now you can put in more time on developing your core product.