一种分布式软件架构方法及装置与流程

文档序号:16097670发布日期:2018-11-27 23:46阅读:628来源:国知局

本发明涉及应用软件技术,特别涉及一种分布式软件架构方案。



背景技术:

随着云计算大数据时代的飞速发展,各种应用软件系统层出不穷,为了适应日益增长的软件规模,软件的分布式成为必不可少的一种手段。传统的软件分布式架构都是固定的配置,也就是在一次软件部署实施中,有固定个数的分布式节点。然而当软件的用户规模不断扩大,业务处理越来越复杂的情况下,固定个数的分布式节点的负载越来越大,最终会达到上限,再由运维人员来增加分布式节点来减轻其他分布式节点的压力,增加了人力成本和软件维护的难度。



技术实现要素:

本发明公开了一种分布式软件架构方法及装置,可以解决应用软件系统的性能低且软件维护难度大的问题。

本发明公开了一种分布式软件架构装置,包含一个或多个软件分布式节点,还包括:

负载均衡控制中心,实时监控整个软件系统中各软件分布式节点的实时负载情况,并根据各软件分布式节点的实时负载状态,增加或减少软件系统中软件分布式节点的数量。

可选地,上述装置中,所述负载均衡控制中心,根据各软件分布式节点的实时负载状态,增加或减少软件系统中软件分布式节点的数量,包括:

所述负载均衡控制中心,在整个软件系统中任一个或多个软件分布式节点的实时负载达到或超过负载上限阈值时,增加软件分布式节点的数量,在整个软件系统中任一个或多个软件分布式节点的实时负载达到或低于负载下限阈值时,减少软件分布式节点的数量。

可选地,上述装置,还包括:

软件备用节点,按照所述负载均衡控制中心的控制,升级为软件分布式节点,以及按照所述负载均衡控制中心的控制,由软件分布式节点降级形成。

可选地,上述装置中,所述负载均衡控制中心,在整个软件系统中任一个或多个软件分布式节点的实时负载达到或超过负载上限阈值时,增加软件分布式节点的数量,包括:

所述负载均衡控制中心将所述软件备用节点升级为软件分布式节点。

可选地,上述装置中,所述负载均衡控制中心,在整个软件系统中任一个或多个软件分布式节点的实时负载达到或低于负载下限阈值时,减少软件分布式节点的数量,包括:

所述负载均衡控制中心将现有的软件分布式节点降级为软件备用节点。

本发明还公开了一种分布式软件架构方法,包括:

实时监控整个软件系统中各软件分布式节点的实时负载情况;

根据监控到的各软件分布式节点的实时负载状态,增加或减少软件系统中软件分布式节点的数量。

可选地,上述方法中,所述根据监控到的各软件分布式节点的实时负载状态,增加或减少软件系统中软件分布式节点的数量,包括:

监控发现整个软件系统中任一个或多个软件分布式节点的实时负载达到或超过负载上限阈值时,增加软件分布式节点的数量;

整个软件系统中任一个或多个软件分布式节点的实时负载达到或低于负载下限阈值时,减少软件分布式节点的数量。

可选地,上述方法中,所述增加软件分布式节点的数量包括:

将软件备用节点升级为软件分布式节点,其中,所述软件备用节点为预先配置的,或者为已有的软件分布式节点降级形成的。

可选地,上述方法中,所述减少软件分布式节点的数量,包括:

将现有的软件分布式节点降级为软件备用节点。

本申请技术方案主要应用于分布式软件架构,通过负载均衡控制中心,实时监控各个分布式节点的负载情况,来控制分布式节点的增加和回收,使整个软件系统实现负载均衡,在充分提升性能的同时也避免了资源的浪费。

附图说明

图1为本申请实施例中分布式软件架构的工作原理示意图;

图2为本申请实施例中分布式软件架构中软件备用节点升级为软件分布式节点的流程图;

图3为本申请实施例中分布式软件架构中软件分布式节点降级为软件备用节点的流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文将结合具体实施方式对本发明技术方案作进一步详细说明。需要说明的是,在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

实施例1

本实施例提供一种分布式软件架构装置,包含一个或多个软件分布式节点,以及一个负载均衡控制中心。

负载均衡控制中心,实时监控整个软件系统中各软件分布式节点的实时负载情况,并根据各软件分布式节点的实时负载状态,增加或减少软件系统中软件分布式节点的数量。其中,负载均衡控制中心,根据各软件分布式节点的实时负载状态,增加或减少软件系统中软件分布式节点的数量时,遵循的原则是:

当任一个或多个软件分布式节点的实时负载状态是,达到或超过负载上限阈值时,增加软件分布式节点的数量,当任一个或多个软件分布式节点的实时负载状态是,达到或低于负载下限阈值时,减少软件分布式节点的数量。

