Microservice - Docker
Docker
Used to help build micro services and multiple versions of software
Microservces

Architectural style that creates an application with modules that are loosly associated with each other
Collections of modules independently developed, deployed, and maintained
Advantages
- Improves Scalability and Productivity - projects can be divided into smaller units
- Integrates well with legacy systems - impove and replace old parts of the system
- Sustainable Development - easily maintainable
- Cross-Functionality - developing in this way allows for teams all around the world
Disadvantages
- Deployment requires more effort - since there are more deployable units
- Testing must be independent - Micro services must be tested together, and one micro service can block the test stage of another micro service
- Hard to change multiple micro services