Traditional n-Tier enterprise application development has been popular for its ability to decouple the underlying infrastructure, business logic processing and user presentation aspects of the application. As demand grows for these systems/applications to be highly scaleable and highly available, the heavyweight components of the application, the infrastructure/platform, start to become heavier, thereby increasing the paradigm of higher infrastructure costs, higher maintenance costs, and also increasing heterogeneous security requirements. With the evolution of API's and Micro-services and API gateways, the "Server less Architecture" started to evolve. In server-less application architecture, the primary components are the "API Gateways", "Powerful Client Side Scripting" and "Robust API Repository". This paradigm also contains 3-tiers: "Presentation" "Business" and "Data" tiers. AceInfo's enterprise application architecture design and development is based on the approach of "API First", with strong notions of "Create a Platform not an Application", and helps us leverage on the "Server less Architecture". AceInfo's approach involves in idenitifying features/functionalities of the application that are candidate for becoming a platform functionality are built as API's. Once the API's are in place, we utilize scripts like "Node.js", "Python" etc to make the API calls that render the user with required functionality, via the presentation layer (multi device).
The Serverless Logic Tier The logic tier of the three-tier architecture represents the brains of the application. This is why integrating Amazon API Gateway and AWS Lambda to form your logic tier can be so revolutionary. The features of the two services allow you to build a server-less production application that is highly available, scalable, and secure. Your application could use thousands of servers; however, by leveraging this pattern you do not have to manage a single one. In addition, by using these managed services together you gain the following benefits:
- No operating systems to choose, secure, patch, or manage.
- No servers to right size, monitor, or scale out.
- No risk to your cost by over-provisioning.
- No risk to your performance by under-provisioning.