一种基于应用的分布式计算方法

文档序号:8365596阅读:1133来源:国知局
一种基于应用的分布式计算方法
【技术领域】
[0001]本发明涉及分布式计算,特别涉及一种基于应用的分布式计算方法。
【背景技术】
[0002]当前的主流服务器都支持集群功能,传统服务器集群在每台物理服务器上运行一个实例。由于这种方案是为了应对峰值负载,在很多时候服务器的利用率并不高。PaaS以平台服务的形式为应用提供计算资源,屏蔽了底层云设施的复杂性和异构性,更为上层应用提供弹性资源提供,多承租资源共享等云计算关键特性支持,最终实现保障应用性能,高效利用平台资源的目的。减少租户的IT基础设施投入,提高数据中心的资源利用率。云平台需要确保租户应用之间的性能隔离,并根据当前资源利用状态进行适当的服务器整合。然而当前集群的隔离方式对集群实例迀移的影响较大,资源共享的程度不高,容易产生服务器过载,影响应用性能。

【发明内容】

[0003]为解决上述现有技术所存在的问题,本发明提出了一种基于应用的分布式计算方法,包括:
[0004]在逻辑层中系统包括多个服务器集群,每个集群对应一个应用,每个服务器集群包括一个负载分配服务器和一个或者多个无状态的服务器实例,应用的状态采用分布式缓存进行维护;在服务器实例需要迀移时,仅在当前服务器关闭原有进程,在目的服务器启动新进程,同时修改集群负载分配服务器的转发列表;在物理层中系统包括多台服务器,作为集群的运行环境,每个服务器实例均以操作系统进程的方式运行在服务器中;在同一个服务器上运行一个或多个来自于多个集群的服务器实例,这些实例共享同一操作系统提供的服务和资源,所有应用集群在全局范围内共享相同的服务器环境;在物理层中服务器分为主服务器节点和分支服务器节点,主服务器节点用于接收分支服务器节点的周期性状态报告,并进行资源整合;多个分支服务器节点用于监控并报告运行的服务器实例的性能数据,同时接收和执行主服务器节点的控制命令,即集群的资源调整操作都是由主服务器节点计算得出,并将控制命令发往分支服务器节点执行,最后通过负载分配服务器的转发列表改变进行调整,在同一台服务器中只能存在一个相同集群的服务器实例,分支服务器节点监控服务器和集群实例的资源使用情况,并将得到的信息定期发送给主服务器节点
[0005]本发明相比现有技术,具有以下优点:
[0006]本发明用于集群分布式环境下的多承租资源共享,防止服务器资源浪费和过载,提尚利用率。
【附图说明】
[0007]图1是根据本发明实施例的基于应用的分布式计算方法的流程图。
【具体实施方式】
[0008]下文与图示本发明原理的附图一起提供对本发明一个或者多个实施例的详细描述。结合这样的实施例描述本发明,但是本发明不限于任何实施例。本发明的范围仅由权利要求书限定,并且本发明涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以便提供对本发明的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的一些或者所有细节也可以根据权利要求书实现本发明。
[0009]本发明实现面向PaaS的服务器集群系统。并从逻辑结构和物理结构两个层对集群体系结构进行介绍。本发明的一方面提供了一种基于应用的分布式计算方法。图1是根据本发明实施例的基于应用的分布式计算方法流程图。
[0010]在逻辑层,系统中包括多个服务器集群,每个集群对应一个应用,每个服务器集群包括一个负载分配服务器和一个或者多个无状态的服务器实例,而应用相关状态通常采用分布式缓存进行维护,服务器实例故障不会影响应用可用性。在服务器实例需要迀移时,只需要在目的服务器启动新进程,在当前服务器关闭原有进程,同时修改集群负载分配服务器的转发列表即可。相比虚拟机迀移,这样的迀移方法对应用性能影响非常小。
[0011]在物理层,系统包括多台服务器,作为集群的运行环境,每个服务器实例都以操作系统进程的方式运行在这些服务器中;在同一个服务器上可以运行一个或多个来自于多个集群的服务器实例,这些实例可以共享同一操作系统提供的服务和资源,而在全局范围内,所有应用集群共享相同的服务器环境。
[0012]在物理层中,包括两类服务器节点:主服务器节点和分支服务器节点。主服务器节点用于接收分支服务器节点的周期性状态报告,并进行资源整合;多个分支服务器节点用于监控并报告运行的服务器实例的各种性能数据,同时接收和执行主服务器节点的控制命令。因此,集群的资源调整操作都是由主服务器节点计算得出,并将控制命令发往分支服务器节点执行,最后通过负载分配服务器的转发列表变化达到调整的效果。为了分散风险和避免资源浪费,应用部署约束要求同一个集群的服务器实例在同一台服务器中只能存在一个。
[0013]系统的资源整合是周期性的行为,实现资源的自适应提供。分支服务器节点监控服务器和集群实例的资源使用情况,并将得到的信息定期发送给主服务器节点。主服务器节点使用以下的判断方法,查找处于空闲态以及处于过载态的服务器,并综合考虑全局的资源和负载分布状况,制定包含一系列调整行为的资源提供策略;资源管理组件将调整行为分配给资源回收管理器和资源提供管理器执行;最后依赖各个集群提供的负载分配服务器,将负载进行重新分布。
[0014]服务器资源整合的目标在于保证集群系统中每个应用能够正常运行的同时,减少宿主环境中服务器的使用数量,降低能源消耗,缩减数据中心的运营成本。它主要通过空闲服务器的整合和过载服务器的划分来实现。
[0015]服务器整合需要先查找系统中空闲的服务器集合,为上面的每个集群实例选择一个合适的目的服务器,在保证系统运行约束的前提下,将这些集群实例迀移到目的服务器中,原本空闲的服务器可以关闭或进入待机等节能状态。如果系统的服务器环境使用虚拟化技术构建,则直接将这些虚拟机收回即可。
[0016]服务器划分用于处理处于过载状态的服务器,从中选择需要迀移出去的部分集群实例,并将这些集群实例重新部署到系统的其他服务器中,从而消除这些服务器的过载状态,减少该服务器中集群实例之间的资源竞争,以此实现性能隔离。
[0017]下文以SpS2、…Sn代表集群系统中的η个物理服务器,ssize (Si)代表服务器Si上运行的服务器实例数量,Sij代表在S i上运行的第j个集群实例。KS i代表第i个服务器的当前资源使用量,1?〃表示S i的第j个集群实例的当前资源使用量,TKS i表示第i个服务器的当前资源总量。此处的资源可指CPU、内存、网络读/写、磁盘读/写等指标的一种或者几种数据的权重求和。
[0018]对服务器和集群实例状态进行简单的判断,再根据判断结果选择合适的
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1