一种应用虚拟化的负载分担方法及装置制造方法及图纸

技术编号:7252857 阅读:244 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种应用虚拟化的负载分担装置,其中该网络设备用于多个服务器前端作为虚拟化网关,该装置包括:注册处理单元,用于接收并保存服务器发送的注册信息,所述注册信息包括该服务器可提供的虚拟应用;应用配置单元,用于向管理员发送可提供该虚拟应用的服务器列表,记录管理员从服务器列表中选择的服务器;以及负载决策单元,用于按照预定的分担规则以及服务器负载,将来自客户端的对虚拟应用的访问在管理员选择的服务器中进行负载分担。本发明专利技术能有效提供应用虚拟化的负载分担的均衡性。

【技术实现步骤摘要】
一种应用虚拟化的负载分担方法及装置
本专利技术负载分担技术,尤其涉及一种应用虚拟化的负载分担技术。
技术介绍
随着网络技术以及软件技术的发展,计算机的应用程序不再局限于本地,远程应用虚拟化技术已经迅速发展起来。应用虚拟化的主要工作原理是:用户终端通过应用虚拟化协议远程连接到服务器端,在服务器端启动应用(可是为虚拟的本地应用),然后服务器把应用的界面显示图像远程端的到用户终端,用户终端的键盘和鼠标输入通过协议远程传递到服务器端。应用虚拟化达到的效果是:本地无需安装应用程序,应用程序在服务器端运行,但用户体验和本地使用应用程序基本相同。应用虚拟化技术通常需要支持多个用户并发使用,考虑到性能及可靠性,一般需要部署多台应用服务器以提供更为丰富的计算资源。因此,需要考虑多个服务器的负载分担问题,即保证各服务器的负载相对平衡,达到最好的用户体验效果。但目前的负载分担技术仍然存在操作麻烦以及负载分担的均衡性较差的问题。
技术实现思路
有鉴于此,本专利技术提供一种应用虚拟化的负载分担装置,其中该网络设备用于多个服务器前端作为虚拟化网关,该装置包括:注册处理单元,用于接收并保存服务器发送的注册信息,所述注册信息包括该服务器可提供的虚拟应用;应用配置单元,用于向管理员发送可提供该虚拟应用的服务器列表,记录管理员从服务器列表中选择的服务器;以及负载决策单元,用于按照预定的分担规则以及服务器负载,将来自客户端的对虚拟应用的访问在管理员选择的服务器中进行负载分担。优选地,其中所述注册信息还包括CPU占用率、内存占用率、网络IO占用率以及磁盘IO占用率;所述服务器负载是由上述各个占用率乘以对应的预设权重后相加得到的。优选地,其中所述CPU占用率的权重最高。优选地,其中所述网络IO占用率以及磁盘IO占用率的权重之和不小于10%且不大于30%。本专利技术还提供一种应用虚拟化的负载分担方法,其中该网络设备用于多个服务器前端作为虚拟化网关,该方法包括:接收并保存服务器发送的注册信息,所述注册信息包括该服务器可提供的虚拟应用;向管理员发送可提供该虚拟应用的服务器列表,记录管理员从服务器列表中选择的服务器;以及按照预定的分担规则以及服务器负载,将来自客户端的对虚拟应用的访问在管理员选择的服务器中进行负载分担。优选地,所述注册信息还包括CPU占用率、内存占用率、网络IO占用率以及磁盘IO占用率;所述服务器负载是由上述各个占用率乘以对应的预设权重后相加得到的。优选地,其中所述CPU占用率的权重最高。优选地,其中所述网络IO占用率以及磁盘IO占用率的权重之和不小于10%且不大于30%。。本专利技术通过采用应用服务器集群自动配置机制,应用部署大大简化,部署时间减少一半以上。采用基于应用的负载分担策略,用户业务部署的灵活性大大增强,可以根据业务本身资源消耗的特点设计负载分担策略。通过引入磁盘IO和网络IO占用率参数计算服务器负载,更准确的反应了服务器负载情况,在有很多典型的应用场景中,服务器间负载的不均衡性可以下降20%,甚至更高。附图说明图1是本专利技术一种实施方式的应用环境。图2是本专利技术负载分担装置的逻辑结构图。图3是本专利技术管理配置的用户界面示意图。具体实施方式请参考图1,在应用虚拟化的场景中,通常会采用一台网络设备作为须虚拟化网关放置在服务器前端来承担负载分担等服务。本专利技术应用虚拟化的负载分担装置即应用在该虚拟化网关中,该装置可以通过软件实现,也可以通过软硬结合的方式实现。该装置主要包括注册处理单元11、应用配置单元12以及负载决策单元13。以下以软件实现为例来描述该装置运行时所执行的处理流程。步骤100,接收并保存服务器发送的注册信息,所述注册信息包括该服务器可提供的虚拟应用;本步骤由注册处理单元11执行。首先需要在应用服务器端安装虚拟应用插件(vApp),vApp主要负责主动向虚拟化网关发起注册,实现应用服务器的自动发现。同时,vApp通过Windows系统调用获取已安装的应用程序列表,并发送到虚拟化网关,实现应用程序(即虚拟应用)的自动发现,这些信息统称为注册信息。步骤200,向管理员发送可提供该虚拟应用的服务器列表,记录管理员从服务器列表中选择的服务器;本步骤由应用配置单元12执行。虚拟化网关负责进行虚拟应用的对外发布。管理员可以通过管理通道与虚拟网关交互来发布应用。发布应用时管理员通过应用配置单元12提供的服务器列表来选择应用运行的服务器群(或称服务器集合),应用配置单元12会记录下管理员的选择,进而构建基于该应用的负载分担服务器集群。请参考图3,其中展示了本专利技术应用配置单元12与管理员交互的用户界面。其中的各个服务器是用私网IP地址来标识的。如前所述,服务器列表根据vApp自动上报的应用列表获得,每个应用可以选择不同的服务器负载分担组,无需专门配置服务器集群,也不需要强制每个应用在使用相同的服务器集群进行负载分担。进一步来说,运行于应用服务器上的vApp还可以通过操作系统服务接口获取系统资源信息,包括CPU占用率、内存占用率、磁盘IO、网络IO,对资源信息进行统计计算,作为注册信息周期性发送给虚拟化网关。步骤300,按照预定的分担规则以及服务器负载,将来自客户端的对虚拟应用的访问在管理员选择的服务器中进行负载分担。虚拟化网关接收到vApp的注册信息之后,就可以知道针对每个虚拟化应用可以在哪些服务器中进行负载分担。分担的规则可以多种多样,可以参考各种已经存在的现有技术进行实现。但是大部分分担规则需要考虑后端服务器的性能。当前主流的应用虚拟化软件所采取的负载分担策略主要是在终端用户发起虚拟应用连接时进行用户连接数、应用服务器CPU、内存等资源的检查。但是没有考虑服务器IO资源情况,比如磁盘IO、网络IO等。现有的负载分担技术的主要缺点是没有全面考虑服务器的资源情况。现有技术通常仅仅考虑了CPU以及内存等运算资源的状况,并形成了应用正比于消耗计算资源的偏见式思维。事实上通过大量实验可以发现,在部分服务器CPU和内存空闲但IO繁忙的情况下,将造成各个服务器业务性能不均衡。比如,有的服务器IO非常繁忙,如果不适当降低其分担,则会导致应用的响应速度下降,用户体验变差。因此本专利技术根据各应用服务器上vApp插件发送过来的包括了IO占用率的系统资源信息计算服务器在一段时间内的平均负载,具体来说服务器负载是由上述各个占用率乘以对应的预设权重后相加得到的。一个示例性的计算方法如下:服务器负载=CPU占用率*50%+内存占用率*30%+磁盘IO占用率*10%+网络IO占用率*10%。典型地,一般来说在服务器负载的计算过程中,本专利技术保持CPU权重始终高于其他资源的权重,但同时保持磁盘IO权重与网络IO权重的总和不小于10%且不大于30%。这样的设置能够合理体现服务器在计算以及网络上的综合瓶颈在何处。本专利技术通过采用应用服务器集群自动配置机制,应用部署大大简化,部署时间减少一半以上。而现有技术中,进行负载分担的若干台服务器一般需要管理员手工配置负载分担集群及相关属性等。本专利技术采用基于应用的负载分担策略,用户业务部署的灵活性大大增强,可以根据业务本身资源消耗的特点设计负载分担策略,充分利用服务器资源综合IO性能来计算的服务器负载能够更准确的反应服务器的负载情况,避免负载不均本文档来自技高网...
一种应用虚拟化的负载分担方法及装置

【技术保护点】

【技术特征摘要】
1.一种应用虚拟化的负载分担装置,其中该应用虚拟化的负载分担装置应用于多个服务器前端的虚拟化网关中,该装置包括:注册处理单元,用于接收并保存服务器发送的注册信息,所述注册信息包括该服务器可提供的虚拟应用;应用配置单元,用于向管理员发送可提供该虚拟应用的服务器列表,记录管理员从服务器列表中选择的服务器;以及负载决策单元,用于按照预定的分担规则以及服务器负载,将来自客户端的对虚拟应用的访问在管理员选择的服务器中进行负载分担,其中,所述注册信息还包括CPU占用率、内存占用率、网络IO占用率以及磁盘IO占用率;所述服务器负载是由上述各个占用率乘以对应的预设权重后相加得到的。2.根据权利要求1所述的装置,其中所述CPU占用率的权重最高。3.根据权利要求1所述的装置,其中所述网络IO占用率以及磁盘IO占用率的权重之和...

【专利技术属性】
技术研发人员:孙向东
申请(专利权)人:北京方物软件有限公司
类型:发明
国别省市:

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

1
相关领域技术