Microservices in a deep look
Options for architecting your microservices:
- agility can increase if the impact of the release is small;
- small identifiable pieces, which are doing one thing well; only the contact is important, not a language of choices for each of microservice;
- fault-tolerance delivery.
Containers: Amazon ECS, EKS, AWS Fargate.
Serverless AWS Lambda
What if I can not decide?
Do you really need microservices? Why not to go serverless..
This example shows how importing the code happening. Lambda will keep it in the container. This code executes on the cold start.
Containers best practices
- Reduce size of your docker images. Time to pull images from docker registry impacts your application startup time.
- Optimize pods: keep them lightweight, admission controllers add overhead!
- Put a limit on the max resources of a pod.
Conclusions
There is no silver bullet!