We had to replace a legacy and exhausting monolithic platform with a family of simple REST APIs for MasterStream. This American company provides wide-range telecom solutions to automate and simplify a supply chain between providers, agents, and customers.
Learn more about them at https://www.masterstreamerp.com/provider-availability
The goal was to design a fully serverless architecture that could reduce the whole system’s operational cost, separate responsibilities among several services, and support scalability out-of-the-box.
While researching, we found that AWS Lambda meets the majority of client’s needs. We choose DynamoDB as the central database because of its high reliability and serverless nature. Compute
Having AWS Lambda as a primary compute service, we no longer needed to maintain the server’s fleet. And with flexible pricing and almost infinite scalability, we’ve designed a cost-effective, robust, and predictable backend. Database
DynamoDB offers high performance but requires rather precise planning and data modeling. By applying DynamoDB’s NoSQL best practices, such as adjacency list and index overloading, we’ve designed an efficient data model keeping data consistency. App integration
Microservices design and asynchronous nature require a stable communication channel. We’ve used Amazon SQS as a queue to decouple services and make processing asynchronous.
API Gateway was used as fully managed RESTful APIs for the lambda-based backend. Besides the scalability, API GW provides many useful options like usage plans, canary releases, and flexible security controls.