Microservices architecture
In the case of software composed of small independent services communicating over well-defined APIs, microservices are an architectural and organizational approach to software development. Small, self-contained teams own those services.
A microservices architecture allows teams to create independent, autonomous, loosely coupled, and independently deployable units.
Characteristics of microservices
The following are the characteristics of the microservices:
- Services are independently deployable and loosely coupled units
- Each service has its own code base
- Autonomous services
- Microservices are small and independent
- Each service can scale independently
- Technology agnostic
Microservices are loosely coupled and highly cohesive. A highly cohesive microservice wraps its dependencies, logic, and data, and has a single responsibility inside a well-defined domain. When two systems are constructed so that modifications to one...