Re:PostgreSQL Performance on Docker
by michaelneale on Thursday July 10, 2014 @06:42AM
(#8014490)
This comment deserves its own post - and shouting. This is a rather profound point which is lost on almost everyone and makes 99% of docker performance discussions a waste of time for people who should know better.
Blog posts like this one don't start a discussion, don't help anyone, they just get used in random FUD discussions from any and all points of view.
Well, Docker is big news and people are interested in what the performance impact of "using docker" is.
Whether it's accurate or not, people associate Docker with the functionality if facilitates. (i.e., cgroups, namespaces, etc.) so i think it's valid to show the performance impact of running an application from within docker.
Based on my data, they're not 1:1 native performance. I suggest you consider the data before dismissing it.
> Based on my data, they're not 1:1 native performance. I suggest you consider the data before dismissing it.
I think you're conflating his separate points:
"What you -are- benchmarking is namespaces, cgroups, CoW filesystems and your underlying hardware."
"Also worth nothing that compute benchmarks will be absolutely worthless as they -will- be 1:1 native performance"
What you -are- benchmarking is namespaces, cgroups, CoW filesystems and your underlying hardware.
As Solomon has already pointed out as soon as you use a bind mounted volume in Docker parlance you are simply benchmarking your host Linux kernel + host filesystem + host hardware, nothing more. I am unsure of whether Docker is now configuring the cgroups cfq or blkio controllers yet but that could also play a part.
The TLDR is this: Docker doesn't have an impact on performance because it's just glue code, none of Docker itself sits in any of the hot paths. You are better off benchmarking the individual components in the actual hot path. Also worth nothing that compute benchmarks will be absolutely worthless as they -will- be 1:1 native performance (because there are actually no additional moving parts).