Serverless computing or Serverless Architecture or Function as a Service (FaaS) is simply developing and deploying application without worrying about infrastructure or underlying server for hosting the application.
Serverless computing means developers and DevOps personnel don't need to deploy, configure, or manage servers or infrastructure for the application.
Serverless doesn’t mean no server.
It is win-win model for scalable, segregated applications in cloud.
An organization could opt for serverless where there is more background tasks, independent working services and high latency and variable load, then serverless could be considered.
It is not the approach suitable for all type of applications, as a business or organization it is recommended to assess current infrastructure, business needs and scalability, maintainability of applications while adopting serverless.
In serverless architecture independent code service or code function simply refer as “Function” is hosted by cloud service provider and it works on event driven approach.
The developers write code in project type “Function” and upload it in cloud and cloud service run it automatically in its infra, for action event triggers could be used, such as timer trigger or HTTP trigger or API call etc.
Companies are leveraging serverless architectures for the following reasons
In the serverless model, a cloud provider manages the routine work; they provision, scale, and maintain an underlying infrastructure.
The cloud provider handles several tasks, such as operating system management, security patches, file system and capacity management, load balancing, monitoring, and logging.
Developers can focus on functional tasks yielding more productivity for developers.
It allows organization to better optimize resources.