CN107209706B - 用于将设备连接到正在接收维护的应用和桌面的方法和系统 - Google Patents

用于将设备连接到正在接收维护的应用和桌面的方法和系统 Download PDF

Info

Publication number
CN107209706B
CN107209706B CN201580076168.3A CN201580076168A CN107209706B CN 107209706 B CN107209706 B CN 107209706B CN 201580076168 A CN201580076168 A CN 201580076168A CN 107209706 B CN107209706 B CN 107209706B
Authority
CN
China
Prior art keywords
server
applications
client devices
virtual desktops
maintenance mode
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201580076168.3A
Other languages
English (en)
Other versions
CN107209706A (zh
Inventor
L.C.辛格尔顿四世
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Citrix Systems Inc
Original Assignee
Citrix Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Citrix Systems Inc filed Critical Citrix Systems Inc
Publication of CN107209706A publication Critical patent/CN107209706A/zh
Application granted granted Critical
Publication of CN107209706B publication Critical patent/CN107209706B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1034Reaction to server failures by a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/08Protocols specially adapted for terminal emulation, e.g. Telnet

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

实施例是针对用于确定是否应将服务器置于维护模式中的方法和系统。该方法和系统可以创建包括连接到托管在服务器上的一个或多个永久安装的应用或一个或多个虚拟桌面的一个或多个客户端设备的用户组。该方法和系统可以创建包含一个或多个客户端设备连接到的一个或多个应用或一个或多个虚拟桌面的复制品的临时目录。该方法和系统可以将该一个或多个客户端设备从一个或多个永久应用或虚拟桌面断开连接,并将该一个或多个用户设备连接到一个或多个复制的应用或虚拟桌面。

Description

用于将设备连接到正在接收维护的应用和桌面的方法和系统
背景技术
计算机程序(用户应用)被创建来帮助用户与计算设备进行交互以便实现某个目标。例如,文字处理器可以使用一个或多个外围设备(例如,键盘和/或指向设备)向用户提供读取用户正在输入到电子文档中的信息和与该信息进行交互的能力。例如,用户可以正在起草文档并确定在文档中记录的信息的一部分必须从它的当前位置移动并放置于文档内的另一位置中。用户还可以确定信息需要被添加到另一文字处理器文档或不是文字处理器的另一用户应用。在上面呈现的任何事件中,用户可以使用外围设备来输入命令,其对应于移除(即,剪切)指定信息并将指定信息放置(即,粘贴)或输入到另一文档或另一计算机程序中。剪切和粘贴操作要求操作系统将与指定信息相关联的数据从计算机硬件(即存储器)中的一个位置移动到计算机硬件中的另一位置。这些操作以及由其他用户应用执行的其他操作可导致用户应用响应缓慢,并且在某些情况下一起停止工作(即崩溃)。如果用户应用安装在由用户拥有的独立台式计算机或膝上型计算机上,则他们可以简单地重启用户应用,或者重启计算机,并且通常会解决问题。然而,如果用户应用存储在由第三方托管的服务器(物理或虚拟)上,则用户可能不能够重启应用,并且他们不能重启服务器。结果,服务器的所有者或运营商可能不得不诊断这个问题以便解决关于应用的问题。
目前,负责企业网络上托管的用户应用服务的维护和日常操作的网络管理员只有一种方式来修复或更新用户应用。网络管理员必须登录到托管用户应用的企业网络上的服务器,以及对用户应用的某些功能的访问受到限制。当网络管理员登录到服务器时,服务器可以开始在维护模式下运行。可以由网络管理员激活此模式,以便执行更新,或者以便修复正在遭遇问题的用户应用。当网络管理员以维护模式登录到服务器时,用户被阻止登录到对用户需要使用的用户应用进行托管的服务器,因此企业网络将用户登录到另一个服务器(即,将用户负载平衡到另一个服务器)。但是,企业网络不区分网络管理员连接和正常用户连接,因此它也阻止网络管理员登录到服务器来执行关于用户应用的维护和/或故障排除问题。为了克服这个问题,网络管理员经常修改服务器的负载平衡器,或从工作组(对用户应用进行托管的服务器组)中移除服务器。这种方法防止网络管理员登录到有问题的服务器和/或启动有问题的用户应用。为了解决这个问题,网络管理员频繁地将用户应用的额外拷贝发布到特定的服务器,并且仅将该额外拷贝指派给网络管理员和选定的测试用户。
附图说明
图1是与本公开的实施例相一致的示例性网络环境的框图。
图2A-图2B是与本公开的实施例相一致的示例性网络环境的框图。
图3是与本公开的实施例相一致的示例性服务器的框图。
图4是表示用于将设备连接到正在接收维护的应用和桌面的示例性方法的流程图。
具体实施方式
现在将详细参考根据本公开所实现的示例性实施例,其示例在附图中图示出。在任何可能的情况下,在遍及整个附图中将使用相同的参考编号来指代相同或相似的部分。
本文中所公开的系统和方法将从负载平衡中移除一个或多个服务器并将额外的用户应用发布在仅可由网络管理员和所选用户访问的隔离目录中,从而使他们能够故障排除用户正在遭遇问题的有问题用户应用或虚拟桌面的过程整合。
在本公开中所描述的实施例提供了通过呈现管控在用户的计算设备上运行的操作系统和在一个或多个服务器上运行的硬件和软件之间的交互的硬件和软件解决方案来完全利用计算设备应用(例如,Microsoft Word)和计算设备桌面环境(例如,红帽操作系统)的能力。
图1是示例性网络环境100的框图。虽然网络环境100是针对虚拟网络环境,但是应当理解,网络环境100可以是使用分组进行通信的任何类型的网络。网络环境100可以包括一个或多个客户端设备102、网络104和数据中心120。
数据中心120可以包括一个或多个存储器和中央处理单元(CPU)。CPU可以包括响应并处理从一个或多个存储器中取出的指令的逻辑电路。CPU可以包括能够执行存储在一个或多个存储器中的特定指令集的一个或多个处理器、现场可编程门阵列(FPGA)或数字信号处理器(DSP)。指令也可以存储在一个或多个高速缓存中。一个或多个存储器可以包括有形的非暂时计算机可读介质,诸如软盘、硬盘、CD-ROM(压缩盘只读存储器)、MO(磁光)驱动器、DVD-ROM(数字通用盘只读存储器)、DVD-RAM(数字通用盘随机存取存储器)、高速缓存、寄存器或半导体存储器。一个或多个存储器可以是任何类型的随机存取存储器(RAM)或能够如本文所述进行操作的任何其它可用的存储器芯片。
一个或多个客户端设备102是可以通过各种手段从数据中心120获取远程服务的设备。客户端设备102可以直接地(例如,客户端设备102e)或间接地通过网络104(例如,客户端设备102a-d)而与数据中心120进行通信。在一些实施例中,网络104可以是专用网络,并且在其他实施例中,网络104可以是公共网络。虽然客户端设备102被描绘为桌面计算机(例如客户端设备102a和102e)、膝上型计算机(例如客户端设备102b)、平板电脑(例如客户端设备102c)和移动智能电话(例如客户端设备102d ),但是应当理解,客户端设备102可以是能够直接或间接地向数据中心120发送和从数据中心120接收信号的任何类型的设备(例如智能手表)。
数据中心120是物理或虚拟的用于存储、管理和传播与特定公共或私人实体有关的数据和信息的中央存储库。数据中心120可用于容纳计算机系统和相关联的组件,诸如一个或多个物理服务器、虚拟服务器和存储系统。数据中心120除了其他之外还可以包括一个或多个服务器(例如服务器122)和后端系统130。在一些实施例中,数据中心120可以包括网关、器具或两者的组合。
服务器122是可以由任何电子可寻址格式表示的实体,并且可以作为单个实体或服务器场的成员而存在。服务器122可以是物理服务器或虚拟服务器。在一些实施例中,服务器122可以包括硬件层、操作系统、以及创建或管理一个或多个虚拟机的监管器。服务器122向端点提供一个或多个服务。这些服务包括将应用服务器128上托管的一个或多个应用提供给一个或多个端点(例如客户端设备102a-e)。例如,应用服务器128可以包括基于WindowsTM的应用和计算资源。服务器122可以包括的另一服务涉及将托管在桌面服务器124上的一个或多个虚拟桌面提供给一个或多个端点。例如,桌面服务器124可以包括提供与本地安装的操作系统版本相同的功能性的虚拟操作系统(例如,WindowsTM)。
桌面服务器124可以包括托管的共享桌面,其允许多个用户访问单个共享的远程桌面服务桌面、虚拟桌面基础架构桌面,允许每个用户拥有他们自己的虚拟机、流式传输的磁盘图像、本地虚拟机、个体应用(例如一个或多个应用)或其组合。
后端系统130可以包括服务器场或服务器组中的服务器、计算机联网硬件、或器具的单个或多个实例、以及直接或间接地与数据中心120的接口。例如,后端系统130可以包括MicrosoftTM活动目录,其可以提供多个网络服务,包括轻量级目录访问协议(LDAP)目录服务、基于Kerberos认证、基于域名系统(DNS)的命名和其他网络信息、以及若干服务器之间的目录更新的同步。后端系统130除了其他之外还可以包括Oracle后端服务器、SQL 服务器后端和/或动态主机配置协议(DHCP)。后端系统130可以向数据中心120提供数据、服务或两者的组合,数据中心120然后可以经由变化的形式将那个信息提供给客户端设备102。
图2A是示例性网络环境200A的框图。网络环境200A包括可以用于向一个或多个用户(例如,用户1、用户2)提供与托管在应用服务器128上的应用和/或托管在桌面服务器124上的虚拟桌面进行交互的能力的软件。用户可以使用客户端设备102来与应用和虚拟桌面进行交互。
在一些实施例中,可以将网络环境200A的组件安装在单个计算设备上,并且在其他实施例中,可以将组件安装在多于一个的计算设备上。例如,控制器操控台201A、经纪人服务207A和虚拟桌面代理209A都可以安装在通过服务器122直接与桌面服务器124和应用服务器128进行交互的独立计算设备(例如,客户端设备102e)上。与这两台服务器进行交互的用户可以是网络管理员。在一些实施例中,用户可以是网络管理员标识的被授予特殊权限以与服务器122的组件(即应用服务器128和/或桌面服务器124)进行交互的用户。在其他实施例中,这些组件可以分散遍布在多个计算设备上。例如,可以将控制器操控台201A安装在客户端设备102e上,可以将经纪人服务207A安装在服务器122上,并且可以将虚拟桌面代理209A安装在服务器122上。
控制器操控台201A可以是管理员(例如,用户1)可以用来与应用服务器128和/或桌面服务器124交互的用户接口。控制器操控台201A可以经由递送控制器(例如,图3的递送控制器310)来与应用服务器128和/或桌面服务器124进行交互。控制器操控台201A是图形用户接口,其可以向管理员提供在桌面服务器124和应用服务器128上修改某些参数的能力。
经纪人服务207A可以是网络环境200A的软件和/或硬件组件,其可以作为经纪人操纵(broker)用户设备(例如,客户端设备)与托管在应用服务器128上的一个或多个应用和/或托管在桌面服务器124上的虚拟桌面之间的连接。基于与用户设备尝试与之建立连接的应用或虚拟桌面建立的现有连接的数量,经纪人服务207A可以确定客户端设备是否可以连接到应用或虚拟桌面。经纪人服务207A可以是在递送控制器上提供的服务。
虚拟桌面代理209A可以是安装在客户机设备尝试连接到的主机机器上的一组驱动器和服务。
接收器203A可以是提供虚拟桌面和应用的递送的软件客户端。可以将接收器203A安装在客户端设备(例如,客户端设备102a-e)上。接收器203A可以提供对虚拟桌面、应用和信息技术服务的自助服务访问。接收器203A可以是软件、固件、硬件或某种组合,其为用户的设备提供显示托管在应用服务器128上的一个或多个应用或托管在桌面服务器124上的一个或多个虚拟桌面的内容的能力。返回到手写数字文档的用户的示例,如果用户尝试访问可以将手写信息转录成标准文本的应用,则用户的设备可以访问托管在应用服务器128上的或安装在桌面服务器124上的提供该特征的应用。如果应用托管在应用服务器128上或安装在桌面服务器124上,则服务器可以将应用发送到用户的设备,或者可以在用户的设备和安装在服务器上的应用之间发送和接收消息。在一些实施例中,可以将应用直接发送到用户设备,并且用户可以在本地使用该应用。在其他实施例中,应用托管在服务器上,并且当用户想要执行操作时,用户可以在他们的设备上输入命令,并且接收器203A可以向驻留在服务器上的应用发送信号。服务器然后可以执行命令并将结果返回给用户设备。
应用商店205A向网络管理员提供创建企业应用商店的能力,所述企业应用商店聚合了来自桌面服务器124和应用服务器128的资源。应用商店205A可以通过来自与用户相关联的一个或多个设备的单个门户而向用户提供对虚拟桌面和应用、移动应用、外部软件即服务(SaaS)应用和内部Web应用的访问。例如,用户可能会在平板电脑上开始对一个Microsoft Word文档进行工作,并且在将来的某个时间可以使用桌面计算机访问同一文档。应用商店205A为网络管理员提供管理为连接到企业网络的用户供应公司桌面和应用的能力。通过应用商店205A合并资源的递送可以为网络管理员提供管理用于不同应用的多个递送机制的能力,和/或为手动安装和更新提供支持。
当(例如,用户2的)客户端设备访问托管在应用服务器128上的应用或托管在桌面服务器124上的虚拟桌面时,用户的设备(客户端设备)可以登录到接收器203A,接收器203A继而将客户端设备连接到应用商店205A。在客户端设备已经登录到应用商店205A之后,经纪人服务207A可以确定用户正在请求的应用或虚拟桌面在虚拟桌面代理209A上是否可用。经纪人服务207A评估与用户正在请求的被请求的应用和/或虚拟桌面相关联的连接的数量。如果没有连接可用于将客户端设备连接到被请求的应用和/或虚拟桌面,那么经纪人服务207A可以搜索托管在另一个服务器上的相同应用和/或虚拟桌面,并尝试将客户端设备连接到在替代服务器上托管的应用和/或虚拟桌面。在已经定位具有可用连接的应用和/或虚拟桌面之后,虚拟桌面代理209A可以建立与接收器203A的连接,并且客户端设备可以开始与被请求的应用和/或虚拟桌面交换信息。搜索可用连接的过程通常被称为负载平衡。
在一些实施例中,管理员可以对托管在应用服务器128上的一个或多个应用或托管在桌面服务器124上的虚拟桌面进行维护并且通过将服务器置于维护模式。作为结果,请求访问应用或虚拟桌面的用户可以被拒绝访问。
如果服务器正操作于维护模式中,则尝试访问应用服务器128或桌面服务器124上的应用或虚拟桌面的客户端设备可以与客户端设备尝试与之建立连接的应用或虚拟桌面的复制品拷贝建立连接。作为结果,客户端设备将不会被负载平衡。
客户端设备可以经受与上面关于网络环境200A描述的过程相类似的过程,但是代替可以使用图2B中所示的网络环境。如果应用服务器128或桌面服务器124处于维护模式中,则虚拟桌面代理209B可以向接收器203B发送一个信号,其指示虚拟桌面代理209B与之相关联的对应服务器处于维护模式中。经纪人服务207B可以向接收器203B发送一个信号,其指示接收器203B可以连接到的一个或多个目录包含接收器203B当前连接到的或尝试连接到的应用和/或虚拟桌面的复制品。在接收器203B接收到该信号之后,接收器203B可以将用户的设备连接到复制的应用和/或虚拟桌面,使得用户可以在网络管理员对服务器执行维护时继续使用应用或虚拟桌面。(一个或多个)复制的应用或(一个或多个)虚拟桌面可以是在将服务器置于维护模式中之前接收器203B连接到的应用的精确复制品。
图3是与本公开的实施例相一致的示例性服务器的框图。服务器122可以是物理服务器或虚拟服务器。服务器122可以是硬件、软件和/或固件的组合。服务器122除了其他之外还可以包括包含数据存储(例如,数据存储312)、负载平衡器(例如,负载平衡器313)、经纪人服务(例如,经纪人服务314)的递送控制器(例如,递送控制器310)、应用服务器(例如,应用服务器315)和桌面服务器(例如,桌面服务器316)。递送控制器310可以是管理到Web和企业应用的客户端连接的网络设备。一般来说,递送控制器310可以是管理或引导两个实体之间的数据流的硬件设备或软件程序。例如,递送控制器310可以管理或引导客户端设备和存储在应用服务器315上的应用之间的数据流。递送控制器310可以优化最终用户的性能、可靠性、数据中心资源使用、以及针对企业应用的安全性。在一些实施例中,可以将递送控制器310策略地放置在防火墙(未示出)的后面并且在一个或多个应用服务器的前面,成为可以确定应用的安全需要并提供简化的认证、授权和记账(AAA)的单个控制点。
递送控制器310可以通过实现诸如压缩和反向高速缓存之类的优化技术来加速通过网络104递送的应用的执行。通过反向高速缓存,通常可以从递送控制器310中的高速缓存递送针对静态或动态Web对象的新用户请求,而不必由服务器重新生成。
在一些实施例中,递送控制器310可以是虚拟递送控制器。虚拟递送控制器在虚拟化的数据中心和云计算环境中特别有用,在其中在应用需求波动时用户需要能够上下缩放容量。
应用服务器315可以是包含一个或多个虚拟应用(例如,Microsoft OfficeSuiteTM)的物理或虚拟服务器,客户端设备可以经由递送控制器310连接到所述虚拟应用。
桌面服务器316可以是包含一个或多个虚拟桌面(例如,Microsoft VistaTM)的物理或虚拟服务器,客户端设备可以经由递送控制器310连接到所述虚拟桌面。
虚拟桌面代理317可以包括应用服务器315和桌面服务器316。
数据存储312可以是包含关于作为服务器场(未示出)的一部分的一个或多个服务器(例如,应用服务器)的信息的数据库。服务器场是基于预定的规则集而已经被逻辑分组在一起的物理或虚拟服务器的集合。例如,服务器场中的每个服务器可能只包括可在移动电话、平板电脑和个人数据助理(PDA)上执行的移动应用。因此,服务器场可以称为移动应用服务器场。
数据存储312可以包含针对应用服务器315的配置信息。在一些实施例中,应用服务器315可以是服务器场,并且数据存储312可以包含针对服务器场中的每个服务器的配置信息。
递送控制器310可以帮助桌面服务器316将一个或多个虚拟桌面递送到客户端设备。递送控制器310可以帮助网络管理员管理、维护和优化所有虚拟桌面连接。递送控制器310可以向网络管理员提供基于适当的策略、角色或其他准则来执行将虚拟桌面向客户端设备进行动态池、按需指派、以及预指派的能力。递送控制器310管理在其上运行的虚拟桌面和会话。它还可以作为经纪人操纵来自客户端设备的连接请求并管理许可。如果桌面服务器316是服务器场的一部分,则递送控制器310可以管理包含针对服务器场的永久配置信息的数据存储。
经纪人服务314可以包含与经纪人服务207A和207B相同的组件和特征。
负载平衡器313可以将来自客户端设备的连接分布在托管相同应用内容的服务器之中。通过将应用请求在多个服务器上进行平衡,负载平衡器313可以防止任何桌面服务器变成单个故障点,从而改善整体应用的可用性和响应性。例如,当一个桌面服务器变成不可用时,负载平衡器313可以将新的应用请求引导到其他可用的服务器。
负载平衡器313还可以改善服务器利用率并将可用性最大化。负载平衡能够辅助网络管理员向外扩展应用服务器基础设施。随着应用需求增加,可以将新的服务器添加到资源池中,并且负载平衡器313可以立即开始向新服务器发送业务。
负载平衡器313可以包括确定特定服务器的“分数”或当前负载值的一组规则。该分数可以用于确定:到应用服务器315上的应用的连接可以如何在应用服务器315上托管的应用之间进行分布。如果存在多个应用服务器而不是一个应用服务器,则可以使用分数来确定到应用的连接可以如何在服务器场内的服务器之间进行分布。分数可以由在应用服务器上运行的当前独立计算架构(ICA)会话(连接)的数量来确定。例如,最大值为100个连接意味着应用服务器只能支持100个连接。作为结果,应用服务器可以支持100个客户端设备。负载评估器也可以将诸如处理器和存储器利用率之类的资源利用率作为因素计入分数值。
其中用户可能不能获得对被请求的应用和/或桌面的访问的另一种情形是当将应用服务器315和桌面服务器316放入维护模式中时。在这种情形下,在评估是否存在可用于将客户端设备连接到应用服务器315或桌面服务器316的连接之前,经纪人服务314可以拒绝客户端设备连接到应用或虚拟桌面。
图4是表示用于将设备连接到正在接收维护的应用和桌面的示例性方法的流程图。将容易理解,可以改变所图示的过程以删除步骤或进一步包括附加步骤。虽然以下描述针对由桌面服务器(例如,桌面服务器124)和/或应用服务器(例如,应用服务器128)执行的方法,但是应当理解,该方法可以全部或部分地由除了这两个服务器之外的设备(例如,服务器122或数据中心120)来执行。本文所描述的用于将客户端设备连接到正在进行维护的应用服务器或桌面服务器的示例性方法能够向客户端设备的用户提供在网络管理员对服务器执行维护时继续使用应用或虚拟桌面的能力。
在初始开始步骤之后,服务器可以确定服务器是否处于维护模式中。服务器可以由网络管理员置于维护模式中。如果服务器确定它不处于维护模式中,则服务器可以返回到步骤402以确定它是否已被置于维护模式中。
如果服务器确定它处于维护模式中,则服务器可以在步骤404中禁用负载平衡。
在步骤404中禁用负载平衡之后,服务器可以在步骤406中创建应用和桌面测试用户组。测试用户组可以是在应用或虚拟桌面正在接收维护时被给予许可测试(使用)应用或虚拟桌面的一组用户。在一些实施例中,该组可由管理员确定。例如,管理员可以基于正在接收维护的应用来确定哪些用户要包括在测试用户组中。在其他实施例中,测试用户组可以由正在遭遇复杂化或问题的应用来确定。例如,如果应用具有慢的响应时间或者在用户正在使用应用时持续关闭,则网络管理员可能会将与使用该应用的用户相关联的一个或多个客户端设备包含到测试用户组。在其他实施例中,服务器或服务器组件可以将客户端设备添加到测试组而不向网络管理员咨询。例如,如果虚拟桌面代理(例如,虚拟桌面代理209A)确定若干客户端设备不能连接到应用或虚拟桌面,或者客户端设备持续从应用或虚拟桌面断开连接,那么递送控制器(例如,递送控制器310)可以创建测试用户组。在一些实施例中,递送控制器可以确定何时正在发生应用或虚拟桌面不正常事项。递送控制器可以使用由负载平衡器生成的信息来确定应用或桌面是否正在遭遇问题。例如,如果服务器遭遇的负载开始以一定的频率波动,则递送控制器可以确定该波动是否是由于正在遭遇问题的应用或虚拟桌面所引起。其中递送控制器可以确定应用或桌面是否存在问题的一种方式是确定应用和/或虚拟桌面关闭或遭遇间歇性问题的速率。递送控制器可以使用平均故障间隔时间(MTBF)来确定应用和/或桌面是否正在遭遇问题。例如,如果应用或虚拟桌面遭遇问题的速率(频率或周期)超过MTBF,那么递送控制器可以将与故障相关联的客户端设备指派给测试用户组。
在已经创建测试用户组之后,服务器可以分别在步骤408和步骤412中创建包含针对测试用户组中的用户的应用和/或虚拟桌面的复制品的一个或多个目录。复制的应用和桌面的目录可以由递送控制器创建。在一些实施例中,目录可以存储在与递送控制器相同的服务器上。在其他实施例中,目录可以存储在另一个服务器上。
在一些实施例中,应用测试用户组中的测试用户可以与桌面测试用户组中的测试用户相同,并且反之亦然。
在已经创建目录之后,响应于用于将用户的设备与应用和/或虚拟桌面断开连接的用户输入,用户的设备(例如,客户端设备102c)可以在步骤410中将其自身从与其连接的应用断开连接,和/或在步骤414中将其自身从用户的设备连接到的虚拟桌面断开连接。
在一些实施例中,递送控制器可以在步骤410中将用户的设备(例如,客户端设备102c)从用户的设备连接到的应用断开连接和/或在步骤414中将其从用户的设备连接到的虚拟桌面断开连接。
递送控制器可以将与测试用户组中的用户相关联的客户端设备重新连接到存储在目录中的应用和虚拟桌面的复制品拷贝(416)。在客户端设备连接到复制的应用和虚拟桌面后,服务器可以确定它是否仍处于维护模式中(418)。在网络管理员或服务器已经解决与有问题的应用和/或虚拟桌面相关联的问题后,服务器可以退出维护模式。在一些实施例中,与应用或虚拟桌面相关联的问题可通过递送控制器重新设置应用服务器和/或桌面服务器内的参数来解决。
如果它仍然处于维护模式中,则服务器可以继续检查它是否处于维护模式中,直到它不再处于维护模式,在那之后在步骤420中服务器可以进行以重新启用负载平衡。
在已经重新启用负载平衡之后,响应于来自用户的用于将用户的设备重新连接到应用和/或虚拟桌面的输入,用户的设备可以在步骤422中在服务器进入维护模式之前将其自身重新连接到其初始连接到的应用和/或虚拟桌面。在已经将客户端设备重新连接到初始的应用和/或虚拟桌面之后,服务器可以在步骤424中移除临时目录。
在一些实施例中,步骤422和步骤424可由递送控制器执行。在已经移除临时目录后,该方法可以进行到结束(426)。
可以将本文所公开的方法实现为包括计算机可读指令的计算机程序产品。计算机可读指令可以存储在有形的非暂时计算机可读介质上,诸如软盘、硬盘、CD-ROM(压缩盘只读存储器)、MO(磁光)盘、 DVD-ROM(数字通用盘-只读存储器)、DVD RAM(数字通用盘-随机存取存储器)、RAM、高速缓存、寄存器或半导体存储器。计算机可读指令可以存储在客户端设备(例如客户端设备102a-e)和/或数据中心(例如数据中心120)的组合上,并且可以用于在客户端设备和/或数据中心上实现控制器操控台201A、接收器203A、应用商店205A、经纪人服务207A和虚拟桌面代理209A。计算机可读指令可用于实现图4中的如下步骤:确定服务器是否处于维护模式(步骤402和步骤418)、禁用负载平衡(步骤404)、确定步骤406、创建包含复制的应用或桌面的临时目录(步骤408和步骤412)、将用户的计算设备从其所连接到的本地应用或桌面断开连接(步骤410和步骤414)、将用户的计算设备连接到复制的应用或桌面(步骤416)、重新启用负载平衡(步骤420)、将用户的计算设备重新连接到其初始连接到的本地应用和/或桌面(步骤422)、以及移除步骤424。
可替代地,可以在例如可编程处理器、计算机或多个计算机之类的数据处理装置的硬件组件或者硬件和软件的组合中实现所述方法。数据处理装置的硬件组件和/或硬件和软件组件的组合可以包括在客户端设备(例如,客户端设备102a-e)和/或数据中心(例如,数据中心120)中。可以以任何形式的编程语言编写计算机程序,所述编程语言包括编译或解释语言,并且可以以包括作为独立程序或作为模块、组件、子程序或适用于在计算环境中使用的其他单元的任何形式来部署它。可编程处理器、计算机或多个计算机可用于执行一个程序,所述程序执行图4中的如下步骤:确定服务器是否处于维护模式中(图4中的步骤402和步骤418)、禁用负载平衡(步骤404)、确定步骤406、创建包含复制的应用或桌面的临时目录(步骤408和步骤412)、将用户的计算设备从其连接到的本地应用或桌面断开连接(步骤410和步骤414)、将用户的计算设备连接到复制的应用或桌面(步骤416)、重新启用负载平衡(步骤420)、以及将用户的计算设备重新连接到其初始连接到的本地应用和/或桌面(步骤422)以及移除步骤424。
可以将计算机程序部署为在一个站点处的多个计算机上或者在一个计算机上执行或者分布在多个站点上并且由如图1中所图示的通信网络互连。
在前面的说明书中,已经参考特定示例性实施例描述了实施例。然而,显而易见的是,在不脱离如随后的权利要求中阐述的示例性实施例的更广泛的精神和范围的情况下,可以进行各种修改和改变。因此,说明书和附图被认为是说明性的而不是限制性的。从本文公开的本发明的说明书和实践的考虑中,本公开的其它实施例对于本领域技术人员来说是显而易见的。

Claims (29)

1.一种服务器,包括:
处理器;和
存储计算机可读指令的存储器,所述计算机可读指令当由处理器执行时将服务器配置为:
在一个或多个客户端设备与服务器上托管或安装的一个或多个应用之间建立一个或多个连接,并确定正在服务的连接的数量;
向一个或多个客户端设备提供到托管在服务器上的一个或多个安装的应用或一个或多个虚拟桌面的连接;
确定所述服务器是否处于维护模式中;
确定一个或多个客户端设备是否连接到托管在服务器上的一个或多个安装的应用或一个或多个虚拟桌面;
创建包括所述一个或多个客户端设备连接到的所述一个或多个应用或所述一个或多个虚拟桌面的复制品的一个或多个目录;
将所述一个或多个客户端设备从所述一个或多个安装的应用或一个或多个虚拟桌面断开连接;
将所述一个或多个客户端设备连接到一个或多个复制的应用或一个或多个虚拟桌面;
响应于服务器退出维护模式,将一个或多个客户端设备重新连接到托管在服务器上的一个或多个安装的应用或一个或多个虚拟桌面;以及
删除一个或多个目录。
2.根据权利要求1所述的服务器,其中,所述客户端设备是管理员设备和/或测试用户设备。
3.根据权利要求1和2中任一项所述的服务器,其中,所述服务器将所述一个或多个客户端设备重新连接到所述一个或多个安装的应用或一个或多个虚拟桌面。
4.根据权利要求1所述的服务器,还包括递送控制器,所述递送控制器被配置为建立所述一个或多个客户端设备与托管在所述服务器上的所述一个或多个应用之间的连接。
5.根据权利要求4所述的服务器,还包括负载平衡器,所述负载平衡器被配置为确定由所述服务器服务的连接的数量。
6.根据权利要求5所述的服务器,其中,所述递送控制器被配置为:如果所述负载平衡器确定所述服务器正在服务的连接的数量超过预定数量,则确定是否接受对托管在所述服务器上的一个或多个应用的附加连接。
7.根据权利要求1所述的服务器,还包括递送控制器,所述递送控制器被配置为建立所述一个或多个客户端设备与托管在所述服务器上的所述一个或多个虚拟桌面之间的连接。
8.根据权利要求7所述的服务器,还包括负载平衡器,所述负载平衡器被配置为确定由所述服务器服务的连接的数量。
9.根据权利要求8所述的服务器,其中,所述递送控制器被配置为:如果所述负载平衡器确定所述服务器正在服务的连接的数量超过预定数量,则确定是否接受对托管在所述服务器上的一个或多个虚拟桌面的附加连接。
10.一种由服务器执行的方法,所述服务器被配置为在所述服务器处于维护模式中的同时,将客户端设备从托管在所述服务器上的永久安装的应用或虚拟桌面断开连接,所述方法包括:
在一个或多个客户端设备与服务器上托管或安装的一个或多个应用之间建立一个或多个连接,并确定正在服务的连接的数量;
向一个或多个客户端设备提供到托管在服务器上的一个或多个安装的应用或一个或多个虚拟桌面的连接;
确定是否应该将所述服务器置于维护模式中;
确定一个或多个客户端设备是否连接到托管在服务器上的一个或多个永久安装的应用或一个或多个虚拟桌面;
创建临时目录,所述临时目录包含所述一个或多个客户端设备连接到的所述一个或多个应用或一个或多个虚拟桌面的复制品;和
将所述一个或多个客户端设备从一个或多个永久应用或虚拟桌面断开连接;
将所述一个或多个客户端设备连接到一个或多个复制的应用或虚拟桌面;
响应于服务器退出维护模式,将一个或多个客户端设备重新连接到托管在服务器上的一个或多个安装的应用或一个或多个虚拟桌面;以及
删除一个或多个目录。
11.根据权利要求10所述的方法,其中,所述客户端设备是管理员设备和/或测试用户设备。
12.根据权利要求10和11中任一项所述的方法,还包括:如果所述服务器不再处于维护模式中,则将所述一个或多个客户端设备重新连接到所述一个或多个永久安装的应用或虚拟桌面。
13.根据权利要求10所述的方法,还包括:如果所述永久安装的应用中的一个或多个具有不正常的响应时间,则接收用于将所述服务器置于维护模式中的输入。
14.根据权利要求10所述的方法,还包括:如果所述永久安装的应用中的一个或多个关闭,则接收用于将所述服务器置于维护模式中的输入。
15.根据权利要求10所述的方法,还包括:如果所述永久安装的虚拟桌面中的一个或多个具有不规则的响应时间,则接收用于将所述服务器置于维护模式中的输入。
16.根据权利要求10所述的方法,还包括:如果所述永久安装的虚拟桌面中的一个或多个关闭,则接收用于将所述服务器置于维护模式中的输入。
17.根据权利要求13所述的方法,其中,如果所述响应时间具有平均故障间隔时间分布,则接收发生用于将所述服务器置于维护模式中的输入。
18.根据权利要求15所述的方法,其中,如果所述响应时间具有平均故障间隔时间分布,则接收用于将所述服务器置于维护模式中的输入。
19.一种存储可由服务器的至少一个处理器执行以使服务器执行一种方法的指令集的非暂时计算机可读存储介质,所述方法包括:
在一个或多个客户端设备与服务器上托管或安装的一个或多个应用之间建立一个或多个连接,并确定正在服务的连接的数量;
向一个或多个客户端设备提供到托管在服务器上的一个或多个安装的应用或一个或多个虚拟桌面的连接;
确定是否应该将所述服务器置于维护模式中;
确定一个或多个客户端设备是否连接到托管在服务器上的一个或多个永久安装的应用或一个或多个虚拟桌面;
创建临时目录,所述临时目录包含所述一个或多个客户端设备连接到的所述一个或多个应用或一个或多个虚拟桌面的复制品;和
将所述一个或多个客户端设备从一个或多个永久应用或虚拟桌面断开连接;和
将所述一个或多个客户端设备连接到一个或多个复制的应用或虚拟桌面;
响应于服务器退出维护模式,将一个或多个客户端设备重新连接到托管在服务器上的一个或多个安装的应用或一个或多个虚拟桌面;以及
删除一个或多个目录。
20.根据权利要求19所述的计算机可读存储介质,其中,所述客户端设备是管理员设备和/或测试用户设备。
21.根据权利要求19和20中任一项所述的计算机可读存储介质,其中,可由所述服务器的所述至少一个处理器执行的所述指令集使所述服务器进一步执行:
如果所述服务器不再处于维护模式中,则将所述一个或多个客户端设备重新连接到所述一个或多个永久安装的应用或虚拟桌面。
22.根据权利要求19所述的计算机可读存储介质,其中,可由所述服务器的所述至少一个处理器执行的所述指令集使所述服务器进一步执行:
如果所述永久安装的应用中的一个或多个具有不规则的响应时间,则确定是否应该将所述服务器置于维护模式中。
23.根据权利要求19所述的计算机可读存储介质,其中,可由所述服务器的所述至少一个处理器执行的所述指令集使所述服务器进一步执行:
如果所述永久安装的应用中的一个或多个关闭,则确定是否应将所述服务器置于维护模式中。
24.根据权利要求19所述的计算机可读存储介质,其中,可由所述服务器的所述至少一个处理器执行的所述指令集使所述服务器进一步执行:
如果所述永久安装的虚拟桌面中的一个或多个具有不规则的响应时间,则确定是否应将所述服务器置于维护模式中。
25.根据权利要求19所述的计算机可读存储介质,其中,可由所述服务器的所述至少一个处理器执行的所述指令集使所述服务器进一步执行:
如果所述永久安装的虚拟桌面中的一个或多个关闭,则确定是否应将所述服务器置于维护模式中。
26.根据权利要求22所述的计算机可读存储介质,其中,可由所述服务器的所述至少一个处理器执行的所述指令集使所述服务器进一步执行:
如果所述响应时间具有平均故障间隔时间分布,则将所述服务器置于维护模式中。
27.根据权利要求24所述的计算机可读存储介质,其中,可由所述服务器的所述至少一个处理器执行的所述指令集使所述服务器进一步执行:
如果所述响应时间具有平均故障间隔时间分布,则将所述服务器置于维护模式中。
28.根据权利要求19所述的计算机可读存储介质,其中,可由所述服务器的所述至少一个处理器执行的所述指令集使所述服务器进一步执行:
如果由所述服务器正在服务的连接的数量超过预定数量,则确定是否接受对托管在所述服务器上的一个或多个虚拟桌面的附加连接。
29.根据权利要求19所述的计算机可读存储介质,其中,可由所述服务器的所述至少一个处理器执行的所述指令集使所述服务器进一步执行:
如果由服务器正在服务的连接的数量超过预定数量,则确定是否接受对托管在所述服务器上的一个或多个应用的附加连接。
CN201580076168.3A 2014-12-16 2015-02-03 用于将设备连接到正在接收维护的应用和桌面的方法和系统 Expired - Fee Related CN107209706B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/571,342 US10348837B2 (en) 2014-12-16 2014-12-16 Methods and systems for connecting devices to applications and desktops that are receiving maintenance
US14/571342 2014-12-16
PCT/US2015/014323 WO2016099587A1 (en) 2014-12-16 2015-02-03 Methods and systems for connecting devices to applications and desktops that are receiving maintenance

Publications (2)

Publication Number Publication Date
CN107209706A CN107209706A (zh) 2017-09-26
CN107209706B true CN107209706B (zh) 2021-02-09

Family

ID=52478106

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580076168.3A Expired - Fee Related CN107209706B (zh) 2014-12-16 2015-02-03 用于将设备连接到正在接收维护的应用和桌面的方法和系统

Country Status (4)

Country Link
US (2) US10348837B2 (zh)
EP (1) EP3234779B1 (zh)
CN (1) CN107209706B (zh)
WO (1) WO2016099587A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9363305B2 (en) * 2014-01-30 2016-06-07 Vmware, Inc. Remote contextual access to operating system desktops
US10084674B2 (en) * 2015-09-09 2018-09-25 International Business Machines Corporation Virtual desktop operation and data continuity preservation
US10523556B2 (en) * 2017-08-08 2019-12-31 Versa Networks, Inc. Method and system for routing connections in a software-defined wide area network
WO2019135773A1 (en) * 2018-01-08 2019-07-11 Hewlett-Packard Development Company, L.P. Brokering servers based on remote access performance
CN108632380A (zh) * 2018-05-12 2018-10-09 芜湖市疾病预防控制中心 一种改进的多用户桌面虚拟化和远程桌面连接方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102426594A (zh) * 2011-10-31 2012-04-25 沈文策 对数据库进行操作的方法和系统
CN102546773A (zh) * 2010-12-15 2012-07-04 微软公司 提供复原性服务
CN103608781A (zh) * 2011-06-06 2014-02-26 微软公司 用于服务的恢复服务位置
CN103636165A (zh) * 2011-06-30 2014-03-12 微软公司 透明故障转移
CN104038525A (zh) * 2013-03-07 2014-09-10 深圳市金证科技股份有限公司 服务器系统的负载均衡方法及装置
CN104115469A (zh) * 2011-09-23 2014-10-22 混合电路逻辑有限公司 用于分布式系统中的应用的实时迁移和自动恢复的系统

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5951697A (en) * 1997-05-29 1999-09-14 Advanced Micro Devices, Inc. Testing the sharing of stored computer information
WO2000027091A1 (en) * 1998-11-02 2000-05-11 Integrated Data Communications Geospacial internet protocol addressing
US6738775B2 (en) * 1999-11-30 2004-05-18 Base One International Corp. Database communication system and method for communicating with a database
US20030036949A1 (en) * 1999-12-10 2003-02-20 Karim Kaddeche Method and system for targeting internet advertisements and messages by geographic location
US6891802B1 (en) * 2000-03-30 2005-05-10 United Devices, Inc. Network site testing method and associated system
US7487114B2 (en) * 2000-10-23 2009-02-03 Costar Group, Inc. System and method for associating aerial images, map features, and information
US7152185B2 (en) * 2002-02-22 2006-12-19 Bea Systems, Inc. Method for event triggered monitoring of managed server health
US20040059735A1 (en) * 2002-09-10 2004-03-25 Gold Russell Eliot Systems and methods for enabling failover in a distributed-object computing environment
US20050086342A1 (en) * 2003-09-19 2005-04-21 Andrew Burt Techniques for client-transparent TCP migration
US7363366B2 (en) * 2004-07-13 2008-04-22 Teneros Inc. Network traffic routing
US7693765B2 (en) * 2004-11-30 2010-04-06 Michael Dell Orfano System and method for creating electronic real estate registration
US7908314B2 (en) * 2005-03-23 2011-03-15 Hitachi, Ltd. Method for controlling a management computer
US20070083793A1 (en) * 2005-09-27 2007-04-12 Bea Systems, Inc. System and method for optimizing explorer for performance test
US20070083634A1 (en) * 2005-09-27 2007-04-12 Bea Systems, Inc. System and method for goal-based dispatcher for performance test
US20070083630A1 (en) * 2005-09-27 2007-04-12 Bea Systems, Inc. System and method for performance testing framework
US7454661B2 (en) * 2005-10-06 2008-11-18 International Business Machines Corporation Minimizing software downtime associated with software rejuvenation in a single computer system
US8874489B2 (en) * 2006-03-17 2014-10-28 Fatdoor, Inc. Short-term residential spaces in a geo-spatial environment
US7447854B1 (en) * 2005-12-30 2008-11-04 Vmware, Inc. Tracking and replicating changes to a virtual disk
US20070174429A1 (en) * 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
JP4699516B2 (ja) * 2006-03-28 2011-06-15 富士通株式会社 名前空間複製プログラム、名前空間複製装置、名前空間複製方法
US8788685B1 (en) * 2006-04-27 2014-07-22 Netapp, Inc. System and method for testing multi-protocol storage systems
US8271641B2 (en) * 2006-10-04 2012-09-18 Salesforce.Com, Inc. Method and system for governing resource consumption in a multi-tenant system
US7734717B2 (en) * 2006-12-05 2010-06-08 Nokia Corporation Software distribution via peer-to-peer networks
US20080198742A1 (en) * 2007-02-18 2008-08-21 Gideon Kaempfer Method and system for testing stateful network communications devices
US8159961B1 (en) * 2007-03-30 2012-04-17 Amazon Technologies, Inc. Load balancing utilizing adaptive thresholding
US20090113058A1 (en) * 2007-10-29 2009-04-30 Microsoft Corporation Terminal server draining
CN101441592A (zh) * 2007-11-20 2009-05-27 鸿富锦精密工业(深圳)有限公司 嵌入式系统的测试系统及方法
US20090199047A1 (en) * 2008-01-31 2009-08-06 Yahoo! Inc. Executing software performance test jobs in a clustered system
US8560695B2 (en) 2008-11-25 2013-10-15 Citrix Systems, Inc. Systems and methods for health based spillover
US20100157964A1 (en) * 2008-12-18 2010-06-24 Pantech & Curitel Communications, Inc. Server to guide reconnection in mobile internet, method for guiding server reconnection, and server reconnection method
WO2010122709A1 (ja) * 2009-04-23 2010-10-28 日本電気株式会社 若化処理装置、若化処理システム、コンピュータプログラムおよびデータ処理方法
US8634804B2 (en) * 2009-12-07 2014-01-21 At&T Mobility Ii Llc Devices, systems and methods for location based billing
US8359493B2 (en) * 2010-07-29 2013-01-22 Computer Associates Think, Inc. Mechanism to provide assured recovery for distributed application
US8489939B2 (en) * 2010-10-25 2013-07-16 At&T Intellectual Property I, L.P. Dynamically allocating multitier applications based upon application requirements and performance and reliability of resources
US8490152B2 (en) * 2010-10-26 2013-07-16 Microsoft Corporation Entitlement lifecycle management in a resource management system
US20120172027A1 (en) * 2011-01-03 2012-07-05 Mani Partheesh Use of geofences for location-based activation and control of services
US20120311375A1 (en) * 2011-06-01 2012-12-06 Microsoft Corporation Redirecting requests to secondary location during temporary outage
US8819488B1 (en) * 2011-06-15 2014-08-26 Amazon Technologies, Inc. Architecture for end-to-end testing of long-running, multi-stage asynchronous data processing services
CN104823157B (zh) * 2012-09-12 2018-04-06 格林伊登美国控股有限责任公司 用于提供联络中心资源的动态弹性的系统和方法
EP2907023B1 (en) 2012-10-12 2021-04-07 Citrix Systems, Inc. Performing reboot cycles, a reboot schedule on on-demand rebooting.
US9288116B2 (en) * 2012-12-28 2016-03-15 Futurewei Technologies, Inc. System and method for NAS server test load generation
US9396160B1 (en) * 2013-02-28 2016-07-19 Amazon Technologies, Inc. Automated test generation service
US9436725B1 (en) * 2013-02-28 2016-09-06 Amazon Technologies, Inc. Live data center test framework
US9483362B2 (en) * 2013-05-08 2016-11-01 Commvault Systems, Inc. Use of auxiliary data protection software in failover operations
US9906902B2 (en) * 2015-06-02 2018-02-27 GeoFrenzy, Inc. Geofence information delivery systems and methods
WO2015051333A1 (en) * 2013-10-04 2015-04-09 Uber Technologies, Inc. Determining location information using a location data point provided by a computing device
US20150134143A1 (en) * 2013-10-04 2015-05-14 Jim Willenborg Novel tracking system using unmanned aerial vehicles
US9609058B2 (en) * 2014-10-13 2017-03-28 Commvault Systems, Inc. Storage management operations based on executable files served on demand to storage management components
US10852151B2 (en) * 2014-12-12 2020-12-01 Square, Inc. Dynamic reconfiguring of geo-fences

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102546773A (zh) * 2010-12-15 2012-07-04 微软公司 提供复原性服务
CN103608781A (zh) * 2011-06-06 2014-02-26 微软公司 用于服务的恢复服务位置
CN103636165A (zh) * 2011-06-30 2014-03-12 微软公司 透明故障转移
CN104115469A (zh) * 2011-09-23 2014-10-22 混合电路逻辑有限公司 用于分布式系统中的应用的实时迁移和自动恢复的系统
CN102426594A (zh) * 2011-10-31 2012-04-25 沈文策 对数据库进行操作的方法和系统
CN104038525A (zh) * 2013-03-07 2014-09-10 深圳市金证科技股份有限公司 服务器系统的负载均衡方法及装置

Also Published As

Publication number Publication date
US10348837B2 (en) 2019-07-09
CN107209706A (zh) 2017-09-26
US20190297151A1 (en) 2019-09-26
US20160173619A1 (en) 2016-06-16
WO2016099587A1 (en) 2016-06-23
EP3234779B1 (en) 2018-11-28
EP3234779A1 (en) 2017-10-25
US11303704B2 (en) 2022-04-12

Similar Documents

Publication Publication Date Title
US11303704B2 (en) Methods and systems for connecting devices to applications and desktops that are receiving maintenance
US10162661B2 (en) Interdependent virtual machine management
US9990220B2 (en) Hypervisor remedial action for a virtual machine in response to an error message from the virtual machine
CN106462467B (zh) 在不同分布式网络上针对消费服务的集成api和ui
US8943606B2 (en) Systems and methods for associating a virtual machine with an access control right
US10379891B2 (en) Apparatus and method for in-memory-based virtual desktop service
US10936724B2 (en) Configurable compute instance secure resets
US11201930B2 (en) Scalable message passing architecture in a cloud environment
US11356531B2 (en) Data caching for cloud services
US11770704B2 (en) Distance based session roaming
US10965616B2 (en) Nonstop computing fabric arrangements
CN108293047B (zh) 由用户访问跨多个分布式计算网络的资源的系统和方法
US10747567B2 (en) Cluster check services for computing clusters
EP4018629A1 (en) Desktop virtualization with a dedicated cellular network connection for client devices
CN107113074B (zh) 管理通信端点的系统、方法和非暂态计算机可用介质
US20230221998A1 (en) Application delivery controller performance capacity advisor
Kant Highly Available XenApp Cloud

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20210209

CF01 Termination of patent right due to non-payment of annual fee