首页 > 编程知识 正文

查看docker,系统解耦

时间:2023-05-06 15:12:51 阅读:151568 作者:1015

要完全理解去耦状态和半去耦状态,首先需要理解两个概念。 去耦和软件启动过程就是启动软件,让我们的计算机在我们看不见的地方,做了什么操作。

在百度百科中,对于解耦这个词给出的概念如下。

耦合是两种或多种体系或两种运动形式之间通过相互作用相互影响、合作的现象。 解耦是用数学方法将两个运动分离出来处理问题,一般的解耦方法是忽略或简化对研究问题影响较小的一个运动,只分析主要运动。

的启动过程简单地说就是user (用户)外壳(shell )终端) OS ) OS ) lib )仓库)软件)--设备)硬件)。

也就是说,我要启动软件,首先我们登录的用户在shell终端输入启动软件的启动命令,终端将该命令发送到osOS,操作系统识别后,在lib库中输入运行软件所需的仓库文件、文件lib仓库准备环境后,在通知soft软件运行环境已就绪后,soft向Dever发送命令

在上述流程中,我们发现软件的启动必须依赖于OSOS、lib库和设备硬件设备。 然后,结合完全解除的状态、半结合解除的状态、结合解除的部分就是这三个部分。

我们结合图像理解完全解耦和半解耦的状态

完全解除结合的状态

完全解除结合的最好解释是虚拟化。 例如,我们使用的虚拟机软件、virtual box和VMware。 如果要在同一台电脑上同时运行两个相同的软件,将会出现端口冲突等问题。 此时解除耦合,是为了给他提供独立的运行环境。

虚拟化在虚拟机管理程序层实现硬件的物理分割,在分割后的每个空间中安装操作系统,并在这些操作系统上运行所需的软件,从而在同一台计算机上运行的多台系统上执行相同的软件

此时,OSOS、lib库和设备硬件设备被虚拟机管理程序层隔离,不会发生冲突。

半去耦状态

半结合状态,即docker正在运行的状态。

允许在同一环境中同时运行两个相同的软件,并分担软件服务的压力。

直接使用物理计算机上的硬件资源(CPU、MEM、磁盘)和kernel )、lib )。

的lib库等文件在软连接中使用,只要它们与物理计算机完全相同即可。 使用不同的lib文件首次下载。

docker将创建容器层,并作为文件夹存在于系统中。 所有app都在容器层执行。 在容器层运行该软件时,所需的硬件、操作系统和lib库将通过软链接链接链接到容器层。 仅在有不同内核或lib库请求时下载。

那么完全解耦和解耦状态的区别是什么呢?

完全被解除结合的状态在硬件层被直接分割,各APP应用执行的系统和必要的lib程序库文件等个别存在于一个空间内。

半解耦状态是指在hostos上启动docker守护进程,在该守护进程上启动container,app在container上运行,运行所需的lib库、内核等文件,如果与hostos相同,则为hostos 如果不一样的话需要下载。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。