Traditional architectures for the provision of digital services, whether they are websites or mobile applications, are almost invariably based on server stacks whose capacities (CPU, RAM, disks) are sized to prevent any risk of service disruption. in case of peak use.
This practice, which allows most of the CIOs to sleep peacefully, is generally considered as “good” but induces fixed operating costs with no real relation to the level of use of the solutions.
On the basis of this observation, the main PAAS (platform as a service) providers have devised solutions for hosting services by offering a rate proportional to the consumption of technical resources (CPU, RAM, disk) induced by the use.
The best-known and most successful service is AWS Lambda (Amazon), although Google and Microsoft are in the running with App Engine and Functions respectively (the services mentioned in the rest of this article are from the AWS ecosystem).
These services make it possible to imagine so-called “server less” architectures based on on-demand resources whose billing reflects the use that is made of them. Platform providers charge the execution time, traffic, storage, etc. resulting from the use of the proposed service.
The AWS platform now provides a range of services to design complete applications based on server less architectures. The main services implemented are:
- Gateway API for securing access points
- Lambda for application code execution
- S3 for file storage
- DynamoDB for the database
- SES for email
It is also possible to create automated information processing services: the integration of event modes makes it possible to trigger processing in response to events (example: operation on a DynamoDB database, filing a file in a database). S3 bucket).
AWS also offers a range of services to automate the testing and deployment of Lambda functions, as well as the configuration of necessary services (APIs, DynamoDB databases, S3 bucket, rights management and security …).
These services include:
- CodeCommit for source code management
- CodeBuild for compilation and testing
- CodeDeploy for feature deployment
- CloudFormation for Service Configuration
- CodePipeline for continuous deployment management
Today server less architectures are particularly suited to headless concepts such as mobile applications or IoT.
Uses are developing rapidly, especially in the field of traditional applications with the adoption of architecture based on micro-services.
It must be said that the levers of motivation are effective:
- Scalable architecture by definition.
- A very attractive pricing, with no threshold effect.
So, when do we start?