A microservice attempts to address a single concern, such as a data search, logging function, or web service function . This approach increases flexibility—for example, updating the code of a single function without having to refactor or even redeploy the rest of the microservices architecture.