Microservice ​
A microservice is defined as a single-purpose, separately deployed unit of software that does one thing really, really well. Because microservices are meant to represent single-purpose functions, they are generally fine-grained. But even if they are large in file size and structure with hundreds of source files, and they do only one task, they could be considered a microservice. The actual service might be very large in file size or structure but will only do one thing. There could be hundreds or thousands of microservices deployed in a project. Can be deployed in docker or VM or may be serverless functions.