CN116126520B - 一种分布式组件协同部署优化方法 - Google Patents
一种分布式组件协同部署优化方法 Download PDFInfo
- Publication number
- CN116126520B CN116126520B CN202211633070.1A CN202211633070A CN116126520B CN 116126520 B CN116126520 B CN 116126520B CN 202211633070 A CN202211633070 A CN 202211633070A CN 116126520 B CN116126520 B CN 116126520B
- Authority
- CN
- China
- Prior art keywords
- container
- redeployment
- execution time
- component
- target system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000005457 optimization Methods 0.000 title claims abstract description 41
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000004364 calculation method Methods 0.000 claims abstract description 26
- 238000012544 monitoring process Methods 0.000 claims abstract description 6
- 230000036961 partial effect Effects 0.000 claims description 13
- 238000013508 migration Methods 0.000 claims description 9
- 230000005012 migration Effects 0.000 claims description 9
- 239000002131 composite material Substances 0.000 claims description 7
- 238000004891 communication Methods 0.000 claims description 4
- 230000000977 initiatory effect Effects 0.000 claims description 3
- 230000000670 limiting effect Effects 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 7
- 238000004519 manufacturing process Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种分布式组件协同部署优化方法,通过移动代理实时监测目标系统各个容器中的组件运行数据,再根据组件运行数据确定是否对目标系统发起重新部署,当发起重新部署时根据目标系统的元数据进行重新部署计算;其中,元数据包括组件所需要的计算资源、容器承载能力以及工作链路的执行时间;根据最终重新部署方案对目标系统进行重新部署,能够在目标系统运行过程中动态自动化地进行重新部署优化计算,优化操作步骤少,并且当系统发生变化时才重新部署计算,能够节约资源。本发明可以广泛应用于组件部署优化技术领域。
Description
技术领域
本发明涉及组件部署优化技术领域,尤其是一种分布式组件协同部署优化方法。
背景技术
分布式制造系统是在当今工业领域占有十分重要的地位。研究动态分布式制造系统的部署优化在提升工厂的生产效率以及灵活性方面有着非常重要的理论意义和实用价值。随着当前技术的发展,系统控制功能需求分散化、智能化,因此需要利用现场总线设备、智能仪器和传感器构造的大型控制系统来进行互连。
以往的分布式制造系统是针对静态生产环境来设计与开发的,在没有受到外部或者内部因素的影响时系统可以顺利地完成所有生产任务。但在实际应用中,分布式制造系统的稳态会因为环境的动态而发生变化。当制造系统中的设备增添、减少或更换时,就需要对分布式制造系统的组件进行重新部署。当环境动态变化时,如果没有合适的调度方案来处理,将会导致系统的性能快速下降。在分布式自动化体系结构中,控制应用程序以通信软件组件(功能块,FB)网络的形式呈现,FB可部署到各种计算节点。然而,功能块部署映射到不同的设备会影响整个系统的性能。因此如何高效率地对分布式制造系统进行部署优化称为一个重要问题。
目前有一种应对不断变化的控制需求的配置计算方法,其实用可满足性模理论(Satisfiability Modulo Theories,SMT)求解器,根据不断变化的控制系统需求中的SMT约束来进行计算部署。并在实现的基础上对增量法和组合法的性能进行了比较,得出在系统变化较小的情况下采用增量法可以获得更好性能的结论,但其由于控制系统需求中的其他约束或目标,所有FB可能需要重新部署。例如,当优化目标相互冲突,则需要对多个目标的顺序或权重进行定义,以避免冲突。而引入新的目标可能会导致当前分布式FBs配置的潜在问题,即所有FBs可能会因为目标的不同而需要重新部署。
还有一种将DES方法与IEC 61499模型相结合,使用重新部署模型创建功能耦合以及端到端延迟,并使用SMT解算器进行FBs重新部署计算的方法,但其采用部署过程为半自动过程,并且没有解决其他目标以及约束的可能性,对于更为复杂的模型,其重新部署的处理时间较长,不适合需要运行时功能的动态自动重新部署场景。
发明内容
有鉴于此,本发明实施例提供一种自动化的分布式组件协同部署优化方法。
本发明实施例提供了一种分布式组件协同部署优化方法,包括:通过移动代理实时监测目标系统各个容器中的组件运行数据;根据所述组件运行数据确定是否对所述目标系统发起重新部署;当对所述目标系统发起重新部署,则根据所述目标系统的元数据进行重新部署计算,得到最终重新部署方案;其中,所述元数据包括组件所需要的计算资源、容器的承载能力以及工作链路的执行时间;根据所述最终重新部署方案对所述目标系统进行重新部署。
可选地,所述根据所述组件运行数据确定是否对所述目标系统发起重新部署,包括以下至少之一:当容器的CPU使用量或内存使用量超出预定义的限制条件则发起重新部署;当目标系统中程序执行时间超出预定义的时间阈值则发起重新部署。
可选地,所述当对所述目标系统发起重新部署,则根据所述目标系统的元数据进行重新部署计算,得到重新部署方案,包括:根据组件所需要的计算资源对所述组件赋予第一权重值;根据容器的承载能力对所述容器赋予第二权重值;根据工作链路的执行时间对所述工作链路赋予第三权重值;根据所述第一权重值、所述第二权重值和所述第三权重值确定重新部署计算的分配约束条件;根据所述第一权重值、第二权重值、第三权重值以及分配约束条件,通过SMT解算器对所述组件进行初步分配,获得初步重新部署方案;当工作链路关系为复合链路,则根据所述初步重新部署方案以及所述分配约束条件对所述工作链路进行链路优化,获得最终重新部署方案;当工作链路关系为独立链路,则将所述初步重新部署方案确定为最终重新部署方案。
可选地,所述分配约束条件包括:承载组件运行时,容器不可超载的条件;承载组件运行时,所述容器具备的能力与所述组件需要的能力匹配的条件。
可选地,所述承载组件运行时,容器不可超载的条件的表达式为:
其中,代表第/>个组件;{/>}代表组件的集合;/>代表第/>个组件的第一权重值;/>代表第/>个容器的第二权重值;
可选地,所述承载组件运行时,所述容器具备的能力与所述组件需要的能力匹配的条件的表达式为:
其中,代表目标系统内部所有组件的集合;所述/>代表第/>个组件;所述代表组件/>需要的能力;/>代表硬件容器/>所具备的能力。
可选地,所述根据所述初步重新部署方案以及所述分配约束条件对所述工作链路进行链路优化,获得最终重新部署方案,包括:获取所述初步重新部署方案中的串行关系容器和并行关系容器;根据所述分配约束条件对所述串行关系容器进行串行链路优化;根据所述分配约束条件对所述并行关系容器进行并行链路优化;重复获取所述初步重新部署方案中的串行关系容器和并行关系容器的步骤直至所述初步重新部署方案的组件任务执行时间满足优化目标,获得最终重新部署方案;其中,所述优化目标的表达式为:
其中,代表容器/>与容器/>之间进行通信耗费的时间;/>代表容器/>内所有组件完成一次任务所需的时间。
可选地,所述根据所述分配约束条件对所述串行关系容器进行串行链路优化,包括:获取串行关系的第一容器和第二容器;比较所述第一容器的第一执行时间和所述第二容器的第二执行时间,获得执行时间比较结果;计算所述第一执行时间和所述第二执行时间的执行时间总和;根据所述执行时间比较结果以及所述分配约束条件进行部分组件迁移;将进行部分组件迁移后的目标系统重复比较所述第一容器的第一执行时间和所述第二容器的第二执行时间,获得执行时间比较结果,获得执行时间比较结果的步骤,直至计算得到的所述执行时间总和最小。
可选地,所述根据所述分配约束条件对所述并行关系容器进行并行链路优化,包括:获取并行关系的第三容器和第四容器;将所述第三容器的第三执行时间和所述第四容器的第四执行时间进行执行时间比较,获得执行时间比较结果;记录所述第三执行时间和所述第四执行时间中数值大的执行时间作为条件执行时间;根据所述执行时间比较结果以及所述分配约束条件进行部分组件迁移;将进行部分组件迁移后的目标系统重复将所述第三容器的第三执行时间和所述第四容器的第四执行时间进行执行时间比较,获得执行时间比较结果的步骤,直至记录的所述条件执行时间最小。
可选地,所述方法还包括:通过移动代理服务组件记录所述目标系统在重新部署前的系统配置信息;将所述系统配置信息进行保存。
本发明的实施例具有如下有益效果:通过移动代理实时监测目标系统各个容器中的组件运行数据,再根据组件运行数据确定是否对目标系统发起重新部署,当发起重新部署时根据目标系统的元数据进行重新部署计算;其中,元数据包括组件所需要的计算资源、容器承载能力以及工作链路的执行时间;根据最终重新部署方案对目标系统进行重新部署,能够在目标系统运行过程中动态自动化地进行重新部署计算,并且当系统发生变化时才重新部署计算,能够节约资源。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的方法步骤流程图;
图2是本发明实施例提供的复合链路示意图;
图3是本发明实施例提供的重新部署计算体系结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有技术的组件部署优化中存在的问题,本发明实施例提出了一种分布式组件协同部署优化方法,包括:通过移动代理实时监测目标系统各个容器中的组件运行数据;根据组件运行数据确定是否对目标系统发起重新部署;当对目标系统发起重新部署,则根据目标系统的元数据进行重新部署计算,得到最终重新部署方案;其中,元数据包括组件所需要的计算资源、容器的承载能力以及工作链路的执行时间;根据最终重新部署方案对目标系统进行重新部署。
具体地,参照图1,图1是本发明实施例提供的方法步骤流程图,包括以下步骤S100~S400:
S100、通过移动代理实时监测目标系统各个容器中的组件运行数据。
具体地,通过移动代理逐个检测各个容器并收集工作在容器上的组件运行数据,本发明实施例的组件运行数据可以例如传感器的传感数据、容器的CPU(中央处理器)使用量、容器的内存使用量、容器的硬盘使用量、程序的执行时间等。
S200、根据组件运行数据确定是否对目标系统发起重新部署。
具体地,步骤S200包括以下步骤S210~S220至少之一:
S210、当容器的CPU、内存或硬盘超出预定义的限制条件则发起重新部署。
S220、当目标系统中程序执行时间超出预定义的时间阈值则发起重新部署。
S300、当对目标系统发起重新部署,则根据目标系统的元数据进行重新部署计算,得到最终重新部署方案;其中,元数据包括组件所需要的计算资源、容器的承载能力以及工作链路的执行时间。
具体地,步骤S300包括以下步骤S310~S370:
S310、根据组件所需要的计算资源对所述组件赋予第一权重值。
具体地,对一个已知的执行任务,其组件协同的工作流是确定的,各个容器之间的通讯时延是确定的,对目标系统内部的所有组件集合/>内的各个组件服务第一权重值/>,该第一权重值表征组件/>所需要的计算资源,第一权重值越大,则表明该组件/>所需要的计算资源越多。
S320、根据容器的承载能力对所述容器赋予第二权重值。
具体地,对容器集合内的各个容器赋予第二权重值/>,该第二权重值表征容器/>的服务承载能力,第二权重值越大,则该容器可以负载的组件越多。
S330、根据工作链路的执行时间对所述工作链路赋予第三权重值。
具体地,识别给定的工作流中的工作链路,对工作流中的各个工作链路赋予第三权重值,第三权重值表征工作链路的执行时间,第三权重值越大,则该工作链路的执行时间越长。在部署优化的过程中,需要优先对权重大的工作链路上的容器进行优化部署。
S340、根据所述第一权重值、所述第二权重值和所述第三权重值确定重新部署计算的分配约束条件。
具体地,重新部署计算的分配约束条件为:
(1)承载组件运行时,容器不可超载。该条件的表达式为:
其中,代表第/>个组件;{/>}代表组件的集合;/>代表第/>个组件的第一权重值;/>代表第/>个容器的第二权重值。
(2)承载组件运行时,容器具备的能力与组件需要的能力匹配。该条件的表达式为:
其中,代表目标系统内部所有组件的集合;所述/>代表第/>个组件;所述代表组件/>需要的能力;/>代表硬件容器/>所具备的能力。
S350、根据所述第一权重值、第二权重值、第三权重值以及分配约束条件,通过SMT解算器对所述组件进行初步分配,获得初步重新部署方案。
具体地,通过SMT解算器对所述组件进行初步分配的步骤具体为:
(1)将各个约束条件输入SMT解算器。
(2)对各个组件的第一权重值以及各个容器的第二权重值进行归一化。作为示例性的说明,例如容器1的第二权重值为10,容器2的第二权重值/>为15,组件/>的第一权重值/>为3,组件第一权重值/>的/>为1,则上述四者归一化为/>,/>,/>,。
(3)对各工作链路的第三权重值进行排序,选取第三权重值最大的链路进行重新部署。
(4)将所有归一化的第一权重值、第二权重值输入到SMT解算器中,在符合各个约束条件下进行初次组件分配并得到初步重新部署方案。
S360、当工作链路关系为复合链路,则根据所述初步重新部署方案以及所述分配约束条件对所述工作链路进行链路优化,获得最终重新部署方案。
具体地,当工作链路为复合链路,则该工作链路中同时具有串行关系容器和并行关系容器或具有共享容器。如图2所示,图2是本发明实施例提供的复合链路示意图,在图2中,例如容器2和容器3为并行容器,容器5和容器6则为串行容器,此时需要先对具有复合链路的目标系统进行优化。步骤S360包括以下步骤S361~S364:
S361、获取所述初步重新部署方案中的串行关系容器和并行关系容器。
S362、根据所述分配约束条件对所述串行关系容器进行串行链路优化。
具体地,对于串行关系的容器、/>进行优化的步骤如下:
步骤一:获取目标系统中串行关系的第一容器和第二容器/>;
步骤二:比较第一容器的第一执行时间/>和第二容器/>的第二执行时间/>,获得执行时间比较结果;
步骤三:计算第一执行时间和第二执行时间/>的执行时间总和/>,执行时间总和的计算公式为:
步骤四:根据执行时间比较结果以及分配约束条件进行部分组件迁移,即根据分配约束条件将执行时间长的容器中的部分组件迁移映射到执行时间短的容器中;
步骤五:获取重新分配(即部分组件迁移)后的目标系统中串行关系容器的,根据/>重复步骤二至步骤三,并获得对于/>的执行时间总和/>,当/>,则将/>的值更新为/>的值。
重复步骤二至步骤五,直至计算得到的执行时间总和最小。
S363、根据所述分配约束条件对所述并行关系容器进行并行链路优化。
具体地,根据分配约束条件对并行关系容器进行并行链路优化如下:
步骤一:获取系统中并行关系的第三容器和第四容器/>;
步骤二:将第三容器的第三执行时间/>和第四容器/>的第四执行时间/>进行执行时间比较,获得执行时间比较结果;
步骤三:记录第三执行时间和第四执行时间/>中数值大的执行时间作为条件执行时间/>;
步骤四:根据执行时间比较结果以及分配约束条件进行部分组件迁移;
步骤五:将进行部分组件迁移后的目标系统重复步骤二,并获得目标系统中并行关系容器的,将其中数值大的记录为条件执行时间/>,当/>,则将/>的值更新为/>的值。
重复步骤二至步骤五,直至记录的条件执行时间最小。
S364、重复步骤S361~S363直至所述初步重新部署方案的组件任务执行时间满足优化目标,获得最终重新部署方案。其中,所述优化目标的表达式为:
其中,代表容器/>与容器/>之间进行通信耗费的时间;/>代表容器/>内所有组件完成一次任务所需的时间。
S370、当工作链路关系为独立链路,则将所述初步重新部署方案确定为最终重新部署方案。
S400、根据最终重新部署方案对目标系统进行重新部署。
本发明实施例的方法还包括通过移动代理服务组件记录目标系统在重新部署前的系统配置信息,将该目标系统的配置信息进行保存,若组件迁移到新容器后因配置不符而无法运行,则能够根据该配置信息将组件进行重新分配,减少损失。
在成功部署后,对已重新部署的目标系统进行元数据检索,若本次检索的元数据与历史元数据相比有变化,则更新历史元数据为本次检索的元数据,以便于下一次重新部署的计算。
需要说明的是,在目标系统运行过程中,当移动代理实时监测到的组件运行数据满足重新部署条件时,可以自动发起重新部署,以保证系统的正常运行。
本发明实施例具有如下有益效果:能够在目标系统运行过程中根据移动代理实时监测到的组件运行数据动态自动化地进行重新部署优化计算,优化操作步骤少,并且当系统发生变化时才进行重新部署计算,能够节约资源。
以下是本发明实施例提供的一个应用场景:
参照图3,图3是本发明实施例提供的重新部署计算体系结构图,根据本发明实施例的方法可以有:通过外部监测器移动代理实时监测目标系统各个容器中的组件运行数据,并将该组件运行数据打包发送到协调接收器,协调接收器根据组件运行数据确定是否对目标系统发起重新部署,当协调器向生成器发起重新部署请求前会想XML解析器发送重新解析请求,若系统结构无变化则XML 解析器不会重新发送任何系统元数据,此时根据历史元数据进行重新部署计算,当目标系统结构发生变化,则XML解析器重新发送系统元数据。当生成器接收到协调器的重新部署请求时则启动重新部署计算;当发起重新部署时根据目标系统的元数据进行重新部署计算;其中,元数据包括组件所需要的计算资源、容器承载能力以及工作链路的执行时间;根据最终重新部署方案对目标系统进行重新部署。
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或所述方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本发明权利要求所限定的范围内。
Claims (2)
1.一种分布式组件协同部署优化方法,其特征在于,包括:
通过移动代理实时监测目标系统各个容器中的组件运行数据;
根据所述组件运行数据确定是否对所述目标系统发起重新部署;
当对所述目标系统发起重新部署,则根据所述目标系统的元数据进行重新部署计算,得到最终重新部署方案;其中,所述元数据包括组件所需要的计算资源、容器的承载能力以及工作链路的执行时间;
根据所述最终重新部署方案对所述目标系统进行重新部署;
其中,所述当对所述目标系统发起重新部署,则根据所述目标系统的元数据进行重新部署计算,得到重新部署方案,包括:
根据组件所需要的计算资源对所述组件赋予第一权重值;
根据容器的承载能力对所述容器赋予第二权重值;
根据工作链路的执行时间对所述工作链路赋予第三权重值;
根据所述第一权重值、所述第二权重值和所述第三权重值确定重新部署计算的分配约束条件;
根据所述第一权重值、第二权重值、第三权重值以及分配约束条件,通过SMT解算器对所述组件进行初步分配,获得初步重新部署方案;
当工作链路关系为复合链路,则根据所述初步重新部署方案以及所述分配约束条件对所述工作链路进行链路优化,获得最终重新部署方案;
当工作链路关系为独立链路,则将所述初步重新部署方案确定为最终重新部署方案;
其中,所述根据所述组件运行数据确定是否对所述目标系统发起重新部署,包括以下至少之一:
当容器的CPU、内存或硬盘超出预定义的限制条件则发起重新部署;
当目标系统中程序执行时间超出预定义的时间阈值则发起重新部署;
其中,所述分配约束条件包括:
承载组件运行时,容器不可超载的条件;
承载组件运行时,所述容器具备的能力与所述组件需要的能力匹配的条件;
其中,所述承载组件运行时,容器不可超载的条件的表达式为:
∑Xi≤Yi
其中,FBi代表第i个组件;{Fn}代表目标系统内部所有组件的集合;Xi代表第i个组件的第一权重值;Yi代表第i个容器的第二权重值;
其中,所述承载组件运行时,所述容器具备的能力与所述组件需要的能力匹配的条件的表达式为:
Containers(1,2,…,m)support I/O skill,
(swSkill(FBi)>0)→(((swSkill(FBi)=hwSkill(1))=true)||((swSkill(FBi)=hwSkill(2))=true))||…||((swSkill(FBi)=hwSkill(m))=true))),
1≤i≤n
其中,所述swSkill(FBi)代表组件FBi需要的能力;hwSkill(1)代表容器1所具备的能力;hwSkill(2)代表容器2所具备的能力;hwSkill(m)代表容器m所具备的能力;n表示组件的数量;
其中,所述根据所述初步重新部署方案以及所述分配约束条件对所述工作链路进行链路优化,获得最终重新部署方案,包括:
获取所述初步重新部署方案中的串行关系容器和并行关系容器;
根据所述分配约束条件对所述串行关系容器进行串行链路优化;
根据所述分配约束条件对所述并行关系容器进行并行链路优化;
重复获取所述初步重新部署方案中的串行关系容器和并行关系容器的步骤直至所述初步重新部署方案的组件任务执行时间满足优化目标,获得最终重新部署方案;
其中,所述优化目标的表达式为:
其中,t′x,y代表容器x与容器y之间进行通信耗费的时间;tm代表容器m内所有组件完成一次任务所需的时间;
其中,所述根据所述分配约束条件对所述串行关系容器进行串行链路优化,包括:
获取串行关系的第一容器和第二容器;
比较所述第一容器的第一执行时间和所述第二容器的第二执行时间,获得执行时间比较结果;
计算所述第一执行时间和所述第二执行时间的执行时间总和;
根据所述执行时间比较结果以及所述分配约束条件进行部分组件迁移;
将进行部分组件迁移后的目标系统重复比较所述第一容器的第一执行时间和所述第二容器的第二执行时间,获得执行时间比较结果,获得执行时间比较结果的步骤,直至计算得到的所述执行时间总和最小;
其中,所述根据所述分配约束条件对所述并行关系容器进行并行链路优化,包括:
获取并行关系的第三容器和第四容器;
将所述第三容器的第三执行时间和所述第四容器的第四执行时间进行执行时间比较,获得执行时间比较结果;
记录所述第三执行时间和所述第四执行时间中数值大的执行时间作为条件执行时间;
根据所述执行时间比较结果以及所述分配约束条件进行部分组件迁移;
将进行部分组件迁移后的目标系统重复将所述第三容器的第三执行时间和所述第四容器的第四执行时间进行执行时间比较,获得执行时间比较结果的步骤,直至记录的所述条件执行时间最小。
2.根据权利要求1所述的一种分布式组件协同部署优化方法,其特征在于,所述方法还包括:
通过移动代理服务组件记录所述目标系统在重新部署前的系统配置信息;
将所述系统配置信息进行保存。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211633070.1A CN116126520B (zh) | 2022-12-19 | 2022-12-19 | 一种分布式组件协同部署优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211633070.1A CN116126520B (zh) | 2022-12-19 | 2022-12-19 | 一种分布式组件协同部署优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116126520A CN116126520A (zh) | 2023-05-16 |
CN116126520B true CN116126520B (zh) | 2023-11-14 |
Family
ID=86307173
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211633070.1A Active CN116126520B (zh) | 2022-12-19 | 2022-12-19 | 一种分布式组件协同部署优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116126520B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111355622A (zh) * | 2018-12-21 | 2020-06-30 | 中兴通讯股份有限公司 | 容器的业务监控方法、系统和计算机可读存储介质 |
CN113064712A (zh) * | 2021-04-16 | 2021-07-02 | 上海交通大学 | 基于云边环境的微服务优化部署控制方法、系统及集群 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8087015B2 (en) * | 2007-10-26 | 2011-12-27 | Microsoft Corporation | Assignment of application models to deployment targets |
-
2022
- 2022-12-19 CN CN202211633070.1A patent/CN116126520B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111355622A (zh) * | 2018-12-21 | 2020-06-30 | 中兴通讯股份有限公司 | 容器的业务监控方法、系统和计算机可读存储介质 |
CN113064712A (zh) * | 2021-04-16 | 2021-07-02 | 上海交通大学 | 基于云边环境的微服务优化部署控制方法、系统及集群 |
Also Published As
Publication number | Publication date |
---|---|
CN116126520A (zh) | 2023-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wu et al. | An efficient application partitioning algorithm in mobile environments | |
US20200272338A1 (en) | Optimizing serverless computing using a distributed computing framework | |
Mechalikh et al. | PureEdgeSim: A simulation framework for performance evaluation of cloud, edge and mist computing environments | |
Billet et al. | From task graphs to concrete actions: a new task mapping algorithm for the future internet of things | |
CN111818159A (zh) | 数据处理节点的管理方法、装置、设备及存储介质 | |
Liu et al. | Handling recoverable temporal violations in scientific workflow systems: a workflow rescheduling based strategy | |
CN112231917A (zh) | 空间数字孪生建模方法、装置、计算机设备及存储介质 | |
CN110955715A (zh) | Erp系统和目标平台的数据转换方法、装置以及电子设备 | |
Ali et al. | Self-adaptation to mobile resources in service oriented architecture | |
Badri et al. | A sample average approximation-based parallel algorithm for application placement in edge computing systems | |
CN116126520B (zh) | 一种分布式组件协同部署优化方法 | |
Abdel-Kader et al. | Efficient energy and completion time for dependent task computation offloading algorithm in industry 4.0 | |
CN111555987B (zh) | 限流配置方法、装置、设备及计算机存储介质 | |
CN115438768A (zh) | 模型推理方法、装置、计算机设备及存储介质 | |
CN111143033B (zh) | 基于可伸缩操作系统的操作执行方法及装置 | |
Chtepen et al. | Online execution time prediction for computationally intensive applications with periodic progress updates | |
Debnath et al. | Collaborative offloading for distributed mobile-cloud apps | |
JPWO2016084327A1 (ja) | 資源予測装置、資源予測方法、資源予測プログラムおよび分散処理システム | |
CN112149826B (zh) | 深度神经网络推理计算中一种基于Profile图的优化方法 | |
CN115185683A (zh) | 一种基于动态优化模型的云平台流处理资源分配方法 | |
Batista et al. | Scheduling grid tasks in face of uncertain communication demands | |
CN114819442A (zh) | 一种运筹优化方法、装置和计算设备 | |
Betancourt et al. | Towards policy-based task self-reallocation in dynamic edge computing systems | |
CN114997401B (zh) | 自适应推理加速方法、装置、计算机设备和存储介质 | |
CN112769942B (zh) | 一种基于QoS的微服务动态编排方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |