一种应用程序远程交付系统及远程交付方法

文档序号:9288531阅读:562来源:国知局
一种应用程序远程交付系统及远程交付方法
【技术领域】
[0001]本发明涉及云计算和应用虚拟化技术领域,具体地说,本发明涉及一种应用程序远程交付系统及远程交付方法。
【背景技术】
[0002]应用程序远程交付技术是实现软件即服务(Software as a Service, SaaS)云计算模式的重要手段,能够帮助传统的大型专业化应用软件(如油藏勘探、计算机辅助设计等)以较低的成本快速实现向云服务模式的转变。目前,在Windows平台上有较为成熟的商业软件提供应用远程交付能力,如Citrix公司的XenApp系统。XenApp系统通过在数据中心集中部署Windows应用,实现了对应用的虚拟化、集中保存和管理,部署的Windows应用可以随时随地通过任何设备按需交付给用户。用户通过客户端安装的Citrix Receiver或者Citrix Online Plugin客户端程序登录到XenApp服务器即可获得需要的应用服务。然而,Citrix XenApp系统仅支持Windows平台应用程序,而一些现存的大型专业软件是基于非Windows平台(例如Linux平台)实现的,它们难以实现基于web的应用程序操作界面,无法直接使用Citrix XenApp系统实现远程交付,如果为适配Citrix XenApp系统而对应用程序进行改造,由于Citrix XenApp系统构架未被公开以及大型专业软件本身的复杂性,这种改造的技术复杂度和成本都非常高。

【发明内容】

[0003]因此,本发明的任务是提供一种能够克服现有技术上述缺陷的应用程序远程交付解决方案。
[0004]根据本发明的一个方面,提供了一种应用程序远程交付系统,包括:远程交付客户端,与远程交付客户端互联的VNC Server集群和应用程序调度器,以及与VNC Server集群和应用程序调度器互联的应用程序集群,所述应用程序集群包括多个应用程序服务器;
[0005]所述远程交付客户端用于向应用程序调度器发出应用程序启动请求,显示VNCServer集群所推送的应用程序的界面图像,在所显示的界面图像上接收用户的操作指令并将其发送给所述VNC Server集群;
[0006]所述应用程序调度器用于为用户分配运行所请求应用程序的应用服务器并将该应用服务器的IP地址发送给所述VNC Server集群;
[0007]所述VNC Server集群用于根据所述应用程序调度器发送的IP地址,在所述应用程序集群中启动用户所请求应用程序,接收所述应用程序集群的应用程序的界面图像,再将该图像推送至所述远程交付客户端;
[0008]所述应用程序集群用于运行为用户提供远程交付服务的各个应用程序,并将这些应用程序的界面图像提供给所述VNC Server集群。
[0009]其中,所述应用程序远程交付系统还包括与VNC Server集群互联的用户管理平台;
[0010]所述用户管理平台用于为用户建立和绑定会话并为每个用户所绑定的会话关联一个 VNC Server 进程;
[0011]所述VNC Server集群还用于运行和维护多个VNC Server进程。
[0012]其中,所述应用程序远程交付系统还包括与所述应用程序远程交付客户端和用户管理平台互联的统一认证平台;
[0013]所述统一认证平台用于接收所述应用程序远程交付客户端的认证请求,并将认证结果发送给所述用户管理平台或者向所述应用程序远程交付客户端返回拒绝服务的提示。
[0014]其中,所述用户管理平台包括:
[0015]会话管理单元,用于管理所有登录用户的会话信息,提供会话创建、会话保持功會K ;
[0016]VNC Server负载均衡单元,用于实现VNC Server集群的负载均衡;以及
[0017]权限管理单元,用于管理用户权限、计量和计费。
[0018]根据本发明的另一方面,还提供了一种基于上述应用程序远程交付系统的应用程序远程交付方法,包括下列步骤:
[0019]I)远程交付客户端向应用程序调度器发出应用程序启动请求;
[0020]2)应用程序调度器为用户分配运行所请求应用程序的应用服务器并将该应用服务器的IP地址发送给所述VNC Server集群;
[0021]3)VNC Server集群根据所述应用程序调度器发送的IP地址,在所述应用程序集群中启动用户所请求应用程序;
[0022]4)应用程序集群将用户所请求应用程序的界面图像提供给所述VNC Server集群;
[0023]5) VNC Server集群将用户所请求应用程序推送至所述远程交付客户端。
[0024]其中,所述应用程序远程交付方法还包括下列步骤:
[0025]6)远程交付客户端在所显示的界面图像上接收用户的操作指令并将其发送给所述 VNC Server 集群;
[0026]7) VNC Server集群将所接收的操作指令转化为应用程序可识别的命令,并将其发送给所述应用程序集群。
[0027]其中,所述应用程序远程交付系统还包括与VNC Server集群互联的用户管理平台;
[0028]所述应用程序远程交付方法还包括在步骤I)之前执行的下列步骤:
[0029]c)用户管理平台为所述远程交付客户端对应的用户建立和绑定会话并为该会话关联VNC Server集群中的一个VNC Server进程。
[0030]其中,所述应用程序远程交付系统还包括与所述应用程序远程交付客户端和用户管理平台互联的统一认证平台;
[0031]所述应用程序远程交付方法还包括在步骤c)之前执行的下列步骤:
[0032]a)应用程序远程交付客户端向统一认证平台发送认证请求;
[0033]b)统一认证平台将认证结果发送给所述用户管理平台并执行所述步骤c)或者向所述应用程序远程交付客户端返回拒绝服务的提示。
[0034]与现有技术相比,本发明具有下列技术效果:
[0035]1、本发明可以以较低的成本实现传统Linux应用向云服务模式的转变。
[0036]2、本发明能够提高应用程序远程交付的可管理性。
[0037]3、本发明能够提高应用程序远程交付的安全性。
[0038]4、本发明能够降低应用程序(尤其是大型专业软件)的总体拥有成本(TOC),如购置成本和运行维护成本。
【附图说明】
[0039]以下,结合附图来详细说明本发明的实施例,其中:
[0040]图1示出了根据本发明的一个实施例所提供的一种应用程序远程交付系统;
[0041]图2示出了根据本发明的一个实施例的远程交付方法的流程图。
【具体实施方式】
[0042]下面结合附图和实施例对本发明做进一步的描述。
[0043]图1示出了根据本发明的一个实施例所提供的一种应用程序远程交付系统,该应用程序远程交付系统适用范围广,可扩展性强,尤其是特别适合于实现Linux等非Windows应用程序的远程交付。如图1所示,本实施例的应用程序远程交付系统包括6大模块:远程交付客户端(RedeClient),统一认证平台(UAM),用户管理平台(UserMan),应用程序调度器(AppSch),VNC Server 集群,以及应用程序集群,其中 UAM,UserMan,AppSch,VNC Server集群以及应用程序集群共同构成远程交付服务端。下面分别详细介绍各个模块。
[0044](I)远程交付客户端(RedeClient)
[0045]远程交付客户端是本实施例的应用远程交付平台的客户端程序,该远程交付客户端包括用户登录单元、VNC Viewer单元和用户APP界面单元。
[0046]用户登录单元是进入应用远程交付系统的门户,用户的信息通过用户登录单元输入系统,然后传递至UAM并由UAM统一认证和管理。UAM属于远程交付服务端的一部分,本实施例中,UAM对所有用户进行统一认证和管理,用户只有通过UAM的认证才能够获得应用远程交付系统上的应用服务。
[0047]VNC Viewer 是 VNC(Virtual Network Computing)系统的一部分
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1