At my company, we plan to transfer our internal solution, which is a huge monolith, to a sexier microservice architecture.
So far, we have compared many technologies, and we are likely to use the AWS infrastructure using AWS EC2 Container Services (ECS). Our microservices will be wrapped in Docker containers.
We have already deployed containers and set up automatic scaling and load balancing. Everything works great.
However, we are looking for API Gateway technology that allows us to call several microservices with only one request for the client.
The idea is to develop an architecture that looks like Netflix one: http://techblog.netflix.com/2013/01/optimizing-netflix-api.html
For instance:
If the customer (website) wants to receive the customerโs basket. It will send a Get request to the API.
Firstly, I would like our gateway to call a "user" microservice, which will return the user information and the list of identification product that contains its basket:
{ "name": "john", ...., "cart": [1,2,3] }
Then, without going directly to the client, the gateway will call the microservice "product" to moisten Json with information about each product.
{ "name": "john", ...., "cart": [ {"id": 1, "name": "Iphone", ...}, {"id": 2, "name": "Ipad", ...}, {"id": 3, "name": "Ipod", ...} ] }
So my question is: do you know a good technology that could do the job?