CN116382879B - 一种具备通用性的耦合数据交换技术架构 - Google Patents
一种具备通用性的耦合数据交换技术架构 Download PDFInfo
- Publication number
- CN116382879B CN116382879B CN202310658209.6A CN202310658209A CN116382879B CN 116382879 B CN116382879 B CN 116382879B CN 202310658209 A CN202310658209 A CN 202310658209A CN 116382879 B CN116382879 B CN 116382879B
- Authority
- CN
- China
- Prior art keywords
- data
- coupling
- data segments
- threads
- main control
- 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
- 230000008878 coupling Effects 0.000 title claims abstract description 138
- 238000010168 coupling process Methods 0.000 title claims abstract description 138
- 238000005859 coupling reaction Methods 0.000 title claims abstract description 138
- 238000012545 processing Methods 0.000 claims abstract description 53
- 238000000034 method Methods 0.000 claims description 41
- 230000008569 process Effects 0.000 claims description 35
- 230000003993 interaction Effects 0.000 claims description 19
- 238000011156 evaluation Methods 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 claims description 4
- 230000001105 regulatory effect Effects 0.000 claims description 3
- 230000004044 response Effects 0.000 abstract description 12
- 238000004364 calculation method Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 8
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 229920006395 saturated elastomer Polymers 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000002699 waste material Substances 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
-
- 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)
- Exchange Systems With Centralized Control (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明涉及数据交换技术领域,尤其涉及一种具备通用性的耦合数据交换技术架构,包括主控模块和数据处理模块,主控模块用于对构架内的数据进行整合与评估能够对构架内存有调用关系的运行程序进行解耦;数据处理模块用于将解耦后的数据进行编排,生成若干数据段,并对数据段进行编号;主控模块根据各数据段间的耦合度与调用关系,对运行线程进行分配,并根据其接收的数据量调节分配情况。本发明通过将架构内的程序解耦拆分,并计算拆分后的数据段之间的耦合度,根据数据段间的耦合度和各数据段间的调用关系,对数据运行的线程进行分配,从而达到节约线程的目的,增加数据响应的速度,减小数据处理所用时间。
Description
技术领域
本发明涉及数据交换技术领域,尤其涉及一种具备通用性的耦合数据交换技术架构。
背景技术
耦合表示两个子系统之间的关联程度,当一个子系统发生变化时对另一个子系统的影响很小,则称它们是松散耦合的;反之,如果变化的影响很大时,则称它们是紧密耦合的。耦合的强弱取决于模块间接间的复杂性、引用模块的位置和数据的传送方式等。设计时应尽量使模块间的耦合度小,模块间的耦合度直接影响系统的可理解性、可测试性、可靠性和可维护性
中国专利公开号:CN107703923A,公开了一种数据耦合和控制耦合自 动分析方法,包含:分析软件源代码,获取潜在耦 合因子,并记录潜在耦合因子;分析软件源代码,确定程序的调用关系,沿着程序调用关系,识别 MPC路径并形成MPC路径集合;识别各MPC路径上 的潜在耦合因子是否为“耦合对”;在软件源代码 中出现“耦合对”的地方插装标记语句;在已插装 了标记语句的程序上,执行基于需求的测试程 序,分析所插装的标记语句的执行结果,生成耦 合覆盖分析报告。
在数据运行交互的过程中,同类数据或近似数据进行调用时会出现线程浪费,影响数据处理的速度。
发明内容
为此,本发明提供一种具备通用性的耦合数据交换技术架构,用以克服现有技术中在数据运行交互的过程中,同类数据或近似数据进行调用时会出现线程浪费,影响数据处理的速度的问题。
为实现上述目的,本发明提供一种具备通用性的耦合数据交换技术架构,包括,
主控模块,用于对构架内的数据进行整合与评估,主控模块能够对构架内存有调用关系的运行程序进行解耦;
数据处理模块,用于将解耦后的数据进行编排,生成若干数据段,并对数据段进行编号;
所述主控模块根据各数据段间的耦合度与调用关系,对运行线程进行分配,并根据主控模块接收的数据量调节分配情况。
进一步地,所述数据处理模块包括,信息交互单元、数据简化处理单元、线程分配单元;
所述信息交互单元用于各数据段与数据段之间,各数据段与主控模块间进行信息交互;
所述数据简化处理单元,用于将各数据段、各数据段间的交互信息与构架接收的数据进行无纲量化处理;
所述线程分配单元,其与所述主控模块相连,用于进行线程的分配。
进一步地,所述数据处理模块对生成的若干数据段进行唯一编号,并将编号与无纲量化处理后的数据段打包传递至主控模块,主控模块计算任两组数据段无纲量化处理后数据间的耦合度,并根据耦合度对两组数据段间的耦合关系进行分级。
进一步地,所述主控模块对各数据段对应的源代码进行分析形成调用关系树,结合各数据段之间的耦合等级对线程进行初步分配线程。
进一步地,所述主控模块内的耦合等级分为一类耦合,二类耦合和三类耦合,其中,一类耦合的耦合度最高,三类耦合的耦合度最低,主控模块通过将计算的耦合度与耦合度评价参数进行对比,确定两组数据段间的耦合等级。
进一步地,对于任两组数据段,其调用关系为直接调用,间接调用和无调用三种关系中的一种。
进一步地,对于任一数据段所述主控模块根据其与其他数据段间的耦合度与调用关系确定其的线程分配评分,并根据线程分配评分进行线程分配,在线程分配的时,综合考量各数据段间的耦合度。
进一步地,在进行线程分配时,根据线程与数据段的数据量预留部分线程,根据所述主控模块接收的数据对预留部分线程进行分配,并对初始分配的线程进行调节。
进一步地,通过校验构架运行过程中的各线程数据量情况,对实际运行过程中的线程分配进行调节。
本发明还公布一种线程分配方法,基于上述具备通用性的耦合数据交换技术架构,包括,
步骤S1,通过耦合数据交换技术架构对运行的程序拆分成若干数据段,并对、各数据段间的交互信息与构架接收的数据进行无纲量化处理;
步骤S2,分析确定各数据段间的耦合度与调用关系;
步骤S3,计算每个数据段线程分配评分,结合各数据段间的耦合度对线程进行初始分配,并预留部分线程;
步骤S4,根据主控模块接收的数据对预留部分线程进行分配,并对初始分配的线程进行调节;
步骤S5,通过校验构架运行过程中的各线程数据量情况,对实际运行过程中的线程分配进行调节。
与现有技术相比,本发明的有益效果在于,本发明通过将架构内的程序解耦拆分,并计算拆分后的数据段之间的耦合度,根据数据段间的耦合度和各数据段间的调用关系,对数据运行的线程进行分配,从而达到节约线程的目的,增加数据响应的速度,减小数据处理所用时间,同时,通过在初次分配时预留部分线程,保障了在后期实际运行时对线程调节的及时性,防止反复调节线程带来数据处理的延时,进一步的增加数据响应的速度,减小数据处理所用时间。
进一步地,通过将数据段进行无纲量化处理,消除影响信息,能够更直观的反馈数据之间的耦合度,从而为线程分配打下基础,进一步的达到合理分配线程的目的,增加数据响应的速度,减小数据处理所用时间。
进一步地,根据两组数据段之间的耦合关系,确定两组数据段间数据交换过程的关联程度,从而确定两组数据进行数据交换的难易度,对于耦合度较高的数据组,其间调用数据较容易,从而可以根据耦合度分析出对线程分配的考量,进而为后期线程分配打下基础。
进一步地,调用关系指数据段之间在数据处理过程中同一数据流的流动交互关系,对于任一数据段,其调用关系越复杂,与其有调用关联的数据段越多,说明其在程序运行时需要相对较高的算力,当然,也不排除某一数据段的运算过程简单,算力需求简单却处于底层常被调用的情况,因此,根据各个数据段之间的耦合度与调用关系对数据段进行线程的初步分配,达到合理分配线程的目的,增加数据响应的速度,减小数据处理所用时间。
进一步地,通过计算数据段之间的耦合度对数据段之间的耦合关系进行分级,对于任一一组数据段,计算其与其他个数据组之间的耦合关系并进行分级,根据不同的级别判定该数据段在整体运行过程中与其他数据段间数据交换过程的关联程度,从而确定数据进行数据交换的难易度,分析出对线程分配的考量,进而为线程分配打下基础。
进一步地,通过确定各数据段之间的调用关系,能够大致知道任一数据段在整体运行过程中占用的运行算力,对于大多数据段与其存在的调用关系越多,说明其数据段在程序运行时需要的算力越多,当然,也不排除某一数据段的运算过程简单,算力需求简单却处于底层常被调用的情况,因此,根据各个数据段之间的调用关系对数据段进行线程的初步分配,达到合理分配线程的目的,增加数据响应的速度,减小数据处理所用时间。
进一步地,对于任一线程,其耦合度高数据段越多说明其在程序运行时需要相对较高的算力,同时,其存在的调用关系越多,说明其数据段在程序运行时需要的算力越多,因此计算的单一的线程分配评分越大,通过计算单一的线程分配评分与整体的线程分配评分之间的比值,确定数据段占据的线程,保障数据段线程分配的合理性,增加数据响应的速度,减小数据处理所用时间。
进一步地,通过预留部分线程保障了在实际运行时对线程调节的及时性,根据主控模块接收的数据对预留部分线程进行分配,并根据数据流的指向性,对已分配的线程进行调节,对于任一数据段,若其分配了较多的线程,但在实际运行时,调用其数据段的次数少,时间较短则减小其线程的分配,防止,若任一数据段分配了较少的线程,但在实际运行时,调用其数据段的次数多,时间较长则增大其线程的分配。
进一步地,在后期数据的实际运行过程中,考量各线程的运行程度,若任一线程的运行饱和,此时还存在低程度运行的线程,则将运行饱和线程上的部分数据段调节至低程度运行的线程上,在进行数据段线程调节时,尽可能选择线程分配评分低的线程,防止在线程调节的过程中出现运行紊乱。
附图说明
图1为本发明实施例中具备通用性的耦合数据交换技术架构的结构示意图;
图2为本发明实施例中数据处理模块的结构示意图;
图3为本发明实施例中直接调用关系的结构示意图;
图4为本发明实施例中间接调用关系的结构示意图;
图5为本发明实施例中线程分配方法的流程。
具体实施方式
为了使本发明的目的和优点更加清楚明白,下面结合实施例对本发明作进一步描述;应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。
下面参照附图来描述本发明的优选实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非在限制本发明的保护范围。
需要说明的是,在本发明的描述中,术语“上”、“下”、“左”、“右”、“内”、“外”等指示的方向或位置关系的术语是基于附图所示的方向或位置关系,这仅仅是为了便于描述,而不是指示或暗示所述装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,还需要说明的是,在本发明的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域技术人员而言,可根据具体情况理解上述术语在本发明中的具体含义。
请参阅图1、图2所示,图1为本发明实施例中具备通用性的耦合数据交换技术架构的结构示意图;图2为本发明实施例中数据处理模块的结构示意图。
本发明提供一种具备通用性的耦合数据交换技术架构,包括,
主控模块,用于对构架内的数据进行整合与评估,主控模块能够对构架内存有调用关系的运行程序进行解耦;
数据处理模块,用于将解耦后的数据进行编排,生成若干数据段,并对数据段进行编号;
所述主控模块根据各数据段间的耦合度与调用关系,对运行线程进行分配,并根据主控模块接收的数据量调节分配情况,在进行线程初次分配的过程中,预留一部分线程。
本发明通过将架构内的程序解耦拆分,并计算拆分后的数据段之间的耦合度,根据数据段间的耦合度和各数据段间的调用关系,对数据运行的线程进行分配,从而达到节约线程的目的,增加数据响应的速度,减小数据处理所用时间,同时,通过在初次分配时预留部分线程,保障了在后期实际运行时对线程调节的及时性,防止反复调节线程带来数据处理的延时,进一步的增加数据响应的速度,减小数据处理所用时间。
具体而言,所述数据处理模块包括,信息交互单元、数据简化处理单元、线程分配单元;
所述信息交互单元用于各数据段与数据段之间,各数据段与主控模块间进行信息交互;
所述数据简化处理单元,用于将各数据段、各数据段间的交互信息与构架接收的数据进行无纲量化处理;
所述线程分配单元,其与所述主控模块相连,用于进行线程的分配。
通过将数据段进行无纲量化处理,消除影响信息,能够更直观的反馈数据之间的耦合度,从而为线程分配打下基础,进一步的达到合理分配线程的目的,增加数据响应的速度,减小数据处理所用时间。
具体而言,所述数据处理模块对生成的若干数据段进行唯一编号,并将编号与无纲量化处理后的数据段打包传递至主控模块,主控模块计算任两组数据段无纲量化处理后数据间的耦合度,并根据耦合度对两组数据段间的耦合关系进行分级。
数据处理模块将解耦后的运行程序分为n个数据段,并对数据段进行编号,记为第一数据段A1,第二数据段A2,...,第N数据段An;
对于任意两组数据段Ai与Aj,Ai为第i数据段,Aj为第j数据段,i=1,2,...,n,j=1,2,...,n,i≠j,主控模块计算其之间的耦合度Cij,并根据Cij判断两组数据段之间的耦合关系。
根据两组数据段之间的耦合关系,确定两组数据段间数据交换过程的关联程度,从而确定两组数据进行数据交换的难易度,对于耦合度较高的数据组,其间调用数据较容易,从而可以根据耦合度分析出对线程分配的考量,进而为后期线程分配打下基础。
具体而言,所述主控模块对各数据段对应的源代码进行分析形成调用关系树,结合各数据段之间的耦合等级对线程进行初步分配线程。
调用关系指数据段之间在数据处理过程中同一数据流的流动交互关系,对于任一数据段,其调用关系越复杂,与其有调用关联的数据段越多,说明其在程序运行时需要相对较高的算力,当然,也不排除某一数据段的运算过程简单,算力需求简单却处于底层常被调用的情况,因此,根据各个数据段之间的耦合度与调用关系对数据段进行线程的初步分配,达到合理分配线程的目的,增加数据响应的速度,减小数据处理所用时间。
具体而言,所述主控模块内的耦合等级分为一类耦合,二类耦合和三类耦合,其中,一类耦合的耦合度最高,三类耦合的耦合度最低,主控模块通过将计算的耦合度与耦合度评价参数进行对比,确定两组数据段间的耦合等级。
所述耦合度评价参数分为第一耦合度评价参数C1,第二耦合度评价参数C2,C1>C2。
若Cij≥C1,则判定第i数据段Ai与第j数据段Aj之间的耦合关系为一类耦合;
若C1≤Cij<C2,则判定第i数据段Ai与第j数据段Aj之间的耦合关系为二类耦合;
若Cij<C2,则判定第i数据段Ai与第j数据段Aj之间的耦合关系为三类耦合;
其中,一类耦合的耦合关系为控制耦合,二类耦合的耦合关系为标记耦合,一类耦合的耦合关系为数据耦合。
通过计算数据段之间的耦合度对数据段之间的耦合关系进行分级,对于任一一组数据段,计算其与其他个数据组之间的耦合关系并进行分级,根据不同的级别判定该数据段在整体运行过程中与其他数据段间数据交换过程的关联程度,从而确定数据进行数据交换的难易度,分析出对线程分配的考量,进而为线程分配打下基础。
请参阅图3、图4所示,图3为本发明实施例中直接调用关系的结构示意图;
图4为本发明实施例中间接调用关系的结构示意图。
具体而言,对于任两组数据段,其调用关系为直接调用,间接调用和无调用三种关系中的一种。
直接调用,指同一数据流在进行数据流动时,同时经过第i数据段Ai与第j数据段Aj,且在经过第i数据段Ai与第j数据段Aj之间不经过其他数据段;
间接调用,指同一数据流在进行数据流动时,同时经过第i数据段Ai与第j数据段Aj,且在经过第i数据段Ai与第j数据段Aj之间经过其他数据段;间接调用分为一级间接调用和二级间接调用,其中,一级间接调用指数据流在经过第i数据段Ai与第j数据段Aj之间仅经过一组数据流,一级间接调用指数据流在经过第i数据段Ai与第j数据段Aj之间经过一组以上数据流;
无调用,指过第i数据段Ai与第j数据段Aj之间无任一数据流能够既能够经过第i数据段Ai又能够经过第j数据段Aj。
通过确定各数据段之间的调用关系,能够大致知道任一数据段在整体运行过程中占用的运行算力,对于大多数据段与其存在的调用关系越多,说明其数据段在程序运行时需要的算力越多,当然,也不排除某一数据段的运算过程简单,算力需求简单却处于底层常被调用的情况,因此,根据各个数据段之间的调用关系对数据段进行线程的初步分配,达到合理分配线程的目的,增加数据响应的速度,减小数据处理所用时间。
具体而言,对于任一数据段所述主控模块根据其与其他数据段间的耦合度与调用关系确定其的线程分配评分,并根据线程分配评分进行线程分配,在线程分配的时,综合考量各数据段间的耦合度。
对于第i数据段Ai与其一类耦合关系的数据段个数为x1,与其二类耦合关系的数据段个数为x2,与其三类耦合关系的数据段个数为x3,与其成直接调用关系的数据段个数为y1,与其成一级间接调用关系的数据段个数为y2,与其成二级间接调用关系的数据段个数为y3,与其无调用关系的数据段个数为y4;
第i数据段Ai的线程分配评分为Ei,设定,
Ei=x1×e1+x2×e2+x3×e3+y1×e4+y2×e5+y3×e6+y4×e7;
其中,e1为一类耦合关系的数据段个数对线程分配评分计算补偿参数,e2为二类耦合关系的数据段个数对线程分配评分计算补偿参数,e3为三类耦合关系的数据段个数对线程分配评分计算补偿参数,e4为一类耦合关系的数据段个数对线程分配评分计算补偿参数,e5为一级间接调用关系的数据段个数对线程分配评分计算补偿参数,e6为二级间接调用关系的数据段个数对线程分配评分计算补偿参数,e7为无调用关系的数据段个数对线程分配评分计算补偿参数。
其中,e1>e2>e3,e4>e5>e6>e7。
主控模块计算整体的线程分配评分Ez,Ez=。
主控模块根据第i数据段Ai的线程分配评分为Ei与整体的线程分配评分Ez之间的占比,对第i数据段Ai进行线程分配;
总线程数为K,初次分配线程数为rK,对第i数据段Ai分配的线程为ki,
ki=rK×Ei÷Ez。
在本实施例中r=0.8。
在对第j数据段Aj进行线程分配时,计算第z数据段Az与第i数据段Ai之间的关联度Gij,Gij=Cij×g+H,其中,g为耦合度对计算数据段间关联度的计算补偿参数,H为调用关系对计算数据段间关联度的计算补偿参数;
若第i数据段Ai与第j数据段Aj为直接调用关系,H=h1;
若第i数据段Ai与第j数据段Aj为一级间接调用关系,H=h2;
若第i数据段Ai与第j数据段Aj为二级间接调用关系,H=h3;
若第i数据段Ai与第j数据段Aj为无调用关系,H=h4。
h1>h2>h3>h4。
若Gij≥Gz,则第i数据段Ai与第j数据段Aj分配同一线程;
若Gij<Gz,则第i数据段Ai与第j数据段Aj分配不同线程。
其中,Gz为线程分配关联度评价值。
对于任一线程,其耦合度高数据段越多说明其在程序运行时需要相对较高的算力,同时,其存在的调用关系越多,说明其数据段在程序运行时需要的算力越多,因此计算的单一的线程分配评分越大,通过计算单一的线程分配评分与整体的线程分配评分之间的比值,确定数据段占据的线程,保障数据段线程分配的合理性,增加数据响应的速度,减小数据处理所用时间。
具体而言,在进行线程分配时,根据线程与数据段的数据量预留部分线程,根据所述主控模块接收的数据对预留部分线程进行分配,并对初始分配的线程进行调节。
通过预留部分线程保障了在实际运行时对线程调节的及时性,根据主控模块接收的数据对预留部分线程进行分配,并根据数据流的指向性,对已分配的线程进行调节,对于任一数据段,若其分配了较多的线程,但在实际运行时,调用其数据段的次数少,时间较短则减小其线程的分配,防止,若任一数据段分配了较少的线程,但在实际运行时,调用其数据段的次数多,时间较长则增大其线程的分配。
具体而言,通过校验构架运行过程中的各线程数据量情况,对实际运行过程中的线程分配进行调节。
在后期数据的实际运行过程中,考量各线程的运行程度,若任一线程的运行饱和,此时还存在低程度运行的线程,则将运行饱和线程上的部分数据段调节至低程度运行的线程上,在进行数据段线程调节时,尽可能选择线程分配评分低的线程,防止在线程调节的过程中出现运行紊乱。
请参阅图5所示,图5为本发明实施例中线程分配方法的流程。
本发明还公布一种线程分配方法,基于上述具备通用性的耦合数据交换技术架构,包括,
步骤S1,通过耦合数据交换技术架构对运行的程序拆分成若干数据段,并对、各数据段间的交互信息与构架接收的数据进行无纲量化处理;
步骤S2,分析确定各数据段间的耦合度与调用关系;
步骤S3,计算每个数据段线程分配评分,结合各数据段间的耦合度对线程进行初始分配,并预留部分线程;
步骤S4,根据主控模块接收的数据对预留部分线程进行分配,并对初始分配的线程进行调节;
步骤S5,通过校验构架运行过程中的各线程数据量情况,对实际运行过程中的线程分配进行调节。
至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征做出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
以上所述仅为本发明的优选实施例,并不用于限制本发明;对于本领域的技术人员来说,本发明可以有各种更改和变化。 凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种具备通用性的耦合数据交换技术架构,其特征在于,包括,
主控模块,用于对构架内的数据进行整合与评估,主控模块能够对构架内存有调用关系的运行程序进行解耦;
数据处理模块,用于将解耦后的数据进行编排,生成若干数据段,并对数据段进行编号;
所述主控模块根据各数据段间的耦合度与调用关系,对运行线程进行初次分配,并根据主控模块接收的数据量调节分配情况,在进行线程初次分配的过程中,预留一部分线程;
所述数据处理模块包括,信息交互单元、数据简化处理单元、线程分配单元;
所述信息交互单元用于各数据段与数据段之间,各数据段与主控模块间进行信息交互;
所述数据简化处理单元,用于将各数据段、各数据段间的交互信息与构架接收的数据进行无纲量化处理;
所述线程分配单元,其与所述主控模块相连,用于进行线程的分配;
所述数据处理模块对生成的若干数据段进行唯一编号,并将编号与无纲量化处理后的数据段打包传递至主控模块,主控模块计算任两组数据段无纲量化处理后数据间的耦合度,并根据耦合度对两组数据段间的耦合关系进行分级;
所述主控模块对各数据段对应的源代码进行分析形成调用关系树,结合各数据段之间的耦合等级对线程进行初步分配线程;
所述主控模块内的耦合等级分为一类耦合,二类耦合和三类耦合,其中,一类耦合的耦合度最高,三类耦合的耦合度最低,主控模块通过将计算的耦合度与耦合度评价参数进行对比,确定两组数据段间的耦合等级;
对于任两组数据段,其调用关系为直接调用,间接调用和无调用三种关系中的一种;
对于任一数据段所述主控模块根据其与其他数据段间的耦合度与调用关系确定其的线程分配评分,并根据线程分配评分进行线程分配,在线程分配时,综合考量各数据段间的耦合度;
在进行线程分配时,根据线程与数据段的数据量预留部分线程,根据所述主控模块接收的数据对预留部分线程进行分配,并对初始分配的线程进行调节。
2.根据权利要求1所述的具备通用性的耦合数据交换技术架构,其特征在于,通过校验构架运行过程中的各线程数据量情况,对实际运行过程中的线程分配进行调节。
3.一种线程分配方法,基于权利要求1-2任一项所述的具备通用性的耦合数据交换技术架构,其特征在于,包括,
步骤S1,通过耦合数据交换技术架构对运行的程序拆分成若干数据段,并对各数据段间的交互信息与构架接收的数据进行无纲量化处理;
步骤S2,分析确定各数据段间的耦合度与调用关系;
步骤S3,计算每个数据段线程分配评分,结合各数据段间的耦合度对线程进行初始分配,并预留部分线程;
步骤S4,根据主控模块接收的数据对预留部分线程进行分配,并对初始分配的线程进行调节;
步骤S5,通过校验构架运行过程中的各线程数据量情况,对实际运行过程中的线程分配进行调节。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310658209.6A CN116382879B (zh) | 2023-06-06 | 2023-06-06 | 一种具备通用性的耦合数据交换技术架构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310658209.6A CN116382879B (zh) | 2023-06-06 | 2023-06-06 | 一种具备通用性的耦合数据交换技术架构 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116382879A CN116382879A (zh) | 2023-07-04 |
CN116382879B true CN116382879B (zh) | 2023-08-29 |
Family
ID=86981017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310658209.6A Active CN116382879B (zh) | 2023-06-06 | 2023-06-06 | 一种具备通用性的耦合数据交换技术架构 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116382879B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101876923A (zh) * | 2009-11-27 | 2010-11-03 | 中国科学院声学研究所 | 一种用于精确估计嵌入式系统中堆栈需求量的方法 |
CN102523225A (zh) * | 2011-12-22 | 2012-06-27 | 浙江国自机器人技术有限公司 | 分布式松耦合构架中的解耦方法及分布式松耦合构架平台 |
CN104657204A (zh) * | 2013-11-22 | 2015-05-27 | 华为技术有限公司 | 短任务处理方法、装置及操作系统 |
CN111008148A (zh) * | 2019-12-20 | 2020-04-14 | 广州品唯软件有限公司 | 代码的测试方法、装置及计算机可读存储介质 |
CN112148484A (zh) * | 2020-09-14 | 2020-12-29 | 北京大学 | 一种基于耦合度的微服务在线分配方法与系统 |
CN115617549A (zh) * | 2022-11-08 | 2023-01-17 | 联仁健康医疗大数据科技股份有限公司 | 线程解耦方法、装置、电子设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8719789B2 (en) * | 2011-03-07 | 2014-05-06 | International Business Machines Corporation | Measuring coupling between coverage tasks and use thereof |
-
2023
- 2023-06-06 CN CN202310658209.6A patent/CN116382879B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101876923A (zh) * | 2009-11-27 | 2010-11-03 | 中国科学院声学研究所 | 一种用于精确估计嵌入式系统中堆栈需求量的方法 |
CN102523225A (zh) * | 2011-12-22 | 2012-06-27 | 浙江国自机器人技术有限公司 | 分布式松耦合构架中的解耦方法及分布式松耦合构架平台 |
CN104657204A (zh) * | 2013-11-22 | 2015-05-27 | 华为技术有限公司 | 短任务处理方法、装置及操作系统 |
CN111008148A (zh) * | 2019-12-20 | 2020-04-14 | 广州品唯软件有限公司 | 代码的测试方法、装置及计算机可读存储介质 |
CN112148484A (zh) * | 2020-09-14 | 2020-12-29 | 北京大学 | 一种基于耦合度的微服务在线分配方法与系统 |
CN115617549A (zh) * | 2022-11-08 | 2023-01-17 | 联仁健康医疗大数据科技股份有限公司 | 线程解耦方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
模型驱动的微服务系统构建与演化方案规划方法;李佳男;《万方学位论文数据库》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116382879A (zh) | 2023-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105912399B (zh) | 一种任务处理方法、装置及系统 | |
US20170329643A1 (en) | Distributed node intra-group task scheduling method and system | |
CN108509335A (zh) | 基于遗传算法优化的软件测试数据生成方法 | |
CN103279392B (zh) | 一种云计算环境下虚拟机上运行的负载分类方法 | |
CN112068957B (zh) | 资源分配方法、装置、计算机设备及存储介质 | |
CN110994704B (zh) | 一种暂态稳定预防控制辅助决策方法、装置及电子设备 | |
CN103080900A (zh) | 并行化自动控制程序的方法及编译器 | |
CN116382879B (zh) | 一种具备通用性的耦合数据交换技术架构 | |
CN106874112A (zh) | 一种结合负载均衡的工作流回填方法 | |
CN109587217A (zh) | 一种大规模分布式系统的智能监控与管理方法及系统 | |
CN110737538A (zh) | 一种基于thrift的算法模型调用系统 | |
CN106844024B (zh) | 一种自学习运行时间预测模型的gpu/cpu调度方法及系统 | |
CN112198817B (zh) | 无人机控制方法、装置、设备、无人机和介质 | |
CN115967126B (zh) | 一种自然灾害下新能源集群出力外送风险在线分析方法 | |
CN110535148A (zh) | 一种可用性备用的优化配置方法及系统 | |
CN116827978A (zh) | 基于物联网的报文集中处理方法和系统 | |
CN114968585A (zh) | 资源配置方法、装置、介质和计算设备 | |
CN116031891A (zh) | 一种客户侧灵活负荷聚合调控方法及系统 | |
CN117922538B (zh) | 一种基于数字孪生技术的混合动力汽车的测控方法及系统 | |
CN102243600B (zh) | 数据处理设备和数据处理方法 | |
CN111144760B (zh) | 一种工单审核平台以及审核派单方法、装置和派发服务器 | |
CN117978769B (zh) | 一种基于多源异构数据的大数据融合分析系统 | |
CN118175110B (zh) | 一种基于动态流量池的数据资源交付方法 | |
CN115689254B (zh) | 一种基于物联网的智慧城市服务平台 | |
CN115640106B (zh) | 一种面向多无人机指挥控制的人机功能分配方法及系统 |
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 |