Hey There !
let's talk about microservices.
Basic principles:
Microservices serve only one specific solution to the given problem. For an example, we can retrieve all the list of top 10 movies from the backend of our streaming app.
It can be deployed completely on independent system which do not necessarily have any relation with main system.
It always communicate over http methods.
Umm, Benefits ?
New Developers do not need to understand whole application and can focus on main assigned area.
These services can be developed by independent team according to the requirements.
No programming language barrier for developing microservices. You can choose best language according to need.
Bingo ! if one specific service goes down, take a deep breath your application won't get affected by this failure.
Whoah ! Drawbacks !!
Hard to Monitor end-to-end development
Dependency problems if one microservice depend on other when it is time to roll back changes.
Hard to test
All complexity now bear by network layer as it communicates via network protocols.
Top comments (0)