As buzz word in tech industry, I got chance to work on micro-services architecture based project as individual contributor. So I will be sharing introduction about micro-services, hope It will help those who want to know about micro-services.
Lets start with Legacy or Monolithic Architecture.
Monolithic And It’s Drawbacks
If you are working on a project or sub module which serves multiple business requirements, you are working on monolithic project.
If we discuss about drawback, try to remember time when you have developed a functionality and want to release that to production, You have to test complete functionality of your service even if that is not at all related to your new development.
If you are a super software engineer who have written test cases with 100 % coverage you have to test complete functionality.
In case of manual testing it is hectic and error prone process.
If we talk about in terms of scaling, then you have to run multiple instance of same monolithic service even if you want to increase performance of single business requirement and if it is a heavy application it will cost more to run multiple instances.
Microservices The Saver
They are small modules of a big monolithic application who serves only one business responsibility with knowledge for others.
As I am working with them, So I will share few things which I liked about it
It is really helpful and more confident testing as we have to deal with only single business responsibility.
If you want to scale you can run multiple instances of microservices which are needed to scale, or where you want high performance.
I will be sharing soon How to start with microservices.