System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种微服务的划分方法技术_技高网

一种微服务的划分方法技术

技术编号:40204588 阅读:9 留言:0更新日期:2024-02-02 22:16
本发明专利技术提出了一种微服务的划分方法,实现步骤为:初始化参数;计算每种业务模块的内聚度和划分粒度;基于关联规则挖掘算法计算每种业务模块的耦合度;计算每种业务模块的综合划分指标;获取微服务的划分结果。本发明专利技术在计算每种业务模块的耦合度时,是基于关联规则挖掘算法并通过调用链数据实现的,调用链数据中包含有微服务的静态信息和动态信息,避免了现有技术仅采用静态数据导致的信息缺失的缺陷,在保证划分效率的前提下有效提高了微服务的划分精度。

【技术实现步骤摘要】

本专利技术属于微服务,涉及一种微服务的划分方法,可用于对实际生产环境中的微服务进行划分。


技术介绍

1、微服务是使用微服务架构来开发的系统。微服务架构是计算机领域近来热门的开发技术之一。随着业务的不断扩大,微服务架构复杂,规模庞大,依赖关系复杂多样的缺点开始显现,导致其开发的微服务变得难以拓展和维护,因此如何合理的划分微服务是至关重要的问题,合理地划分对微服务的各个方面都将带来极大的好处,不仅可以提高其的灵活性和可扩展性,还能降低了回归测试以及维护成本。

2、微服务划分通常分为初始化微服务划分需要的数据;计算微服务划分的指标;根据指标对微服务进行划分三个步骤。目前有许多研究提出了一些微服务划分方案,需要对微服务进行分析然后划分,这种方案仅停留使用微服务的静态信息而没有考虑到实际业务的动态数据信息,并且计算耦合度这个指标时通常使用的是聚类算法或者一些比较简单快捷的算法,聚类方法更适用于分析业务模块的相似性和分类,但在揭示业务模块之间的具体交互和耦合关系方面不如关联规则分析直接。聚类算法是将相似的模块分组在一起,但不提供像关联规则一样的明确的″因果″关系。为了克服这些缺陷,简单快捷的算法应运而生,例如申请公布号为cn115348312a,名称为“一种微服务划分方法”的专利申请,公开了一种微服务划分方法,实现步骤为:构建微服务划分模型并确定划分指标;计算内聚度微服务划分指标;步骤三、计算耦合度微服务划分指标,步骤四、计算粒度微服务划分指标,步骤五、计算可重用性微服务划分指标,步骤六、合并计算各指标对为服务划分的综合评价并根据结果对微服务进行划分。该专利技术充分考虑了微服务划分的各个指标且每个指标的计算都很简单快捷,但其存在的缺陷在于其在进行微服务划分时使用了微服务的静态数据而没有使用实时的业务数据,导致划分精度较低。


技术实现思路

1、本专利技术的目的在于针对上述现有技术的不足,提出一种微服务的划分方法,旨在保证划分效率的前提下,解决现有技术中存在的因信息缺失导致的划分精度较低的技术问题。

2、为实现上述目的,本专利技术采取的技术方案包括如下步骤:

3、(1)初始化参数:

4、初始化待划分的微服务包含n种业务模块和动态的m条调用链数据t,每条调用链数据tm包含多种业务模块,第n种业务模块的静态数据为sn,第n种业务模块调用其他业务模块的次数为out(sn);其他业务模块调用第n种业务模块的次数为in(sn),其中,n≥2,m≥1;

5、(2)计算每种业务模块的内聚度和划分粒度:

6、根据out(sn)和in(sn)计算每种业务模块的内聚度co(sn)和划分粒度gra(sn):

7、

8、gra(sn)=in(sn)+out(sn);

9、(3)基于关联规则挖掘算法计算每种业务模块的耦合度:

10、基于关联规则挖掘算法,并通过m条调用链数据t计算每种业务模块的耦合度cp(sn);

11、(4)计算每种业务模块的综合划分指标:

12、通过每种业务模块的内聚度co(sn)、划分粒度gra(sn)、耦合度cp(sn)和可重用性reu(sn),计算每种业务模块的综合划分指标res(sn):

13、

14、其中p1,p2,p3和p4分别表示对应项的权重;

15、(5)获取微服务的划分结果:

16、当综合划分指标res(sn)与预先设置的划分阈值满足按照降低综合划分指标res(sn)至的原则将每种业务模块sn划分多个子业务模块。

17、本专利技术与现有技术相比具有以下优点:

18、本专利技术在计算每种业务模块的耦合度时,是基于关联规则挖掘算法并通过调用链数据实现的,调用链数据中包含有微服务的静态信息和动态信息,避免了现有技术仅采用静态数据导致的信息缺失的缺陷,与现有技术相比,在保证划分效率的前提下有效提高了微服务的划分精度。

本文档来自技高网...

【技术保护点】

1.一种微服务的划分方法,其特征在于,包括如下步骤:

2.根据权利要求1所述方法,其特征在于,步骤(3)中所述的基于关联规则挖掘算法计算每种业务模块的耦合度,实现步骤为:

3.根据权利要求2所述方法,其特征在于,步骤(3d)中所述的每个项Sn与任意项Si的置信度conf(Sn→Si),计算公式为:

4.根据权利要求2所述方法,其特征在于,步骤(3d)中所述的每个业务模块的耦合度co(Sn),计算公式为:

5.根据权利要求1所述方法,其特征在于,步骤(4)中所述的每种业务模块的可重用性reu(Sn),计算公式为:

【技术特征摘要】

1.一种微服务的划分方法,其特征在于,包括如下步骤:

2.根据权利要求1所述方法,其特征在于,步骤(3)中所述的基于关联规则挖掘算法计算每种业务模块的耦合度,实现步骤为:

3.根据权利要求2所述方法,其特征在于,步骤(3d)中所述的每个项sn与任意项si的置...

【专利技术属性】
技术研发人员:刘惠杜军朝黄希希张立勇
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1