docker - 既然 docker 容器是独立运行的,那么基于同一个镜像的多个容器的代码段是否会在内存中重复呢?
问题描述
假设我有一个简单的程序(C 或任何其他语言)。如果我在 Linux 服务器上运行程序的多个实例,我的理解是 Linux 足够聪明,可以为所有实例使用内存中的相同代码段(比如 1MB)。对于正在运行的程序的每个实例,与数据(堆、堆栈等)相关的内存将是分开的。
如果我根据上面的程序创建一个docker镜像并基于这个docker镜像启动多个容器,那么由于容器是独立运行的,linux内核不会为每个容器中的代码段分配内存吗?因此,如果我基于上述程序启动 10 个容器,将创建 10 个代码段,每个代码段大小为 1MB。与不使用 docker 直接在服务器上运行 10 个程序实例相比,这不会导致内存开销吗?
解决方案
推荐阅读
- javascript - mongo db JS .map 尽管在本地主机中工作,但它在 GAE 中不起作用?或者是其他东西
- protocol-buffers - 通过 php sdk 创建会话上下文时出错
- node.js - 从 .json 文件创建 .env 文件
- python - 如何使用硒驱动程序python单击覆盖中的第一个链接
- ajax - 可以在ajax请求的响应中获取django设置的cookies
- reactjs - React:使变量在函数外重用
- ruby - Rails 无法在类初始化方法中生成实例变量以生成 httparty 请求
- python - np.save 生成的文件中的字节偏移量是否始终为 128?
- python - 如何在 Dash scatter 的图中为每个字典设置单独的名称?
- arrays - wp_query 仅从变量数组中返回第一个