Read the full Article originally published by published by Container Journal
This is part two of lessons learned from modernizing legacy applications to a microservices architecture. You can check out part one here.
Part one focused on organizational lessons learned. This segment is more technical, and covers some of the challenges encountered when moving to Kubernetes/OpenShift-based microservices.
Here are the technical lessons shared in the article:
- Experiment with different microservices communication patterns before committing to any one.
- Use shadow releases the right way.
- Isolate performance testing for each microservice.
- Don’t confuse memory management between Java and Kubernetes.
- Prioritize contract testing over end-to-end testing for microservices.
- Don’t ignore the [connection] pools, but mind the queues.
- Complex distributed systems will fail – plan for it.
- Leverage best practices for Kubernetes health endpoints to achieve self-healing.
We hope that both these technical lessons learned – and the organizational lessons – are useful and help you in migrating your legacy applications to microservices. Don’t hesitate to reach out with comments and best practices or to learn more about how we help companies unlock the power of modern technology. Contact Us