- Extending Docker
- Russ McKendrick
- 306字
- 2021-07-02 16:38:27
Everyone should be using Docker?
So, is it really that simple, should everyone stop using virtual machines and use containers instead?
In July 2014, Wes Felter, Alexandre Ferreira, Ram Rajamony, and Juan Rubio published an IBM research report titled An Updated Performance Comparison of Virtual Machines and Linux Containers and concluded:
"Both VMs and containers are mature technology that have benefited from a decade of incremental hardware and software optimizations. In general, Docker equals or exceeds KVM performance in every case we tested. Our results show that both KVM and Docker introduce negligible overhead for CPU and memory performance (except in extreme cases). For I/O intensive workloads, both forms of virtualization should be used carefully."
It then goes on to say the following:
"Although containers themselves have almost no overhead, Docker is not without performance gotchas. Docker volumes have noticeably better performance than files stored in AUFS. Docker's NAT also introduces overhead for workloads with high packet rates. These features represent a tradeoff between ease of management and performance and should be considered on a case-by-case basis."
The full 12-page report, which is an interesting comparison to the traditional technologies we have discussed and containers, can be downloaded from the following URL:
Less than a year after the IBM research report was published, Docker introduced plugins for its ecosystem. One of the best descriptions I came across was from a Docker software engineer, Jessica Frazelle, who described the release as having batteries included, but replaceable, meaning that the core functionality can be easily replaced with third-party tools that can then be used to address the conclusions of the IBM research report.
At the time of writing this book, Docker currently supports volume and network driver plugins. Additional plugin types to expose more of the Docker core to third parties will be added in the future.
- Learning ArcGIS Pro 2
- Oracle 12c中文版數(shù)據(jù)庫管理、應(yīng)用與開發(fā)實(shí)踐教程 (清華電腦學(xué)堂)
- Java程序設(shè)計(jì)與計(jì)算思維
- Functional Programming in JavaScript
- Python 3破冰人工智能:從入門到實(shí)戰(zhàn)
- Easy Web Development with WaveMaker
- Python編程實(shí)戰(zhàn)
- Java EE 8 Application Development
- NGINX Cookbook
- IBM Cognos Business Intelligence 10.1 Dashboarding cookbook
- Python入門很輕松(微課超值版)
- Python期貨量化交易實(shí)戰(zhàn)
- Java Web開發(fā)基礎(chǔ)與案例教程
- 深入理解Kafka:核心設(shè)計(jì)與實(shí)踐原理
- Building UIs with Wijmo