一种基于微服务架构的业务分发方法及相关装置制造方法及图纸

技术编号:25695391 阅读:46 留言:0更新日期:2020-09-18 21:06
本发明专利技术公开了一种基于微服务架构的业务分发方法,应用于网关节点,包括获取子服务节点的负载值;当目标集群中子服务节点的数量大于1时,通过参考目标集群中的最高负载值,目标集群的加权负荷值,以及目标集群的预估负载值;当预估负载值大于最高负载值时,将最高负载值作为目标集群的实际负载值;当预估负载值小于最高负载值时,将预估负载值作为目标集群的实际负载值。在向目标集群分发业务时,具体会参考反映目标集群负载能力的实际负载值,从而使网关节点可以更加准确的分发业务,避免子服务节点发生过载。本发明专利技术还提供了一种装置、设备及存储介质,同样具有上述有益效果。

【技术实现步骤摘要】
一种基于微服务架构的业务分发方法及相关装置
本专利技术涉及微服务
,特别是涉及一种基于微服务架构的业务分发方法、一种基于微服务架构的业务分发装置、一种基于微服务架构的业务分发设备以及一种计算机可读存储介质。
技术介绍
随着科技的进步以及社会的发展,微服务系统在人们日常生活中的应用越来越广泛。微服务是一个新兴的软件架构,就是把一个大型的单个应用程序和服务拆分为数十个的支持微服务。一个微服务的策略可以让工作变得更为简便,它可扩展单个组件而不是整个的应用程序堆栈,从而满足服务等级协议。在现阶段,通常会使用多个子服务节点构成具有特定功能的集群,例如实现用户管理功能的集群、用于实现订单服务的集群、用于实现支付服务功能的集群等等。上述集群通常不对应一个实体结构,而是一个逻辑概念。在当下微服务体系架构的软件项目中,网关是不可或缺的一个重要组成部分,网关节点主要用于向子服务节点分发业务,而不同子服务节点通常分属于不同的集群。在现阶段,网关节点在向子服务节点分发业务且业务量较大时,容易造成子服务节点负载过高。所以如何提供一种可以在微服务系统中准确分发业务的方法是本领域技术人员急需解决的问题。需要参考子服务节点所属集群的负载值。而在现有技术中,对于集群负载值计算的方法并不能准确反映整个集群真实的负载情况,所以如何提供一种可以准确反映出微服务系统中集群负载的方法是本领域技术人员急需解决的问题。
技术实现思路
本专利技术的目的是提供一种基于微服务架构的业务分发方法,可以使网关节点在微服务系统中准确分发业务;本专利技术的另一目的在于提供一种基于微服务架构的业务分发装置、一种基于微服务架构的业务分发设备以及一种计算机可读存储介质,可以使网关节点在微服务系统中准确分发业务。为解决上述技术问题,本专利技术提供一种基于微服务架构的业务分发方法,应用于网关节点,包括:获取子服务节点的负载值;当目标集群中子服务节点的数量大于1时,确定目标集群所对应的多个负载值中的最高负载值;通过SMW=SLM.MAX×(LAW+(0.1×(SC-1)))确定所述目标集群的加权负荷值;所述SMW为所述加权负荷值,所述SLM.MAX为所述最高负载值;所述SC为所述目标集群中子服务节点的数量;所述LAW为所述最高负载值对应的等级加权值;通过SW.S=(SMW+SLM.ORT)/SC确定所述目标集群的预估负载值;所述SW.S为所述预估负载值;所述SLM.ORT为所述目标集群所对应的多个负载值中,除去所述最高负载值后剩余负载值的和;当所述预估负载值大于所述最高负载值时,将所述最高负载值作为所述目标集群的实际负载值;当所述预估负载值小于所述最高负载值时,将所述预估负载值作为所述目标集群的实际负载值;根据所述实际负载值向所述目标集群分发业务。可选的,当所述最高负载值不小于70且小于80时,所述等级加权值为1.1;当所述最高负载值不小于80且小于90时,所述等级加权值为1.3;当所述最高负载值不小于90时,所述等级加权值为1.5。可选的,当所述目标集群中子服务节点的数量为1时,将所述子服务节点的负载值作为所述目标集群的实际负载值。可选的,所述获取子服务节点的负载值包括:沿时间的先后顺序获取所述子服务节点中最新的连续第一预设数量的原始负载值;计算第一预设数量的所述原始负载值的平均值作为所述子服务节点的负载值。可选的,所述第一预设数量为五。可选的,还包括:沿时间的先后顺序获取最新的连续第二预设数量的所述实际负载值;计算第二预设数量的所述实际负载值的平均值作为所述目标集群的真实负载值;所述根据所述实际负载值向所述目标集群分发业务包括:根据所述真实负载值向所述目标集群分发业务。可选的,所述第二预设数量为五。本专利技术还提供了一种基于微服务架构的业务分发装置,应用于网关节点,包括:获取模块:用于获取子服务节点的负载值;最高负载值模块:用于当目标集群中子服务节点的数量大于1时,确定目标集群所对应的多个负载值中的最高负载值;加权负荷值模块:用于通过SMW=SLM.MAX×(LAW+(0.1×(SC-1)))确定所述目标集群的加权负荷值;所述SMW为所述加权负荷值,所述SLM.MAX为所述最高负载值;所述SC为所述目标集群中子服务节点的数量;所述LAW为所述最高负载值对应的等级加权值;预估负载值模块:用于通过SW.S=(SMW+SLM.ORT)/SC确定所述目标集群的预估负载值;所述SW.S为所述预估负载值;所述SLM.ORT为所述目标集群所对应的多个负载值中,除去所述最高负载值后剩余负载值的和;实际负载值模块:用于当所述预估负载值大于所述最高负载值时,将所述最高负载值作为所述目标集群的实际负载值;当所述预估负载值小于所述最高负载值时,将所述预估负载值作为所述目标集群的实际负载值;业务分发模块:用于根据所述实际负载值向所述目标集群分发业务。本专利技术还提供了一种基于微服务架构的业务分发设备,应用于网关节点,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上述任意一项所述基于微服务架构的业务分发方法的步骤。本专利技术还提供了一种计算机可读存储介质,应用于网关节点,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意一项所述基于微服务架构的业务分发方法的步骤。本专利技术所提供的一种基于微服务架构的业务分发方法,应用于网关节点,包括获取子服务节点的负载值;当目标集群中子服务节点的数量大于1时,确定目标集群所对应的多个负载值中的最高负载值;通过SMW=SLM.MAX×(LAW+(0.1×(SC-1)))确定目标集群的加权负荷值;SMW为加权负荷值,SLM.MAX为最高负载值;SC为目标集群中子服务节点的数量;LAW为最高负载值对应的等级加权值;通过SW.S=(SMW+SLM.ORT)/SC确定目标集群的预估负载值;SW.S为预估负载值;SLM.ORT为目标集群所对应的多个负载值中,除去最高负载值后剩余负载值的和;当预估负载值大于最高负载值时,将最高负载值作为目标集群的实际负载值;当预估负载值小于最高负载值时,将预估负载值作为目标集群的实际负载值;根据实际负载值向目标集群分发业务。在向子服务节点分发业务时,具体会参考反映目标集群负载能力的实际负载值,而在通过上述内容可以得到更加准确,更能反映真实情况的可以反映目标集群负载能力的实际负载值,从而使网关节点可以更加准确的分发业务,避免子服务节点发生过载。本专利技术还提供了一种基于微服务架构的业务分发装置、一种基于微服务架构的业务分发设备以及一种计算机可读存储介质,同样具有上述有益效果,在此不再进行赘述。附图说明为了更清楚的说明本专利技术实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一本文档来自技高网...

