One of the principles I love in software is keep it small. This principle is applicable irrespective of what you are talking about--the scope of a variable, the size of a method, class, package, or a component. You would want all of these to be as small as they possibly could be.
Microservices is a simple extension of this principle. It's an architectural style focused on building small capability-based independently deployable services.
There is no single accepted definition of a microservice. We will look at some of the popular definitions: