Disposability, with minimal overhead

The disposability with minimal overhead principle advocates to build applications with minimal startup and shutdown times, and with a graceful shutdown support. In an automated deployment environment, we should be able to bring up or bring down instances as quickly as possible. If the application's startup or shutdown takes considerable time, it will have an adverse effect on automation. The startup time is proportionally related to the size of the application. In a cloud environment targeting auto scaling, we should be able to spin up a new instance quickly. This is also applicable when promoting new versions of services.

In the microservices context, in order to achieve full automation, it is extremely important to keep the size of the application as thin as possible, with minimal startup and shutdown times. Microservices should also consider lazy loading of objects and data.