在单个主机中有效使用多个docker容器

Gow*_*vam 6 virtualization load-balancing nginx lxc docker

我有一个运行Nginx,MySQL的物理服务器,并为我的PHP网站提供服务.该服务器具有16 GB RAM的多核处理器.此服务器可以处理一定数量的Web流量.

现在代替这个单一服务器,如果我运行多个docker容器,在其中运行Nginx(App Server)和MySQL(DB Server)的各个实例并在应用程序和数据库容器之间进行负载平衡,它是否能够处理相同数量的流量作为单个服务器处理它还是会更少(性能明智)?

如果我使用具有相同硬件配置而非物理服务器的EC2或Digital Ocean Leaflet等虚拟服务器,性能如何?

Usm*_*ail 4

由于所有进程都在本机主机上运行(您可以在容器外部的主机上运行 ps aux 并查看它们)。开销应该很小。将数据包转发到虚拟主机的网络桥接和 IP 表条目会增加一些 CPU 开销,但我无法想象这会太繁重。

  • 从他们的网站来看,“CoreOS 的设计宗旨是安全性、一致性和可靠性。” 请注意,没有提到任何性能提升。docker的目标是为可重复的应用程序提供隔离的环境。这样,如果一项服务受到损害,主机上的其他服务都是安全的。此外,依赖关系管理变得更加容易,即您可以确保不会因为更新了另一项服务的依赖关系而破坏一项服务。 (2认同)