【技术保护点】
1.一种基于微服务架构的业务分发方法,其特征在于,应用于网关节点,包括:/n获取子服务节点的负载值;/n当目标集群中子服务节点的数量大于1时,确定目标集群所对应的多个负载值中的最高负载值;/n通过SMW=SLM.MAX×(LAW+(0.1×(SC-1)))确定所述目标集群的加权负荷值;所述SMW为所述加权负荷值,所述SLM.MAX为所述最高负载值;所述SC为所述目标集群中子服务节点的数量;所述LAW为所述最高负载值对应的等级加权值;/n通过SW.S=(SMW+SLM.ORT)/SC确定所述目标集群的预估负载值;所述SW.S为所述预估负载值;所述SLM.ORT为所述目标集群所对应的多个负载值中,除去所述最高负载值后剩余负载值的和;/n当所述预估负载值大于所述最高负载值时,将所述最高负载值作为所述目标集群的实际负载值;当所述预估负载值小于所述最高负载值时,将所述预估负载值作为所述目标集群的实际负载值;/n根据所述实际负载值向所述目标集群分发业务。/n

【技术特征摘要】
1.一种基于微服务架构的业务分发方法,其特征在于,应用于网关节点,包括:
获取子服务节点的负载值;
当目标集群中子服务节点的数量大于1时,确定目标集群所对应的多个负载值中的最高负载值;
通过SMW=SLM.MAX×(LAW+(0.1×(SC-1)))确定所述目标集群的加权负荷值;所述SMW为所述加权负荷值,所述SLM.MAX为所述最高负载值;所述SC为所述目标集群中子服务节点的数量;所述LAW为所述最高负载值对应的等级加权值;
通过SW.S=(SMW+SLM.ORT)/SC确定所述目标集群的预估负载值;所述SW.S为所述预估负载值;所述SLM.ORT为所述目标集群所对应的多个负载值中,除去所述最高负载值后剩余负载值的和;
当所述预估负载值大于所述最高负载值时,将所述最高负载值作为所述目标集群的实际负载值;当所述预估负载值小于所述最高负载值时,将所述预估负载值作为所述目标集群的实际负载值;
根据所述实际负载值向所述目标集群分发业务。


2.根据权利要求1所述的方法,其特征在于,当所述最高负载值不小于70且小于80时,所述等级加权值为1.1;当所述最高负载值不小于80且小于90时,所述等级加权值为1.3;当所述最高负载值不小于90时,所述等级加权值为1.5。


3.根据权利要求1所述的方法,其特征在于,当所述目标集群中子服务节点的数量为1时,将所述子服务节点的负载值作为所述目标集群的实际负载值。


4.根据权利要求3所述的方法,其特征在于,所述获取子服务节点的负载值包括:
沿时间的先后顺序获取所述子服务节点中最新的连续第一预设数量的原始负载值;
计算第一预设数量的所述原始负载值的平均值作为所述子服务节点的负载值。


5.根据权利要求4所述的方法,其特征在于,所述第一预设数量为五。


6.根据权利要求1所述的方法,其特征在于,还包括:
沿时间的先后顺序获取最新的连续第二预设数量的所述...

【专利技术属性】
技术研发人员:赵毅
申请(专利权)人:重庆英楼维兴信息科技有限公司
类型:发明
国别省市:重庆;50

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

1