其中,增加或减少软件分布式节点的数量的方式可以是多种多样的,根据实际应用进行操作即可。而本实施例中,提供一种增加或减少软件分布式节点的数量的具体方式是,在软件部署时,预留足够多的软件备用节点,该软件备用节点本身是不执行任何软件业务的,仅当需要增加软件分布式节点的数量时,可由负载均衡控制中心向其下发升级指令,软件备用节点从负载均衡控制中心下载升级文件,自动升级为软件分布式节点即可。而本实施例中,软件分布式节点,是整个软件系统承载业务的子单元,其功能与现有软件分布式节点的功能相同。不同之外在于,当软件系统负载长时间较小时,需要减少软件分布式节点的数量,可由负载均衡控制中心向其下发降级指令,接收到降级指令的软件分布式节点降级为软件备用节点,不再承担软件系统业务,从而减少资源浪费,实现节能效果。

下面结合具体应用场景及附图说明上述装置的具体实施。

具体地,按照上述介绍实施的一种智能软件分布式架构装置,包括负载均衡控制中心、软件分布式节点、软件备用节点。其中,软件备用节点为多个,考虑到软件系统的后期扩展,最好预留足够多的备用节点。整个智能分布式软件架构的工作示意图如图1所示。具体实施过程包括过程①、②和③。

图1中所标注的过程①表示,负载均衡控制中心实时获取软件备用节点状态。

过程②表示,负载均衡控制中心实时获取软件分布式节点的负载状况。

过程③表示,用户访问软件分布式节点进行业务操作。

包含上述过程①、②和③的一个完整的工作过程中,主要是由负载均衡控制中心负责整个软件系统的负载均衡管理。当软件的用户规模不断扩大,业务处理越来越复杂的情况下,软件系统各个分布式节点会达到负载上限。当负载达到上限,负载均衡控制中心会控制软件备用节点升级为新的软件分布式节点,新的软件分布式节点承担一部分负载,来均衡整个软件系统的压力,再次达到正常负载;当软件系统的负载低于下限,负载均衡控制中心会控制软件分布式节点回退为软件备用节点,不再承担软件负载,在提升软件系统性能的同时,减少资源浪费,实现节能效果。负载均衡控制中心会根据各个软件分布式节点的压力,给每个软件分布式节点分配整个软件系统的任务量,达到负载均衡。

下面介绍负载均衡控制中心根据整个软件应用系统的负载将软件备用节点升级为软件分布式节点示意图的过程,此过程如图2所示,具体实施过程包括如下操作:

S201:当整个软件系统负载达到上限时,负载均衡控制中心向一个或多个软件备用节点发送升级指令。

S202:软件备用节点接收到升级指令后从负载均衡控制中心下载升级所需文件。

S203:软件备用节点升级为软件分布式节点。

S204:软件分布式节点升级完成后向负载均衡控制中心反馈。

S205:负载均衡控制中心获知新增一个软件分布式节点,更新配置文件。

下面介绍负载均衡控制中心根据整个应用软件系统的负载将已有软件分布式节点降级为软件备用节点的过程,此过程如图3所示,具体实施包括如下操作:

S301:当整个软件系统负载达到下限时,负载均衡控制中心向软件分布式节点发送降级指令。

S302:软件分布式节点接收到降级指令后降级为软件备用节点。

S303:软件分布式节点降级完成后向负载均衡控制中心反馈。

S304:负载均衡控制中心获知减少一个软件分布式节点,更新配置文件。

实施例2

本实施例提供一种分布式软件架构方法,主要包括如下操作:

实时监控整个软件系统中各软件分布式节点的实时负载情况;

根据监控到的各软件分布式节点的实时负载状态,增加或减少软件系统中软件分布式节点的数量。

其中,上述方法增加或减少软件系统中软件分布式节点的数量的原则是:监控发现整个软件系统中任一个或多个软件分布式节点的实时负载达到或超过负载上限阈值时,增加软件分布式节点的数量;在整个软件系统中任一个或多个软件分布式节点的实时负载达到或低于负载下限阈值时,则减少软件分布式节点的数量。

具体地,增加软件分布式节点的数量的方式可以是将软件备用节点升级为软件分布式节点。本实施例中,软件备用节点为预先配置的,或者为已有的软件分布式节点降级形成的。

对应地,减少软件分布式节点的数量的方式,可以是将现有的软件分布式节点降级为软件备用节点。

要注意的是,本实施例中,软件备用节点本身是不执行任何软件业务的,其主要是在接收到系统下发的升级指令时,从负载均衡控制中心下载升级文件,自动升级为软件分布式节点,以用来提升软件系统整体性能,均衡负载。而本实施例中软件分布式节点,是整个软件系统承载业务的子单元,其功能与现有软件分布式节点的功能相同。

另外,由于本实施例提供的方法可以依赖上述实施例1的装置来实现,故本方法的其他详细描述可参见上述实施例1的相应内容,在此不再赘述。

从上述实施例可以看出,本申请技术方案,使得软件系统根据不同的软件用户规模、业务承载能力和负载均衡能力,智能的通过增加和回收软件分布式节点,来实现负载均衡,可实现任何负载状况,有效解决传统软件系统负载较大的问题,实现软件系统长期有效的运行。

本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。

以上所述,仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1