About Microservices, Containers and their Underestimated Impact on Network Performance
Nane Kratzke
arXiv e-Print archive - 2017 via Local arXiv
Keywords:
cs.DC
First published: 2017/09/14 (7 years ago) Abstract: Microservices are used to build complex applications composed of small,
independent and highly decoupled processes. Recently, microservices are often
mentioned in one breath with container technologies like Docker. That is why
operating system virtualization experiences a renaissance in cloud computing.
These approaches shall provide horizontally scalable, easily deployable systems
and a high-performance alternative to hypervisors. Nevertheless, performance
impacts of containers on top of hypervisors are hardly investigated.
Furthermore, microservice frameworks often come along with software defined
networks. This contribution presents benchmark results to quantify the impacts
of container, software defined networking and encryption on network
performance. Even containers, although postulated to be lightweight, show a
noteworthy impact to network performance. These impacts can be minimized on
several system layers. Some design recommendations for cloud deployed systems
following the microservice architecture pattern are derived.