In computing, microservices is a software architecture style in which complex applications are composed of small, independent processes communicating with each other using language-agnostic APIs.[1] These services are small building blocks, highly decoupled and focussed on doing a small task,[2][3][4] facilitating a modular approach to system-building