我有一个应该在Ubuntu OS中多次运行的服务器应用程序,我想使用docker。
这里获得更好性能的最佳方案是什么?
1-使用docker和Ubuntu图像在单个容器中运行所有实例
或
2-在单独的容器中运行每个应用的单个实例
选项2似乎对我的解决方案更好,但我想知道在这种情况下浪费了多少系统资源,并且每次都加载Ubuntu?
答案 0 :(得分:2)
您应该每个实例使用一个容器,因为只有这样您才可以扩展,运行和单独管理它们。如果没有那个docker就没有意义,VM就不会那么不同了。
如果您的应用程序在多次使用时不会使用更多的资源,则性能不会降低。
单独使用Docker容器非常便宜。它们共享内核并使用Copy on Write,因此它们不需要比单个容器更多的空间。
使用100个Ubuntu容器自行测试:
docker service create --name test ubuntu sleep 9999
docker service scale test=100
等一会儿
docker service ls
你看到它接近没有资源