Microservices is a software methodology for designing and developing software. It is an architectural style that structures an application to be composed of multiple smaller services. Each service exposes its operation via well-defined interfaces and is responsible for a single business requirement.
These services are independent of each other and this style of architecture consequently makes the application a collection of loosely-coupled services. The concept of microservices is aimed at developing an application that is loosely coupled, easily scalable, easily testable, and delivers the piece of software in a shorter interval of time.
Different microservices work together to form a larger application as a whole. They also communicate via unified, standard, well-defined interfaces.