Seven Deadly Sins of Microservices

The Microservice approach is gaining a lot of traction at the minute however not all of it is smooth sailing for development teams. A number of anti-patterns have been suggested in the following article and video recording:

Personally I have to admit to observing several of these issues first hand. In the case of the Sloth sin there is a natural tendency for some teams to enforce DRY principles to the extreme. One such example of this is the desire to create a single common domain to be shared across Microservices. I personally feel that this should be avoided at all costs as it results in high degrees of efferent coupling across applications. Any benefits this approach might provide will ultimately work against the Microservice desire to encapsulate and segregate common functionality. In addition the net effect will often require bigger releases to accommodate basic changes to the domain.