将应用程序 docker 化会增加应用程序的启动时间吗?
Posted
技术标签:
【中文标题】将应用程序 docker 化会增加应用程序的启动时间吗?【英文标题】:Will dockerizing the application increase the startup time of application? 【发布时间】:2020-09-20 02:06:31 【问题描述】:我们有一个 java 应用程序,它之前在没有 docker 的情况下运行。最近我们对应用进行了docker化,启动时间比以前多了。所以我只想问,dockerizing应用会不会增加应用的启动时间?
【问题讨论】:
取决于服务器/虚拟机拥有的资源。 【参考方案1】:应该没有显着差异,但您确实需要处理 docker 层,并且 docker 引擎本身可能具有较少的资源,例如 CPU 和内存以及文件系统驱动程序,这可能会产生一些影响。
【讨论】:
【参考方案2】:通常并不是真正的容器,它只是一个使用许多内核和 linux 工具来工作的工具集。
但是,如果您使用 Docker for Mac 或 Docker for Windows,您可能会看到性能下降,因为这些 2 解决方案使用小型 VM 来运行,并且默认情况下不会使用所有可用的 CPU 内核和 RAM。
而且,如果您在 Windows 或 Mac 上使用绑定挂载卷,则性能可能会下降更多,因为 IO 不如没有 docker 快。
【讨论】:
以上是关于将应用程序 docker 化会增加应用程序的启动时间吗?的主要内容,如果未能解决你的问题,请参考以下文章
增加 Azure WebApp for Containers 的启动超时
在写入已装入目录中的文件时,docker容器会增加内存使用量
CentOS/SwarmPit/Docker/Sonarqube 启动时出错:最大虚拟内存区域 vm.max_map_count [65530] 太低,至少增加到 [262144]