背景技術(shù):
計(jì)算機(jī)程序(用戶應(yīng)用)被創(chuàng)建來幫助用戶與計(jì)算設(shè)備進(jìn)行交互以便實(shí)現(xiàn)某個(gè)目標(biāo)。例如,文字處理器可以使用一個(gè)或多個(gè)外圍設(shè)備(例如,鍵盤和/或指向設(shè)備)向用戶提供讀取用戶正在輸入到電子文檔中的信息和與該信息進(jìn)行交互的能力。例如,用戶可以正在起草文檔并確定在文檔中記錄的信息的一部分必須從它的當(dāng)前位置移動(dòng)并放置于文檔內(nèi)的另一位置中。用戶還可以確定信息需要被添加到另一文字處理器文檔或不是文字處理器的另一用戶應(yīng)用。在上面呈現(xiàn)的任何事件中,用戶可以使用外圍設(shè)備來輸入命令,其對(duì)應(yīng)于移除(即,剪切)指定信息并將指定信息放置(即,粘貼)或輸入到另一文檔或另一計(jì)算機(jī)程序中。剪切和粘貼操作要求操作系統(tǒng)將與指定信息相關(guān)聯(lián)的數(shù)據(jù)從計(jì)算機(jī)硬件(即存儲(chǔ)器)中的一個(gè)位置移動(dòng)到計(jì)算機(jī)硬件中的另一位置。這些操作以及由其他用戶應(yīng)用執(zhí)行的其他操作可導(dǎo)致用戶應(yīng)用響應(yīng)緩慢,并且在某些情況下一起停止工作(即崩潰)。如果用戶應(yīng)用安裝在由用戶擁有的獨(dú)立臺(tái)式計(jì)算機(jī)或膝上型計(jì)算機(jī)上,則他們可以簡(jiǎn)單地重啟用戶應(yīng)用,或者重啟計(jì)算機(jī),并且通常會(huì)解決問題。然而,如果用戶應(yīng)用存儲(chǔ)在由第三方托管的服務(wù)器(物理或虛擬)上,則用戶可能不能夠重啟應(yīng)用,并且他們不能重啟服務(wù)器。結(jié)果,服務(wù)器的所有者或運(yùn)營(yíng)商可能不得不診斷這個(gè)問題以便解決關(guān)于應(yīng)用的問題。
目前,負(fù)責(zé)企業(yè)網(wǎng)絡(luò)上托管的用戶應(yīng)用服務(wù)的維護(hù)和日常操作的網(wǎng)絡(luò)管理員只有一種方式來修復(fù)或更新用戶應(yīng)用。網(wǎng)絡(luò)管理員必須登錄到托管用戶應(yīng)用的企業(yè)網(wǎng)絡(luò)上的服務(wù)器,以及對(duì)用戶應(yīng)用的某些功能的訪問受到限制。當(dāng)網(wǎng)絡(luò)管理員登錄到服務(wù)器時(shí),服務(wù)器可以開始在維護(hù)模式下運(yùn)行??梢杂删W(wǎng)絡(luò)管理員激活此模式,以便執(zhí)行更新,或者以便修復(fù)正在遭遇問題的用戶應(yīng)用。當(dāng)網(wǎng)絡(luò)管理員以維護(hù)模式登錄到服務(wù)器時(shí),用戶被阻止登錄到對(duì)用戶需要使用的用戶應(yīng)用進(jìn)行托管的服務(wù)器,因此企業(yè)網(wǎng)絡(luò)將用戶登錄到另一個(gè)服務(wù)器(即,將用戶負(fù)載平衡到另一個(gè)服務(wù)器)。但是,企業(yè)網(wǎng)絡(luò)不區(qū)分網(wǎng)絡(luò)管理員連接和正常用戶連接,因此它也阻止網(wǎng)絡(luò)管理員登錄到服務(wù)器來執(zhí)行關(guān)于用戶應(yīng)用的維護(hù)和/或故障排除問題。為了克服這個(gè)問題,網(wǎng)絡(luò)管理員經(jīng)常修改服務(wù)器的負(fù)載平衡器,或從工作組(對(duì)用戶應(yīng)用進(jìn)行托管的服務(wù)器組)中移除服務(wù)器。這種方法防止網(wǎng)絡(luò)管理員登錄到有問題的服務(wù)器和/或啟動(dòng)有問題的用戶應(yīng)用。為了解決這個(gè)問題,網(wǎng)絡(luò)管理員頻繁地將用戶應(yīng)用的額外拷貝發(fā)布到特定的服務(wù)器,并且僅將該額外拷貝指派給網(wǎng)絡(luò)管理員和選定的測(cè)試用戶。
附圖說明
圖1是與本公開的實(shí)施例相一致的示例性網(wǎng)絡(luò)環(huán)境的框圖。
圖2a-圖2b是與本公開的實(shí)施例相一致的示例性網(wǎng)絡(luò)環(huán)境的框圖。
圖3是與本公開的實(shí)施例相一致的示例性服務(wù)器的框圖。
圖4是表示用于將設(shè)備連接到正在接收維護(hù)的應(yīng)用和桌面的示例性方法的流程圖。
具體實(shí)施方式
現(xiàn)在將詳細(xì)參考根據(jù)本公開所實(shí)現(xiàn)的示例性實(shí)施例,其示例在附圖中圖示出。在任何可能的情況下,在遍及整個(gè)附圖中將使用相同的參考編號(hào)來指代相同或相似的部分。
本文中所公開的系統(tǒng)和方法將從負(fù)載平衡中移除一個(gè)或多個(gè)服務(wù)器并將額外的用戶應(yīng)用發(fā)布在僅可由網(wǎng)絡(luò)管理員和所選用戶訪問的隔離目錄中,從而使他們能夠故障排除用戶正在遭遇問題的有問題用戶應(yīng)用或虛擬桌面的過程整合。
在本公開中所描述的實(shí)施例提供了通過呈現(xiàn)管控在用戶的計(jì)算設(shè)備上運(yùn)行的操作系統(tǒng)和在一個(gè)或多個(gè)服務(wù)器上運(yùn)行的硬件和軟件之間的交互的硬件和軟件解決方案來完全利用計(jì)算設(shè)備應(yīng)用(例如,microsoftword)和計(jì)算設(shè)備桌面環(huán)境(例如,紅帽操作系統(tǒng))的能力。
圖1是示例性網(wǎng)絡(luò)環(huán)境100的框圖。雖然網(wǎng)絡(luò)環(huán)境100是針對(duì)虛擬網(wǎng)絡(luò)環(huán)境,但是應(yīng)當(dāng)理解,網(wǎng)絡(luò)環(huán)境100可以是使用分組進(jìn)行通信的任何類型的網(wǎng)絡(luò)。網(wǎng)絡(luò)環(huán)境100可以包括一個(gè)或多個(gè)客戶端設(shè)備102、網(wǎng)絡(luò)104和數(shù)據(jù)中心120。
數(shù)據(jù)中心120可以包括一個(gè)或多個(gè)存儲(chǔ)器和中央處理單元(cpu)。cpu可以包括響應(yīng)并處理從一個(gè)或多個(gè)存儲(chǔ)器中取出的指令的邏輯電路。cpu可以包括能夠執(zhí)行存儲(chǔ)在一個(gè)或多個(gè)存儲(chǔ)器中的特定指令集的一個(gè)或多個(gè)處理器、現(xiàn)場(chǎng)可編程門陣列(fpga)或數(shù)字信號(hào)處理器(dsp)。指令也可以存儲(chǔ)在一個(gè)或多個(gè)高速緩存中。一個(gè)或多個(gè)存儲(chǔ)器可以包括有形的非暫時(shí)計(jì)算機(jī)可讀介質(zhì),諸如軟盤、硬盤、cd-rom(壓縮盤只讀存儲(chǔ)器)、mo(磁光)驅(qū)動(dòng)器、dvd-rom(數(shù)字通用盤只讀存儲(chǔ)器)、dvd-ram(數(shù)字通用盤隨機(jī)存取存儲(chǔ)器)、高速緩存、寄存器或半導(dǎo)體存儲(chǔ)器。一個(gè)或多個(gè)存儲(chǔ)器可以是任何類型的隨機(jī)存取存儲(chǔ)器(ram)或能夠如本文所述進(jìn)行操作的任何其它可用的存儲(chǔ)器芯片。
一個(gè)或多個(gè)客戶端設(shè)備102是可以通過各種手段從數(shù)據(jù)中心120獲取遠(yuǎn)程服務(wù)的設(shè)備??蛻舳嗽O(shè)備102可以直接地(例如,客戶端設(shè)備102e)或間接地通過網(wǎng)絡(luò)104(例如,客戶端設(shè)備102a-d)而與數(shù)據(jù)中心120進(jìn)行通信。在一些實(shí)施例中,網(wǎng)絡(luò)104可以是專用網(wǎng)絡(luò),并且在其他實(shí)施例中,網(wǎng)絡(luò)104可以是公共網(wǎng)絡(luò)。雖然客戶端設(shè)備102被描繪為桌面計(jì)算機(jī)(例如客戶端設(shè)備102a和102e)、膝上型計(jì)算機(jī)(例如客戶端設(shè)備102b)、平板電腦(例如客戶端設(shè)備102c)和移動(dòng)智能電話(例如客戶端設(shè)備102d),但是應(yīng)當(dāng)理解,客戶端設(shè)備102可以是能夠直接或間接地向數(shù)據(jù)中心120發(fā)送和從數(shù)據(jù)中心120接收信號(hào)的任何類型的設(shè)備(例如智能手表)。
數(shù)據(jù)中心120是物理或虛擬的用于存儲(chǔ)、管理和傳播與特定公共或私人實(shí)體有關(guān)的數(shù)據(jù)和信息的中央存儲(chǔ)庫。數(shù)據(jù)中心120可用于容納計(jì)算機(jī)系統(tǒng)和相關(guān)聯(lián)的組件,諸如一個(gè)或多個(gè)物理服務(wù)器、虛擬服務(wù)器和存儲(chǔ)系統(tǒng)。數(shù)據(jù)中心120除了其他之外還可以包括一個(gè)或多個(gè)服務(wù)器(例如服務(wù)器122)和后端系統(tǒng)130。在一些實(shí)施例中,數(shù)據(jù)中心120可以包括網(wǎng)關(guān)、器具或兩者的組合。
服務(wù)器122是可以由任何電子可尋址格式表示的實(shí)體,并且可以作為單個(gè)實(shí)體或服務(wù)器場(chǎng)的成員而存在。服務(wù)器122可以是物理服務(wù)器或虛擬服務(wù)器。在一些實(shí)施例中,服務(wù)器122可以包括硬件層、操作系統(tǒng)、以及創(chuàng)建或管理一個(gè)或多個(gè)虛擬機(jī)的監(jiān)管器。服務(wù)器122向端點(diǎn)提供一個(gè)或多個(gè)服務(wù)。這些服務(wù)包括將應(yīng)用服務(wù)器128上托管的一個(gè)或多個(gè)應(yīng)用提供給一個(gè)或多個(gè)端點(diǎn)(例如客戶端設(shè)備102a-e)。例如,應(yīng)用服務(wù)器128可以包括基于windowstm的應(yīng)用和計(jì)算資源。服務(wù)器122可以包括的另一服務(wù)涉及將托管在桌面服務(wù)器124上的一個(gè)或多個(gè)虛擬桌面提供給一個(gè)或多個(gè)端點(diǎn)。例如,桌面服務(wù)器124可以包括提供與本地安裝的操作系統(tǒng)版本相同的功能性的虛擬操作系統(tǒng)(例如,windowstm)。
桌面服務(wù)器124可以包括托管的共享桌面,其允許多個(gè)用戶訪問單個(gè)共享的遠(yuǎn)程桌面服務(wù)桌面、虛擬桌面基礎(chǔ)架構(gòu)桌面,允許每個(gè)用戶擁有他們自己的虛擬機(jī)、流式傳輸?shù)拇疟P圖像、本地虛擬機(jī)、個(gè)體應(yīng)用(例如一個(gè)或多個(gè)應(yīng)用)或其組合。
后端系統(tǒng)130可以包括服務(wù)器場(chǎng)或服務(wù)器組中的服務(wù)器、計(jì)算機(jī)聯(lián)網(wǎng)硬件、或器具的單個(gè)或多個(gè)實(shí)例、以及直接或間接地與數(shù)據(jù)中心120的接口。例如,后端系統(tǒng)130可以包括microsofttm活動(dòng)目錄,其可以提供多個(gè)網(wǎng)絡(luò)服務(wù),包括輕量級(jí)目錄訪問協(xié)議(ldap)目錄服務(wù)、基于kerberos認(rèn)證、基于域名系統(tǒng)(dns)的命名和其他網(wǎng)絡(luò)信息、以及若干服務(wù)器之間的目錄更新的同步。后端系統(tǒng)130除了其他之外還可以包括oracle后端服務(wù)器、sql服務(wù)器后端和/或動(dòng)態(tài)主機(jī)配置協(xié)議(dhcp)。后端系統(tǒng)130可以向數(shù)據(jù)中心120提供數(shù)據(jù)、服務(wù)或兩者的組合,數(shù)據(jù)中心120然后可以經(jīng)由變化的形式將那個(gè)信息提供給客戶端設(shè)備102。
圖2a是示例性網(wǎng)絡(luò)環(huán)境200a的框圖。網(wǎng)絡(luò)環(huán)境200a包括可以用于向一個(gè)或多個(gè)用戶(例如,用戶1、用戶2)提供與托管在應(yīng)用服務(wù)器128上的應(yīng)用和/或托管在桌面服務(wù)器124上的虛擬桌面進(jìn)行交互的能力的軟件。用戶可以使用客戶端設(shè)備102來與應(yīng)用和虛擬桌面進(jìn)行交互。
在一些實(shí)施例中,可以將網(wǎng)絡(luò)環(huán)境200a的組件安裝在單個(gè)計(jì)算設(shè)備上,并且在其他實(shí)施例中,可以將組件安裝在多于一個(gè)的計(jì)算設(shè)備上。例如,控制器操控臺(tái)201a、經(jīng)紀(jì)人服??務(wù)207a和虛擬桌面代理209a都可以安裝在通過服務(wù)器122直接與桌面服務(wù)器124和應(yīng)用服務(wù)器128進(jìn)行交互的獨(dú)立計(jì)算設(shè)備(例如,客戶端設(shè)備102e)上。與這兩臺(tái)服務(wù)器進(jìn)行交互的用戶可以是網(wǎng)絡(luò)管理員。在一些實(shí)施例中,用戶可以是網(wǎng)絡(luò)管理員標(biāo)識(shí)的被授予特殊權(quán)限以與服務(wù)器122的組件(即應(yīng)用服務(wù)器128和/或桌面服務(wù)器124)進(jìn)行交互的用戶。在其他實(shí)施例中,這些組件可以分散遍布在多個(gè)計(jì)算設(shè)備上。例如,可以將控制器操控臺(tái)201a安裝在客戶端設(shè)備102e上,可以將經(jīng)紀(jì)人服務(wù)207a安裝在服務(wù)器122上,并且可以將虛擬桌面代理209a安裝在服務(wù)器122上。
控制器操控臺(tái)201a可以是管理員(例如,用戶1)可以用來與應(yīng)用服務(wù)器128和/或桌面服務(wù)器124交互的用戶接口??刂破鞑倏嘏_(tái)201a可以經(jīng)由遞送控制器(例如,圖3的遞送控制器310)來與應(yīng)用服務(wù)器128和/或桌面服務(wù)器124進(jìn)行交互。控制器操控臺(tái)201a是圖形用戶接口,其可以向管理員提供在桌面服務(wù)器124和應(yīng)用服務(wù)器128上修改某些參數(shù)的能力。
經(jīng)紀(jì)人服務(wù)207a可以是網(wǎng)絡(luò)環(huán)境200a的軟件和/或硬件組件,其可以作為經(jīng)紀(jì)人操縱(broker)用戶設(shè)備(例如,客戶端設(shè)備)與托管在應(yīng)用服務(wù)器128上的一個(gè)或多個(gè)應(yīng)用和/或托管在桌面服務(wù)器124上的虛擬桌面之間的連接?;谂c用戶設(shè)備嘗試與之建立連接的應(yīng)用或虛擬桌面建立的現(xiàn)有連接的數(shù)量,經(jīng)紀(jì)人服務(wù)207a可以確定客戶端設(shè)備是否可以連接到應(yīng)用或虛擬桌面。經(jīng)紀(jì)人服務(wù)207a可以是在遞送控制器上提供的服務(wù)。
虛擬桌面代理209a可以是安裝在客戶機(jī)設(shè)備嘗試連接到的主機(jī)機(jī)器上的一組驅(qū)動(dòng)器和服務(wù)。
接收器203a可以是提供虛擬桌面和應(yīng)用的遞送的軟件客戶端。可以將接收器203a安裝在客戶端設(shè)備(例如,客戶端設(shè)備102a-e)上。接收器203a可以提供對(duì)虛擬桌面、應(yīng)用和信息技術(shù)服務(wù)的自助服務(wù)訪問。接收器203a可以是軟件、固件、硬件或某種組合,其為用戶的設(shè)備提供顯示托管在應(yīng)用服務(wù)器128上的一個(gè)或多個(gè)應(yīng)用或托管在桌面服務(wù)器124上的一個(gè)或多個(gè)虛擬桌面的??內(nèi)容的能力。返回到手寫數(shù)字文檔的用戶的示例,如果用戶嘗試訪問可以將手寫信息轉(zhuǎn)錄成標(biāo)準(zhǔn)文本的應(yīng)用,則用戶的設(shè)備可以訪問托管在應(yīng)用服務(wù)器128上的或安裝在桌面服務(wù)器124上的提供該特征的應(yīng)用。如果應(yīng)用托管在應(yīng)用服務(wù)器128上或安裝在桌面服務(wù)器124上,則服務(wù)器可以將應(yīng)用發(fā)送到用戶的設(shè)備,或者可以在用戶的設(shè)備和安裝在服務(wù)器上的應(yīng)用之間發(fā)送和接收消息。在一些實(shí)施例中,可以將應(yīng)用直接發(fā)送到用戶設(shè)備,并且用戶可以在本地使用該應(yīng)用。在其他實(shí)施例中,應(yīng)用托管在服務(wù)器上,并且當(dāng)用戶想要執(zhí)行操作時(shí),用戶可以在他們的設(shè)備上輸入命令,并且接收器203a可以向駐留在服務(wù)器上的應(yīng)用發(fā)送信號(hào)。服務(wù)器然后可以執(zhí)行命令并將結(jié)果返回給用戶設(shè)備。
應(yīng)用商店205a向網(wǎng)絡(luò)管理員提供創(chuàng)建企業(yè)應(yīng)用商店的能力,所述企業(yè)應(yīng)用商店聚合了來自桌面服務(wù)器124和應(yīng)用服務(wù)器128的資源。應(yīng)用商店205a可以通過來自與用戶相關(guān)聯(lián)的一個(gè)或多個(gè)設(shè)備的單個(gè)門戶而向用戶提供對(duì)虛擬桌面和應(yīng)用、移動(dòng)應(yīng)用、外部軟件即服務(wù)(saas)應(yīng)用和內(nèi)部web應(yīng)用的訪問。例如,用戶可能會(huì)在平板電腦上開始對(duì)一個(gè)microsoftword文檔進(jìn)行工作,并且在將來的某個(gè)時(shí)間可以使用桌面計(jì)算機(jī)訪問同一文檔。應(yīng)用商店205a為網(wǎng)絡(luò)管理員提供管理為連接到企業(yè)網(wǎng)絡(luò)的用戶供應(yīng)公司桌面和應(yīng)用的能力。通過應(yīng)用商店205a合并資源的遞送可以為網(wǎng)絡(luò)管理員提供管理用于不同應(yīng)用的多個(gè)遞送機(jī)制的能力,和/或?yàn)槭謩?dòng)安裝和更新提供支持。
當(dāng)(例如,用戶2的)客戶端設(shè)備訪問托管在應(yīng)用服務(wù)器128上的應(yīng)用或托管在桌面服務(wù)器124上的虛擬桌面時(shí),用戶的設(shè)備(客戶端設(shè)備)可以登錄到接收器203a,接收器203a繼而將客戶端設(shè)備連接到應(yīng)用商店205a。在客戶端設(shè)備已經(jīng)登錄到應(yīng)用商店205a之后,經(jīng)紀(jì)人服務(wù)207a可以確定用戶正在請(qǐng)求的應(yīng)用或虛擬桌面在虛擬桌面代理209a上是否可用。經(jīng)紀(jì)人服務(wù)207a評(píng)估與用戶正在請(qǐng)求的被請(qǐng)求的應(yīng)用和/或虛擬桌面相關(guān)聯(lián)的連接的數(shù)量。如果沒有連接可用于將客戶端設(shè)備連接到被請(qǐng)求的應(yīng)用和/或虛擬桌面,那么經(jīng)紀(jì)人服務(wù)207a可以搜索托管在另一個(gè)服務(wù)器上的相同應(yīng)用和/或虛擬桌面,并嘗試將客戶端設(shè)備連接到在替代服務(wù)器上托管的應(yīng)用和/或虛擬桌面。在已經(jīng)定位具有可用連接的應(yīng)用和/或虛擬桌面之后,虛擬桌面代理209a可以建立與接收器203a的連接,并且客戶端設(shè)備可以開始與被請(qǐng)求的應(yīng)用和/或虛擬桌面交換信息。搜索可用連接的過程通常被稱為負(fù)載平衡。
在一些實(shí)施例中,管理員可以對(duì)托管在應(yīng)用服務(wù)器128上的一個(gè)或多個(gè)應(yīng)用或托管在桌面服務(wù)器124上的虛擬桌面進(jìn)行維護(hù)并且通過將服務(wù)器置于維護(hù)模式。作為結(jié)果,請(qǐng)求訪問應(yīng)用或虛擬桌面的用戶可以被拒絕訪問。
如果服務(wù)器正操作于維護(hù)模式中,則嘗試訪問應(yīng)用服務(wù)器128或桌面服務(wù)器124上的應(yīng)用或虛擬桌面的客戶端設(shè)備可以與客戶端設(shè)備嘗試與之建立連接的應(yīng)用或虛擬桌面的復(fù)制品拷貝建立連接。作為結(jié)果,客戶端設(shè)備將不會(huì)被負(fù)載平衡。
客戶端設(shè)備可以經(jīng)受與上面關(guān)于網(wǎng)絡(luò)環(huán)境200a描述的過程相類似的過程,但是代替可以使用圖2b中所示的網(wǎng)絡(luò)環(huán)境。如果應(yīng)用服務(wù)器128或桌面服務(wù)器124處于維護(hù)模式中,則虛擬桌面代理209b可以向接收器203b發(fā)送一個(gè)信號(hào),其指示虛擬桌面代理209b與之相關(guān)聯(lián)的對(duì)應(yīng)服務(wù)器處于維護(hù)模式中。經(jīng)紀(jì)人服務(wù)207b可以向接收器203b發(fā)送一個(gè)信號(hào),其指示接收器203b可以連接到的一個(gè)或多個(gè)目錄包含接收器203b當(dāng)前連接到的或嘗試連接到的應(yīng)用和/或虛擬桌面的復(fù)制品。在接收器203b接收到該信號(hào)之后,接收器203b可以將用戶的設(shè)備連接到復(fù)制的應(yīng)用和/或虛擬桌面,使得用戶可以在網(wǎng)絡(luò)管理員對(duì)服務(wù)器執(zhí)行維護(hù)時(shí)繼續(xù)使用應(yīng)用或虛擬桌面。(一個(gè)或多個(gè))復(fù)制的應(yīng)用或(一個(gè)或多個(gè))虛擬桌面可以是在將服務(wù)器置于維護(hù)模式中之前接收器203b連接到的應(yīng)用的精確復(fù)制品。
圖3是與本公開的實(shí)施例相一致的示例性服務(wù)器的框圖。服務(wù)器122可以是物理服務(wù)器或虛擬服務(wù)器。服務(wù)器122可以是硬件、軟件和/或固件的組合。服務(wù)器122除了其他之外還可以包括包含數(shù)據(jù)存儲(chǔ)(例如,數(shù)據(jù)存儲(chǔ)312)、負(fù)載平衡器(例如,負(fù)載平衡器313)、經(jīng)紀(jì)人服務(wù)(例如,經(jīng)紀(jì)人服務(wù)314)的遞送控制器(例如,遞送控制器310)、應(yīng)用服務(wù)器(例如,應(yīng)用服務(wù)器315)和桌面服務(wù)器(例如,桌面服務(wù)器316)。遞送控制器310可以是管理到web和企業(yè)應(yīng)用的客戶端連接的網(wǎng)絡(luò)設(shè)備。一般來說,遞送控制器310可以是管理或引導(dǎo)兩個(gè)實(shí)體之間的數(shù)據(jù)流的硬件設(shè)備或軟件程序。例如,遞送控制器310可以管理或引導(dǎo)客戶端設(shè)備和存儲(chǔ)在應(yīng)用服務(wù)器315上的應(yīng)用之間的數(shù)據(jù)流。遞送控制器310可以優(yōu)化最終用戶的性能、可靠性、數(shù)據(jù)中心資源使用、以及針對(duì)企業(yè)應(yīng)用的安全性。在一些實(shí)施例中,可以將遞送控制器310策略地放置在防火墻(未示出)的后面并且在一個(gè)或多個(gè)應(yīng)用服務(wù)器的前面,成為可以確定應(yīng)用的安全需要并提供簡(jiǎn)化的認(rèn)證、授權(quán)和記賬(aaa)的單個(gè)控制點(diǎn)。
遞送控制器310可以通過實(shí)現(xiàn)諸如壓縮和反向高速緩存之類的優(yōu)化技術(shù)來加速通過網(wǎng)絡(luò)104遞送的應(yīng)用的執(zhí)行。通過反向高速緩存,通??梢詮倪f送控制器310中的高速緩存遞送針對(duì)靜態(tài)或動(dòng)態(tài)web對(duì)象的新用戶請(qǐng)求,而不必由服務(wù)器重新生成。
在一些實(shí)施例中,遞送控制器310可以是虛擬遞送控制器。虛擬遞送控制器在虛擬化的數(shù)據(jù)中心和云計(jì)算環(huán)境中特別有用,在其中在應(yīng)用需求波動(dòng)時(shí)用戶需要能夠上下縮放容量。
應(yīng)用服務(wù)器315可以是包含一個(gè)或多個(gè)虛擬應(yīng)用(例如,microsoftofficesuitetm)的物理或虛擬服務(wù)器,客戶端設(shè)備可以經(jīng)由遞送控制器310連接到所述虛擬應(yīng)用。
桌面服務(wù)器316可以是包含一個(gè)或多個(gè)虛擬桌面(例如,microsoftvistatm)的物理或虛擬服務(wù)器,客戶端設(shè)備可以經(jīng)由遞送控制器310連接到所述虛擬桌面。
虛擬桌面代理317可以包括應(yīng)用服務(wù)器315和桌面服務(wù)器316。
數(shù)據(jù)存儲(chǔ)312可以是包含關(guān)于作為服務(wù)器場(chǎng)(未示出)的一部分的一個(gè)或多個(gè)服務(wù)器(例如,應(yīng)用服務(wù)器)的信息的數(shù)據(jù)庫。服務(wù)器場(chǎng)是基于預(yù)定的規(guī)則集而已經(jīng)被邏輯分組在一起的物理或虛擬服務(wù)器的集合。例如,服務(wù)器場(chǎng)中的每個(gè)服務(wù)器可能只包括可在移動(dòng)電話、平板電腦和個(gè)人數(shù)據(jù)助理(pda)上執(zhí)行的移動(dòng)應(yīng)用。因此,服務(wù)器場(chǎng)可以稱為移動(dòng)應(yīng)用服務(wù)器場(chǎng)。
數(shù)據(jù)存儲(chǔ)312可以包含針對(duì)應(yīng)用服務(wù)器315的配置信息。在一些實(shí)施例中,應(yīng)用服務(wù)器315可以是服務(wù)器場(chǎng),并且數(shù)據(jù)存儲(chǔ)312可以包含針對(duì)服務(wù)器場(chǎng)中的每個(gè)服務(wù)器的配置信息。
遞送控制器310可以幫助桌面服務(wù)器316將一個(gè)或多個(gè)虛擬桌面遞送到客戶端設(shè)備。遞送控制器310可以幫助網(wǎng)絡(luò)管理員管理、維護(hù)和優(yōu)化所有虛擬桌面連接。遞送控制器310可以向網(wǎng)絡(luò)管理員提供基于適當(dāng)?shù)牟呗浴⒔巧蚱渌麥?zhǔn)則來執(zhí)行將虛擬桌面向客戶端設(shè)備進(jìn)行動(dòng)態(tài)池、按需指派、以及預(yù)指派的能力。遞送控制器310管理在其上運(yùn)行的虛擬桌面和會(huì)話。它還可以作為經(jīng)紀(jì)人操縱來自客戶端設(shè)備的連接請(qǐng)求并管理許可。如果桌面服務(wù)器316是服務(wù)器場(chǎng)的一部分,則遞送控制器310可以管理包含針對(duì)服務(wù)器場(chǎng)的永久配置信息的數(shù)據(jù)存儲(chǔ)。
經(jīng)紀(jì)人服務(wù)314可以包含與經(jīng)紀(jì)人服務(wù)207a和207b相同的組件和特征。
負(fù)載平衡器313可以將來自客戶端設(shè)備的連接分布在托管相同應(yīng)用內(nèi)容的服務(wù)器之中。通過將應(yīng)用請(qǐng)求在多個(gè)服務(wù)器上進(jìn)行平衡,負(fù)載平衡器313可以防止任何桌面服務(wù)器變成單個(gè)故障點(diǎn),從而改善整體應(yīng)用的可用性和響應(yīng)性。例如,當(dāng)一個(gè)桌面服務(wù)器變成不可用時(shí),負(fù)載平衡器313可以將新的應(yīng)用請(qǐng)求引導(dǎo)到其他可用的服務(wù)器。
負(fù)載平衡器313還可以改善服務(wù)器利用率并將可用性最大化。負(fù)載平衡能夠輔助網(wǎng)絡(luò)管理員向外擴(kuò)展應(yīng)用服務(wù)器基礎(chǔ)設(shè)施。隨著應(yīng)用需求增加,可以將新的服務(wù)器添加到資源池中,并且負(fù)載平衡器313可以立即開始向新服務(wù)器發(fā)送業(yè)務(wù)。
負(fù)載平衡器313可以包括確定特定服務(wù)器的“分?jǐn)?shù)”或當(dāng)前負(fù)載值的一組規(guī)則。該分?jǐn)?shù)可以用于確定:到應(yīng)用服務(wù)器315上的應(yīng)用的連接可以如何在應(yīng)用服務(wù)器315上托管的應(yīng)用之間進(jìn)行分布。如果存在多個(gè)應(yīng)用服務(wù)器而不是一個(gè)應(yīng)用服務(wù)器,則可以使用分?jǐn)?shù)來確定到應(yīng)用的連接可以如何在服務(wù)器場(chǎng)內(nèi)的服務(wù)器之間進(jìn)行分布。分?jǐn)?shù)可以由在應(yīng)用服務(wù)器上運(yùn)行的當(dāng)前獨(dú)立計(jì)算架構(gòu)(ica)會(huì)話(連接)的數(shù)量來確定。例如,最大值為100個(gè)連接意味著應(yīng)用服務(wù)器只能支持100個(gè)連接。作為結(jié)果,應(yīng)用服務(wù)器可以支持100個(gè)客戶端設(shè)備。負(fù)載評(píng)估器也可以將諸如處理器和存儲(chǔ)器利用率之類的資源利用率作為因素計(jì)入分?jǐn)?shù)值。
其中用戶可能不能獲得對(duì)被請(qǐng)求的應(yīng)用和/或桌面的訪問的另一種情形是當(dāng)將應(yīng)用服務(wù)器315和桌面服務(wù)器316放入維護(hù)模式中時(shí)。在這種情形下,在評(píng)估是否存在可用于將客戶端設(shè)備連接到應(yīng)用服務(wù)器315或桌面服務(wù)器316的連接之前,經(jīng)紀(jì)人服務(wù)314可以拒絕客戶端設(shè)備連接到應(yīng)用或虛擬桌面。
圖4是表示用于將設(shè)備連接到正在接收維護(hù)的應(yīng)用和桌面的示例性方法的流程圖。將容易理解,可以改變所圖示的過程以刪除步驟或進(jìn)一步包括附加步驟。雖然以下描述針對(duì)由桌面服務(wù)器(例如,桌面服務(wù)器124)和/或應(yīng)用服務(wù)器(例如,應(yīng)用服務(wù)器128)執(zhí)行的方法,但是應(yīng)當(dāng)理解,該方法可以全部或部分地由除了這兩個(gè)服務(wù)器之外的設(shè)備(例如,服務(wù)器122或數(shù)據(jù)中心120)來執(zhí)行。本文所描述的用于將客戶端設(shè)備連接到正在進(jìn)行維護(hù)的應(yīng)用服務(wù)器或桌面服務(wù)器的示例性方法能夠向客戶端設(shè)備的用戶提供在網(wǎng)絡(luò)管理員對(duì)服務(wù)器執(zhí)行維護(hù)時(shí)繼續(xù)使用應(yīng)用或虛擬桌面的能力。
在初始開始步驟之后,服務(wù)器可以確定服務(wù)器是否處于維護(hù)模式中。服務(wù)器可以由網(wǎng)絡(luò)管理員置于維護(hù)模式中。如果服務(wù)器確定它不處于維護(hù)模式中,則服務(wù)器可以返回到步驟402以確定它是否已被置于維護(hù)模式中。
如果服務(wù)器確定它處于維護(hù)模式中,則服務(wù)器可以在步驟404中禁用負(fù)載平衡。
在步驟404中禁用負(fù)載平衡之后,服務(wù)器可以在步驟406中創(chuàng)建應(yīng)用和桌面測(cè)試用戶組。測(cè)試用戶組可以是在應(yīng)用或虛擬桌面正在接收維護(hù)時(shí)被給予許可測(cè)試(使用)應(yīng)用或虛擬桌面的一組用戶。在一些實(shí)施例中,該組可由管理員確定。例如,管理員可以基于正在接收維護(hù)的應(yīng)用來確定哪些用戶要包括在測(cè)試用戶組中。在其他實(shí)施例中,測(cè)試用戶組可以由正在遭遇復(fù)雜化或問題的應(yīng)用來確定。例如,如果應(yīng)用具有慢的響應(yīng)時(shí)間或者在用戶正在使用應(yīng)用時(shí)持續(xù)關(guān)閉,則網(wǎng)絡(luò)管理員可能會(huì)將與使用該應(yīng)用的用戶相關(guān)聯(lián)的一個(gè)或多個(gè)客戶端設(shè)備包含到測(cè)試用戶組。在其他實(shí)施例中,服務(wù)器或服務(wù)器組件可以將客戶端設(shè)備添加到測(cè)試組而不向網(wǎng)絡(luò)管理員咨詢。例如,如果虛擬桌面代理(例如,虛擬桌面代理209a)確定若干客戶端設(shè)備不能連接到應(yīng)用或虛擬桌面,或者客戶端設(shè)備持續(xù)從應(yīng)用或虛擬桌面斷開連接,那么遞送控制器(例如,遞送控制器310)可以創(chuàng)建測(cè)試用戶組。在一些實(shí)施例中,遞送控制器可以確定何時(shí)正在發(fā)生應(yīng)用或虛擬桌面不正常事項(xiàng)。遞送控制器可以使用由負(fù)載平衡器生成的信息來確定應(yīng)用或桌面是否正在遭遇問題。例如,如果服務(wù)器遭遇的負(fù)載開始以一定的頻率波動(dòng),則遞送控制器可以確定該波動(dòng)是否是由于正在遭遇問題的應(yīng)用或虛擬桌面所引起。其中遞送控制器可以確定應(yīng)用或桌面是否存在問題的一種方式是確定應(yīng)用和/或虛擬桌面關(guān)閉或遭遇間歇性問題的速率。遞送控制器可以使用平均故障間隔時(shí)間(mtbf)來確定應(yīng)用和/或桌面是否正在遭遇問題。例如,如果應(yīng)用或虛擬桌面遭遇問題的速率(頻率或周期)超過mtbf,那么遞送控制器可以將與故障相關(guān)聯(lián)的客戶端設(shè)備指派給測(cè)試用戶組。
在已經(jīng)創(chuàng)建測(cè)試用戶組之后,服務(wù)器可以分別在步驟408和步驟412中創(chuàng)建包含針對(duì)測(cè)試用戶組中的用戶的應(yīng)用和/或虛擬桌面的復(fù)制品的一個(gè)或多個(gè)目錄。復(fù)制的應(yīng)用和桌面的目錄可以由遞送控制器創(chuàng)建。在一些實(shí)施例中,目錄可以存儲(chǔ)在與遞送控制器相同的服務(wù)器上。在其他實(shí)施例中,目錄可以存儲(chǔ)在另一個(gè)服務(wù)器上。
在一些實(shí)施例中,應(yīng)用測(cè)試用戶組中的測(cè)試用戶可以與桌面測(cè)試用戶組中的測(cè)試用戶相同,并且反之亦然。
在已經(jīng)創(chuàng)建目錄之后,響應(yīng)于用于將用戶的設(shè)備與應(yīng)用和/或虛擬桌面斷開連接的用戶輸入,用戶的設(shè)備(例如,客戶端設(shè)備102c)可以在步驟410中將其自身從與其連接的應(yīng)用斷開連接,和/或在步驟414中將其自身從用戶的設(shè)備連接到的虛擬桌面斷開連接。
在一些實(shí)施例中,遞送控制器可以在步驟410中將用戶的設(shè)備(例如,客戶端設(shè)備102c)從用戶的設(shè)備連接到的應(yīng)用斷開連接和/或在步驟414中將其從用戶的設(shè)備連接到的虛擬桌面斷開連接。
遞送控制器可以將與測(cè)試用戶組中的用戶相關(guān)聯(lián)的客戶端設(shè)備重新連接到存儲(chǔ)在目錄中的應(yīng)用和虛擬桌面的復(fù)制品拷貝(416)。在客戶端設(shè)備連接到復(fù)制的應(yīng)用和虛擬桌面后,服務(wù)器可以確定它是否仍處于維護(hù)模式中(418)。在網(wǎng)絡(luò)管理員或服務(wù)器已經(jīng)解決與有問題的應(yīng)用和/或虛擬桌面相關(guān)聯(lián)的問題后,服務(wù)器可以退出維護(hù)模式。在一些實(shí)施例中,與應(yīng)用或虛擬桌面相關(guān)聯(lián)的問題可通過遞送控制器重新設(shè)置應(yīng)用服務(wù)器和/或桌面服務(wù)器內(nèi)的參數(shù)來解決。
如果它仍然處于維護(hù)模式中,則服務(wù)器可以繼續(xù)檢查它是否處于維護(hù)模式中,直到它不再處于維護(hù)模式,在那之后在步驟420中服務(wù)器可以進(jìn)行以重新啟用負(fù)載平衡。
在已經(jīng)重新啟用負(fù)載平衡之后,響應(yīng)于來自用戶的用于將用戶的設(shè)備重新連接到應(yīng)用和/或虛擬桌面的輸入,用戶的設(shè)備可以在步驟422中在服務(wù)器進(jìn)入維護(hù)模式之前將其自身重新連接到其初始連接到的應(yīng)用和/或虛擬桌面。在已經(jīng)將客戶端設(shè)備重新連接到初始的應(yīng)用和/或虛擬桌面之后,服務(wù)器可以在步驟424中移除臨時(shí)目錄。
在一些實(shí)施例中,步驟422和步驟424可由遞送控制器執(zhí)行。在已經(jīng)移除臨時(shí)目錄后,該方法可以進(jìn)行到結(jié)束(426)。
可以將本文所公開的方法實(shí)現(xiàn)為包括計(jì)算機(jī)可讀指令的計(jì)算機(jī)程序產(chǎn)品。計(jì)算機(jī)可讀指令可以存儲(chǔ)在有形的非暫時(shí)計(jì)算機(jī)可讀介質(zhì)上,諸如軟盤、硬盤、cd-rom(壓縮盤只讀存儲(chǔ)器)、mo(磁光)盤、dvd-rom(數(shù)字通用盤-只讀存儲(chǔ)器)、dvdram(數(shù)字通用盤-隨機(jī)存取存儲(chǔ)器)、ram、高速緩存、寄存器或半導(dǎo)體存儲(chǔ)器。計(jì)算機(jī)可讀指令可以存儲(chǔ)在客戶端設(shè)備(例如客戶端設(shè)備102a-e)和/或數(shù)據(jù)中心(例如數(shù)據(jù)中心120)的組合上,并且可以用于在客戶端設(shè)備和/或數(shù)據(jù)中心上實(shí)現(xiàn)控制器操控臺(tái)201a、接收器203a、應(yīng)用商店205a、經(jīng)紀(jì)人服??務(wù)207a和虛擬桌面代理209a。計(jì)算機(jī)可讀指令可用于實(shí)現(xiàn)圖4中的如下步驟:確定服務(wù)器是否處于維護(hù)模式(步驟402和步驟418)、禁用負(fù)載平衡(步驟404)、確定步驟406、創(chuàng)建包含復(fù)制的應(yīng)用或桌面的臨時(shí)目錄(步驟408和步驟412)、將用戶的計(jì)算設(shè)備從其所連接到的本地應(yīng)用或桌面斷開連接(步驟410和步驟414)、將用戶的計(jì)算設(shè)備連接到復(fù)制的應(yīng)用或桌面(步驟416)、重新啟用負(fù)載平衡(步驟420)、將用戶的計(jì)算設(shè)備重新連接到其初始連接到的本地應(yīng)用和/或桌面(步驟422)、以及移除步驟424。
可替代地,可以在例如可編程處理器、計(jì)算機(jī)或多個(gè)計(jì)算機(jī)之類的數(shù)據(jù)處理裝置的硬件組件或者硬件和軟件的組合中實(shí)現(xiàn)所述方法。數(shù)據(jù)處理裝置的硬件組件和/或硬件和軟件組件的組合可以包括在客戶端設(shè)備(例如,客戶端設(shè)備102a-e)和/或數(shù)據(jù)中心(例如,數(shù)據(jù)中心120)中??梢砸匀魏涡问降木幊陶Z言編寫計(jì)算機(jī)程序,所述編程語言包括編譯或解釋語言,并且可以以包括作為獨(dú)立程序或作為模塊、組件、子程序或適用于在計(jì)算環(huán)境中使用的其他單元的任何形式來部署它??删幊烫幚砥?、計(jì)算機(jī)或多個(gè)計(jì)算機(jī)可用于執(zhí)行一個(gè)程序,所述程序執(zhí)行圖4中的如下步驟:確定服務(wù)器是否處于維護(hù)模式中(圖4中的步驟402和步驟418)、禁用負(fù)載平衡(步驟404)、確定步驟406、創(chuàng)建包含復(fù)制的應(yīng)用或桌面的臨時(shí)目錄(步驟408和步驟412)、將用戶的計(jì)算設(shè)備從其連接到的本地應(yīng)用或桌面斷開連接(步驟410和步驟414)、將用戶的計(jì)算設(shè)備連接到復(fù)制的應(yīng)用或桌面(步驟416)、重新啟用負(fù)載平衡(步驟420)、以及將用戶的計(jì)算設(shè)備重新連接到其初始連接到的本地應(yīng)用和/或桌面(步驟422)以及移除步驟424。
可以將計(jì)算機(jī)程序部署為在一個(gè)站點(diǎn)處的多個(gè)計(jì)算機(jī)上或者在一個(gè)計(jì)算機(jī)上執(zhí)行或者分布在多個(gè)站點(diǎn)上并且由如圖1中所圖示的通信網(wǎng)絡(luò)互連。
在前面的說明書中,已經(jīng)參考特定示例性實(shí)施例描述了實(shí)施例。然而,顯而易見的是,在不脫離如隨后的權(quán)利要求中闡述的示例性實(shí)施例的更廣泛的精神和范圍的情況下,可以進(jìn)行各種修改和改變。因此,說明書和附圖被認(rèn)為是說明性的而不是限制性的。從本文公開的本發(fā)明的說明書和實(shí)踐的考慮中,本公開的其它實(shí)施例對(duì)于本領(lǐng)域技術(shù)人員來說是顯而易見的。