可以借助變更來持續(xù)更新在線計(jì)算服務(wù)以滿足生產(chǎn)業(yè)務(wù)量引入的要求并提供商業(yè)價(jià)值。存在涉及更新在線計(jì)算服務(wù)的組件的相當(dāng)大的風(fēng)險(xiǎn)。不同的在線計(jì)算服務(wù)以高的靈敏性和可忽略的顧客影響采用傳統(tǒng)的機(jī)構(gòu)來管理管理風(fēng)險(xiǎn)和部署補(bǔ)丁/顧客需求的沖突要求。
存在多種類型的測(cè)試環(huán)境用于在一些容量中類似生產(chǎn)環(huán)境。然而,不管測(cè)試環(huán)境離生產(chǎn)環(huán)境多么靠近,生產(chǎn)環(huán)境最可能具有將其與測(cè)試環(huán)境區(qū)分開的一些唯一特性。在生產(chǎn)環(huán)境中存在發(fā)現(xiàn)問題的很大可能性,即使在測(cè)試環(huán)境中已經(jīng)驗(yàn)證了變更。此外,采用多個(gè)測(cè)試環(huán)境顯著增加了成本。另外,在變更被鋪開(roll out)到生產(chǎn)環(huán)境之前,開發(fā)團(tuán)隊(duì)采用在每個(gè)變更的組件上運(yùn)行的部署驗(yàn)證測(cè)試。然而,這些測(cè)試并不類似在生產(chǎn)環(huán)境中正常發(fā)生的真實(shí)世界場(chǎng)景。通常,跨在線計(jì)算服務(wù)部署變更的組件消耗多天。
需要本改善是關(guān)于這些和其它的考量。
技術(shù)實(shí)現(xiàn)要素:
后文呈現(xiàn)了簡(jiǎn)化的發(fā)明內(nèi)容,以便提供對(duì)本文描述的一些新穎實(shí)施例的基本理解。該發(fā)明內(nèi)容不是廣泛的概述,并且其不意圖識(shí)別關(guān)鍵/必要元件或描繪其范圍。其唯一的目的是以簡(jiǎn)化形式呈現(xiàn)一些概念作為后文呈現(xiàn)的更詳細(xì)描述的前序。
各種實(shí)施例一般專用于為各種目的隔離一部分在線計(jì)算服務(wù)的技術(shù)。一些實(shí)施例特別地用于為驗(yàn)證在線計(jì)算服務(wù)的新的/升級(jí)的構(gòu)建(build)和/或?yàn)榉珠_生產(chǎn)業(yè)務(wù)量與特定子集的用戶而隔離一部分在線計(jì)算服務(wù)的技術(shù)。可以經(jīng)由測(cè)試與新的/升級(jí)的構(gòu)建相關(guān)聯(lián)的服務(wù)實(shí)例,實(shí)現(xiàn)對(duì)新的/升級(jí)的構(gòu)建的驗(yàn)證。在一個(gè)實(shí)施例中,例如,裝置可以包括存儲(chǔ)于一組存儲(chǔ)器單元上并在處理器上操作的管理應(yīng)用。管理應(yīng)用可以包括部署組件,其布置為將資源容量劃分到部署單元中,每個(gè)部署單元包括對(duì)應(yīng)于運(yùn)行在線計(jì)算服務(wù)的一組計(jì)算角色,以處理由多個(gè)用戶提供的生產(chǎn)業(yè)務(wù)量。部署單元還可以布置為將部署單元從生產(chǎn)端點(diǎn)遷移到另一端點(diǎn)中,修改與所述部署單元相關(guān)聯(lián)的一個(gè)或多個(gè)計(jì)算角色以在另一端點(diǎn)上生成修改后的部署單元,以及針對(duì)至少一部分生產(chǎn)業(yè)務(wù)量使用修改后的部署單元。描述并要求保護(hù)其它實(shí)施例。
為了完成前述和相關(guān)終端,在本文結(jié)合后續(xù)描述和附圖描述了特定說明方面。這些方面表示可以實(shí)踐本文公開的原理的各種方式,并且所有的方面及其等價(jià)都意圖在要求保護(hù)主題的范圍內(nèi)。當(dāng)結(jié)合附圖考慮時(shí),根據(jù)后續(xù)詳細(xì)描述,其它優(yōu)點(diǎn)和新穎特征將變得清晰。
附圖說明
圖1示出了驗(yàn)證在線服務(wù)的系統(tǒng)的實(shí)施例。
圖2示出了在線計(jì)算服務(wù)的一組組件的實(shí)施例。
圖3示出了在線計(jì)算服務(wù)的驗(yàn)證過程的實(shí)施例。
圖4示出了在線計(jì)算服務(wù)的替代驗(yàn)證過程的實(shí)施例。
圖5示出了在線計(jì)算服務(wù)的隔離生產(chǎn)業(yè)務(wù)量的實(shí)施例。
圖6示出了用于運(yùn)行在線計(jì)算服務(wù)的部署單元的實(shí)施例。
圖7示出了以隔離端點(diǎn)為特征的在線計(jì)算服務(wù)的實(shí)施例。
圖8示出了以隔離端點(diǎn)為特征的在線計(jì)算服務(wù)的另一實(shí)施例。
圖9示出了用于圖1的系統(tǒng)的分布式系統(tǒng)的實(shí)施例。
圖10示出了用于圖1的系統(tǒng)的邏輯流的實(shí)施例。
圖11示出了計(jì)算架構(gòu)的實(shí)施例。
圖12示出了通信架構(gòu)的實(shí)施例。
具體實(shí)施方式
各個(gè)實(shí)施例指向驗(yàn)證新的在線計(jì)算服務(wù)實(shí)例,用于通過創(chuàng)建不要求顯著部分的資源容量進(jìn)行測(cè)試/驗(yàn)證的端點(diǎn)來執(zhí)行生產(chǎn)數(shù)據(jù)中心中的升級(jí)構(gòu)建,并因此不影響當(dāng)前生產(chǎn)業(yè)務(wù)量。在一個(gè)實(shí)施例中,該端點(diǎn)可以被認(rèn)為是臨時(shí)的或短暫的。在另一實(shí)施例中,該端點(diǎn)最終成為新的或下一生產(chǎn)端點(diǎn),并因此要求資源容量的永久部分。如下所述,升級(jí)構(gòu)建可以起因于應(yīng)用于先前構(gòu)建的一個(gè)或多個(gè)變更,包括熱補(bǔ)丁、定制或新特征和/或類似物。
在生產(chǎn)數(shù)據(jù)中心內(nèi)利用生產(chǎn)服務(wù)器和網(wǎng)絡(luò)基礎(chǔ)設(shè)施執(zhí)行測(cè)試升級(jí)構(gòu)建。這種測(cè)試是端對(duì)端的,涉及計(jì)算角色的全集以確保不僅角色/服務(wù)器工作正常并且整個(gè)系統(tǒng)工作正常。這種測(cè)試可以模仿與在線計(jì)算服務(wù)相關(guān)的真實(shí)世界場(chǎng)景。在一個(gè)示例性實(shí)施例中,如果在部署了升級(jí)后的構(gòu)建之后出現(xiàn)問題,則可以鋪開主要或次要的變更。作為例子,生產(chǎn)業(yè)務(wù)量可以重新路由到與在線計(jì)算服務(wù)的較老構(gòu)建相關(guān)聯(lián)的端點(diǎn)。
本文描述的各個(gè)實(shí)施例允許部署新的/替代的軟件和/或其它變更到在線計(jì)算服務(wù),所述在線計(jì)算服務(wù)將通過單個(gè)部署跨所有服務(wù)實(shí)例傳播,或集中到隔離的服務(wù)實(shí)例以便支持具體的租戶。在線計(jì)算服務(wù)包括計(jì)算角色,其具有持久性數(shù)據(jù)存儲(chǔ);以及無狀態(tài)計(jì)算機(jī)角色,其不具有持久性數(shù)據(jù)存儲(chǔ)。一些持久性數(shù)據(jù)存儲(chǔ)可以跨隔離的服務(wù)實(shí)例共享,例如包含不敏感數(shù)據(jù)(例如,垃圾郵件簽名)的實(shí)例。
代替使用專用云服務(wù)組件和獨(dú)立管理的端點(diǎn),本文描述的各個(gè)實(shí)施例允許共享在線計(jì)算服務(wù)架構(gòu)的各方面。在一個(gè)實(shí)施例中,通過將在線計(jì)算服務(wù)的資源容量劃分為部署單元,每個(gè)表示在線計(jì)算服務(wù)的完整構(gòu)建,如本文所描述的,完整構(gòu)建可以通過一個(gè)部署單元被升級(jí)和測(cè)試。當(dāng)驗(yàn)證升級(jí)后的完整構(gòu)建時(shí),部署單元可以用于來自租戶的實(shí)際生產(chǎn)業(yè)務(wù)量。在另一實(shí)施例中,部署單元可以支持請(qǐng)求與其他租戶完全隔離的租戶。
結(jié)果,實(shí)施例可以為操作員、設(shè)備或網(wǎng)絡(luò)改善負(fù)擔(dān)能力、伸縮性、模塊性、擴(kuò)展性或互操作性。
一般地關(guān)于本文使用的符號(hào)和術(shù)語,可以依據(jù)在計(jì)算機(jī)或計(jì)算機(jī)網(wǎng)絡(luò)上執(zhí)行的程序過程呈現(xiàn)后續(xù)詳細(xì)描述。這些過程描述和表示由本領(lǐng)域技術(shù)人員使用以最有效地將其工作的實(shí)質(zhì)傳達(dá)給本領(lǐng)域其他技術(shù)人員。
這里程序一般被設(shè)想為是導(dǎo)致期望結(jié)果的操作的自相一致的序列。這些操作是需要對(duì)物理量的物理操縱的操作。通常,但是不是必須的,這些量采取電、磁或光信號(hào)的形式,其能夠被存儲(chǔ)、轉(zhuǎn)移、組合、比較和以其它方式操縱。主要由于共同使用,有時(shí)證明將這些信號(hào)稱作位、值、元素、符號(hào)、字符、術(shù)語、數(shù)字等是方便的。然而,應(yīng)該注意,所有這些和類似的術(shù)語都與適當(dāng)?shù)奈锢砹肯嚓P(guān)聯(lián),并僅是應(yīng)用于這些量的方便標(biāo)簽。
此外,通常以術(shù)語指代所執(zhí)行的操縱,例如一般與人類操作員執(zhí)行的心理操作相關(guān)聯(lián)的增加或比較。在本文描述的形成一個(gè)或多個(gè)實(shí)施例的一部分的任意操作中,人類操作員的這種能力不是必須的,且在大部分情況下不是期望的。而是,操作是機(jī)器操作。用于執(zhí)行各個(gè)實(shí)施例的操作的有用機(jī)器包括通用數(shù)字計(jì)算機(jī)或類似設(shè)備。
各種實(shí)施例還涉及用于執(zhí)行這些操作的裝置或系統(tǒng)。如由存儲(chǔ)于計(jì)算機(jī)中的計(jì)算機(jī)程序選擇性激活或配置的,該裝置可以專門構(gòu)造用于所要求的目的,或者其可以包括通用計(jì)算機(jī)。本文呈現(xiàn)的過程并不內(nèi)在地與特定計(jì)算機(jī)或其它裝置相關(guān)。各種通用機(jī)器可以與根據(jù)本文的教導(dǎo)編寫的程序一起使用,或者可以證明構(gòu)造更專門的裝置來執(zhí)行所要求的方法步驟的方便的。根據(jù)給出的描述,將想到對(duì)于各種這些機(jī)器的所需結(jié)構(gòu)。
現(xiàn)在參考附圖,其中自始至終類似的參考標(biāo)記用于表示類似的元件。在后續(xù)描述中,出于解釋的目的,闡述多個(gè)具體細(xì)節(jié)以便提供對(duì)所述描述的徹底理解。然而,顯然的是可以在沒有這些具體細(xì)節(jié)的情況下實(shí)踐新穎實(shí)施例。在其它實(shí)例中,以框圖形式示出已知的結(jié)構(gòu)和設(shè)備,以便便于對(duì)其的描述。意圖是覆蓋與所要求保護(hù)的主題一致的所有修改、等價(jià)物和替代。
圖1示出了系統(tǒng)100的框圖。在一個(gè)實(shí)施例中,系統(tǒng)100可以包括計(jì)算機(jī)實(shí)現(xiàn)的方法100,其具有包括一個(gè)或多個(gè)組件122-a的管理應(yīng)用120。雖然在圖1中示出的系統(tǒng)100在特定拓?fù)渲芯哂杏邢迶?shù)量的元件,但可以理解的是系統(tǒng)100可以在替代拓?fù)渲懈鶕?jù)需要針對(duì)給定的實(shí)現(xiàn)方式包括更多或更少的元件。輸入110和輸出130一般表示與系統(tǒng)100相關(guān)聯(lián)的輸入/輸出活動(dòng)。
值得注意的是,本文使用的“a”和“b”和“c”以及類似指定符意圖是表示任意正整數(shù)的變量。因此,例如,如果實(shí)現(xiàn)方式設(shè)置值a=5,則組件122-a的全集可以包括組件122-1、122-2和122-3。實(shí)施例不局限于該上下文。
系統(tǒng)100可以包括管理應(yīng)用120,其一般被布置為針對(duì)在線計(jì)算服務(wù)生成新的服務(wù)實(shí)例,建立新的端點(diǎn)用于為用戶服務(wù)新的服務(wù)實(shí)例,以及為新的端點(diǎn)分配一組服務(wù)器。這些服務(wù)器可以包括專用于為新的服務(wù)實(shí)例操作各個(gè)計(jì)算角色的資源。管理應(yīng)用120可以配置為將一個(gè)或多個(gè)變更應(yīng)用到計(jì)算角色,例如,以便將計(jì)算角色升級(jí)為在線計(jì)算服務(wù)的新的構(gòu)建/版本。如下所述,可以在為在線計(jì)算服務(wù)部署到其它生產(chǎn)端點(diǎn)上之前,在驗(yàn)證處理中嚴(yán)格地測(cè)試這些變更。替代地,管理應(yīng)用將計(jì)算角色與和服務(wù)相同域的用戶的其它服務(wù)實(shí)例相關(guān)聯(lián)的其它服務(wù)器分開,由此創(chuàng)建虛擬端點(diǎn)。
管理應(yīng)用120可以包括部署組件122-1,其一般布置為以不顯著影響任意用戶的體驗(yàn)或生產(chǎn)量的方式借助新的/替代軟件代碼修改在線計(jì)算服務(wù)的計(jì)算角色。一旦被修改,新的計(jì)算角色就被測(cè)試,并且在驗(yàn)證過程期間分析那些測(cè)試結(jié)果。如果有效,則將修改后的計(jì)算角色遷移到它們變得可用于處理生產(chǎn)業(yè)務(wù)量(例如,顧客或租戶數(shù)據(jù))的生產(chǎn)端點(diǎn)。
在一個(gè)實(shí)施例中,部署組件122-1可以將一組計(jì)算角色遷移到包括在線計(jì)算服務(wù)的完整構(gòu)建的端點(diǎn)。通過遷移該組計(jì)算角色,可以在端點(diǎn)處僅借助該組計(jì)算角色來調(diào)用端對(duì)端事務(wù)。因此,該組計(jì)算角色可以被稱作部署單元??梢岳斫獾氖?,在一些實(shí)施例中,該組計(jì)算角色可以包括無狀態(tài)角色和零、一、或更多有狀態(tài)角色。
管理應(yīng)用120可以包括發(fā)現(xiàn)組件122-2。在在線計(jì)算服務(wù)架構(gòu)中,發(fā)現(xiàn)組件122-2控制生產(chǎn)業(yè)務(wù)量的路由。發(fā)現(xiàn)組件122-2可以一般布置為針對(duì)在線計(jì)算服務(wù)管理路由數(shù)據(jù)。在一個(gè)實(shí)施例中,部署組件122-1引導(dǎo)發(fā)現(xiàn)組件122-2以處理路由數(shù)據(jù),并將所有生產(chǎn)業(yè)務(wù)量路由遠(yuǎn)離包括上述一組計(jì)算角色的部署單元。
管理應(yīng)用120可以包括驗(yàn)證組件122-3。驗(yàn)證組件122-3一般可以布置為在包括多種測(cè)試以測(cè)量性能、成本和/或其它量的修改后的部署單元上執(zhí)行驗(yàn)證過程。驗(yàn)證組件122-3使用生產(chǎn)服務(wù)器和聯(lián)網(wǎng)基礎(chǔ)設(shè)施在生產(chǎn)數(shù)據(jù)中心執(zhí)行所有的測(cè)試。測(cè)試是端對(duì)端的,涉及所有計(jì)算角色,以確保不僅角色/服務(wù)器工作正常而且整個(gè)系統(tǒng)工作正常。這種測(cè)試可以模仿與在線計(jì)算服務(wù)相關(guān)的真實(shí)世界場(chǎng)景。如果在部署了在線計(jì)算服務(wù)的升級(jí)后的構(gòu)建之后出現(xiàn)問題,則驗(yàn)證組件122-3可以鋪開主要或次要變更。作為例子,發(fā)現(xiàn)組件122-2可以將生產(chǎn)業(yè)務(wù)量重新路由到與在線計(jì)算機(jī)服務(wù)的較老的構(gòu)建相關(guān)聯(lián)的端點(diǎn)。
圖2示出了系統(tǒng)100的操作環(huán)境200的實(shí)施例。如圖2所示,操作環(huán)境200包括多個(gè)端點(diǎn),在其上配置用于系統(tǒng)100的各種計(jì)算資源。每個(gè)端點(diǎn)可以包括一個(gè)或多個(gè)計(jì)算設(shè)備(例如,服務(wù)器),其配置為以支持在線計(jì)算服務(wù)(例如,云計(jì)算服務(wù))的某種方式執(zhí)行一個(gè)或多個(gè)任務(wù)。如上所述,本文所描述的在線計(jì)算服務(wù)可以在一個(gè)或多個(gè)數(shù)據(jù)網(wǎng)絡(luò)上操作,以便向多個(gè)計(jì)算機(jī)用戶(例如,端點(diǎn)用戶)提供數(shù)據(jù)和/或應(yīng)用。圖2示出了一些示例性端點(diǎn),包括發(fā)現(xiàn)端點(diǎn)210、部署端點(diǎn)220、驗(yàn)證端點(diǎn)230和端點(diǎn)240,但是可以理解的是,本公開還可以想到其它端點(diǎn)。端點(diǎn)240可以對(duì)應(yīng)于在線計(jì)算服務(wù)的實(shí)例。這些端點(diǎn)包括各種計(jì)算角色,計(jì)算角色的特定組或計(jì)算角色的配置可以表示以上圖1所示的在線計(jì)算服務(wù)的完整構(gòu)建,通過該構(gòu)建可以執(zhí)行端對(duì)端事務(wù)。
一個(gè)示例性端點(diǎn)(發(fā)現(xiàn)端點(diǎn)210)包括發(fā)現(xiàn)組件122-2,其配置為運(yùn)行在線計(jì)算服務(wù)的發(fā)現(xiàn)服務(wù)用于路由生產(chǎn)業(yè)務(wù)量。發(fā)現(xiàn)組件122-2在發(fā)現(xiàn)端點(diǎn)210上操作,并配置為處理路由數(shù)據(jù)212。在一個(gè)實(shí)施例中,當(dāng)將生產(chǎn)業(yè)務(wù)量引導(dǎo)到端點(diǎn)240中的具體端點(diǎn)時(shí),發(fā)現(xiàn)組件122-2處理路由數(shù)據(jù)212;因此,端點(diǎn)240的這些具體端點(diǎn)可以稱作生產(chǎn)端點(diǎn)。
另一示例性端點(diǎn)是部署端點(diǎn)220,其可以指代一個(gè)或多個(gè)服務(wù)器,其執(zhí)行部署組件122-1,并在適當(dāng)時(shí)使用運(yùn)行在發(fā)現(xiàn)端點(diǎn)210上的發(fā)現(xiàn)組件122-2和/或運(yùn)行在驗(yàn)證端點(diǎn)230上的驗(yàn)證組件122-3,以執(zhí)行驗(yàn)證過程。
在一個(gè)實(shí)施例中,部署組件122-1利用資源容量數(shù)據(jù)222,以便檢查用于多個(gè)端點(diǎn)的網(wǎng)絡(luò)拓?fù)?,例如,用于包括運(yùn)行一個(gè)或多個(gè)在線計(jì)算服務(wù)的若干服務(wù)器計(jì)算設(shè)備的數(shù)據(jù)中心的網(wǎng)絡(luò)拓?fù)?。網(wǎng)絡(luò)拓?fù)淇梢园ㄗR(shí)別哪個(gè)服務(wù)器計(jì)算設(shè)備提供數(shù)據(jù)存儲(chǔ)設(shè)備和/或處理已知為計(jì)算角色的任務(wù)以及哪個(gè)計(jì)算角色在特定服務(wù)器設(shè)備上操作的信息。部署組件122-1可以使用網(wǎng)絡(luò)拓?fù)鋪碜R(shí)別一組計(jì)算角色,所述計(jì)算角色表示在線計(jì)算服務(wù)的實(shí)例的完整實(shí)現(xiàn)。完整實(shí)現(xiàn)可以配置為代表端點(diǎn)用戶以端對(duì)端的方式處理輸入/輸出業(yè)務(wù)量。在這里一組計(jì)算角色可以稱作部署單元。一個(gè)示例性計(jì)算角色(中心角色)可以一般地指代一個(gè)或多個(gè)服務(wù)器,其處理指向部署單元(例如,部署單元的網(wǎng)絡(luò)地址)的輸入/輸出業(yè)務(wù)量。例如,中心角色可以處理所有的輸入/輸出電子郵件流,應(yīng)用傳輸規(guī)則,應(yīng)用日志策略,以及將消息輸送到接收方的郵箱中。另一示例性計(jì)算角色可以篩選輸入/輸出電子郵件業(yè)務(wù)量并過濾出具有SPAM、病毒和其它惡意軟件的電子郵件。
在將變更應(yīng)用于一組計(jì)算角色的一個(gè)示例性實(shí)施例中,部署組件122-1可以處理路由數(shù)據(jù)212以將輸入業(yè)務(wù)量引導(dǎo)遠(yuǎn)離包括所述一組角色的部署單元。這可以通過修改路由數(shù)據(jù)212以移除在一組計(jì)算角色和端點(diǎn)240之間的任意映射來實(shí)現(xiàn),由此終止與先前在線計(jì)算服務(wù)實(shí)例的任意關(guān)聯(lián)。部署單元可識(shí)別為可用資源。在生成另一(例如,新的)在線計(jì)算服務(wù)實(shí)例并在所述服務(wù)實(shí)例上建立另一端點(diǎn)之后,部署組件122-1將一組計(jì)算角色與其它端點(diǎn)相關(guān)聯(lián),這將計(jì)算機(jī)角色放置在其它服務(wù)實(shí)例的方向之下,完成將部署單元遷移到其它服務(wù)實(shí)例。注意,通過先前服務(wù)實(shí)例的其它生產(chǎn)端點(diǎn)重新路由生產(chǎn)業(yè)務(wù)量,并且與重新路由的生產(chǎn)業(yè)務(wù)量相關(guān)聯(lián)的任何用戶大部分不受遷移的影響。
根據(jù)一個(gè)示例性實(shí)施例,部署組件122-1通過將一個(gè)或多個(gè)變更應(yīng)用到計(jì)算機(jī)程序代碼(例如,指令)和/或存儲(chǔ)于包括部署單元的服務(wù)器計(jì)算設(shè)備上的數(shù)據(jù)而修改一組計(jì)算角色。在實(shí)現(xiàn)一個(gè)或多個(gè)變更之后,所述一組計(jì)算角色變換為一組變更的計(jì)算角色。
另一示例性端點(diǎn)(驗(yàn)證端點(diǎn)230)包括用于在一些服務(wù)器實(shí)例242上運(yùn)行端對(duì)端測(cè)試的驗(yàn)證組件122-3。在一個(gè)示例性實(shí)施例中,部署組件122-1開始測(cè)試一組變更的計(jì)算角色。驗(yàn)證組件122-3的一個(gè)示例性實(shí)現(xiàn)方式通過通信模擬真實(shí)世界生產(chǎn)業(yè)務(wù)量的事務(wù)數(shù)據(jù)而參與端對(duì)端測(cè)試。事務(wù)數(shù)據(jù)允許在真實(shí)世界條件下評(píng)估一組變更的計(jì)算角色。在在線郵箱保護(hù)的上下文中,通信事務(wù)數(shù)據(jù)使得計(jì)算角色244執(zhí)行各種電子郵件過濾任務(wù),例如SPAM過濾、惡意軟件檢測(cè)和/或類似物。
圖3示出了系統(tǒng)100的操作環(huán)境300的實(shí)施例。如圖3所示,操作環(huán)境300包括與服務(wù)實(shí)例304相關(guān)聯(lián)的(當(dāng)前)生產(chǎn)端點(diǎn)302和與另一服務(wù)實(shí)例308相關(guān)聯(lián)的下一生產(chǎn)端點(diǎn)306。
生產(chǎn)端點(diǎn)302例如可以配置有已知為服務(wù)器的多個(gè)計(jì)算設(shè)備,其協(xié)調(diào)而向多個(gè)租戶提供在線計(jì)算服務(wù),例如服務(wù)實(shí)例304。與這些租戶相關(guān)聯(lián)的各種參數(shù)數(shù)據(jù)可以確定哪個(gè)生產(chǎn)端點(diǎn)如本文所述被路由。管理應(yīng)用(例如,圖1的管理應(yīng)用120)可以向生產(chǎn)端點(diǎn)302分配可量化的資源容量,例如依據(jù)處理能力、存儲(chǔ)空間、計(jì)算能力(例如,平臺(tái)能力)和/或類似物。根據(jù)一個(gè)實(shí)施例,資源容量可以定義一組部署單元,其專用于向生產(chǎn)端點(diǎn)302的多個(gè)租戶服務(wù)服務(wù)實(shí)例304。一組部署單元可以如圖3所示為“單元1”、“單元2”、“單元3”和“單元4”,其每個(gè)部署單元表示操作服務(wù)實(shí)例304的一個(gè)或多個(gè)服務(wù)器。在任意給定部署單元中的每個(gè)服務(wù)器可以配置為:為服務(wù)實(shí)例304操作具體的計(jì)算角色,例如,網(wǎng)絡(luò)服務(wù)角色、中心角色、邊緣角色、過濾角色等。每個(gè)部署單元包括一組計(jì)算角色,所述計(jì)算角色基本上或完全與在線計(jì)算服務(wù)的網(wǎng)絡(luò)拓?fù)渲械钠渌?jì)算角色隔離。在一些實(shí)施例中,部署單元自身還與在同一網(wǎng)絡(luò)拓?fù)渲械钠渌渴饐卧綦x。
如圖3所示,部署單元“單元1”從生產(chǎn)端點(diǎn)遷移到下一生產(chǎn)端點(diǎn)306。根據(jù)一個(gè)示例性實(shí)施例,分配給生產(chǎn)端點(diǎn)302的資源容量被劃分,并且所述容量的一部分被分配給下一生產(chǎn)端點(diǎn)306。為服務(wù)實(shí)例304運(yùn)行一組計(jì)算角色的一組服務(wù)器可以從所述實(shí)例的資源池中移除,并與另一資源池(例如,用于服務(wù)實(shí)例308的預(yù)期的資源池)相關(guān)聯(lián)。在將變更應(yīng)用到部署單元“單元1”(包括先前變更的任意回滾操作或?qū)σ唤M計(jì)算角色的更新)之后以及在生產(chǎn)業(yè)務(wù)量上進(jìn)行部署之前,通過測(cè)試,例如經(jīng)由本文描述的管理應(yīng)用120的驗(yàn)證組件122-3,驗(yàn)證變更的部署單元“單元1”.
一旦被驗(yàn)證,變更的部署單元“單元1”被視為準(zhǔn)備好處理實(shí)際的生產(chǎn)業(yè)務(wù)量,并因此部署為現(xiàn)場(chǎng)生產(chǎn)環(huán)境的一部分。修改具體一組租戶的路由數(shù)據(jù),從而從這些租戶處生成的業(yè)務(wù)量指向下一生產(chǎn)端點(diǎn)的地址。根據(jù)一個(gè)示例性實(shí)現(xiàn)方式,這些租戶的生產(chǎn)業(yè)務(wù)量被重定向遠(yuǎn)離生產(chǎn)端點(diǎn)302并朝向下一生產(chǎn)端點(diǎn)306,尤其朝向在變更的部署單元“單元1”中的一組服務(wù)器??梢岳斫猓鈶舻纳a(chǎn)業(yè)務(wù)量可以通信到操作針對(duì)服務(wù)實(shí)例308的具體計(jì)算角色的服務(wù)器,并且所述服務(wù)器安排對(duì)應(yīng)于在線計(jì)算服務(wù)的其它計(jì)算角色。因此,所述服務(wù)器的計(jì)算角色可以包括起接口的作用(例如,網(wǎng)絡(luò)接口)。
通過重復(fù)至少一部分上述過程,在生產(chǎn)端點(diǎn)302中的一個(gè)或多個(gè)剩余部署單元可以遷移到下一生產(chǎn)端點(diǎn)306,并在驗(yàn)證之后可以開始在服務(wù)實(shí)例308下服務(wù)租戶??梢岳斫獾氖牵谄渌鼘?shí)施例中,在生產(chǎn)端口302中沒有剩余部署單元遷移。在這些實(shí)施例中,操作環(huán)境300為租戶的生產(chǎn)業(yè)務(wù)量維護(hù)向后兼容性。一些租戶使用未變更的服務(wù)實(shí)例304(其可以運(yùn)行過時(shí)的/先前的版本的在線計(jì)算服務(wù)),而其它租戶由更新后的服務(wù)實(shí)例308服務(wù)。如果任何租戶想要切換到更新后的范圍實(shí)例308,則管理應(yīng)用120的部署組件122-1將所述租戶的生產(chǎn)業(yè)務(wù)量重定向到變更的部署“單元1”;類似地,如果任何租戶想要切換回未變更的服務(wù)實(shí)例304,則所述租戶的生產(chǎn)數(shù)據(jù)被重定向到在生產(chǎn)端點(diǎn)302中剩余的部署單元之一。在執(zhí)行回滾并且變更的部署單元“單元1”恢復(fù)到先前版本之后,恢復(fù)的部署單元“單元1”可以遷移回生產(chǎn)端點(diǎn)302。
圖4示出了系統(tǒng)100的操作環(huán)境400的實(shí)施例。如圖4所示,操作環(huán)境400包括多個(gè)服務(wù)實(shí)例,每個(gè)還包括一個(gè)或多個(gè)端點(diǎn),包括在服務(wù)實(shí)例404上配置的生產(chǎn)端點(diǎn)402和與另一服務(wù)實(shí)例(服務(wù)實(shí)例408)相關(guān)聯(lián)的臨時(shí)測(cè)試端點(diǎn)406。通常如本文中結(jié)合生產(chǎn)端點(diǎn)所述,生產(chǎn)端點(diǎn)402分配了資源容量,用于以數(shù)據(jù)處理和/或存儲(chǔ)相關(guān)任務(wù)(例如,與在線計(jì)算服務(wù)相關(guān)的那些)服務(wù)多個(gè)用戶。
圖4的后續(xù)描述描述了與當(dāng)操作環(huán)境400在網(wǎng)絡(luò)上向多個(gè)(郵箱)租戶提供在線郵箱保護(hù)服務(wù)時(shí),相關(guān)的示例性實(shí)施例。生產(chǎn)端點(diǎn)402可以與接收和組織(例如,企業(yè)的內(nèi)部電子郵件系統(tǒng))相關(guān)的所有輸入和輸出消息數(shù)據(jù)的網(wǎng)絡(luò)地址(例如,URL)相關(guān)聯(lián)。上述資源容量可以在生產(chǎn)端點(diǎn)402和測(cè)試端點(diǎn)406中劃分。因?yàn)闇y(cè)試端點(diǎn)406是臨時(shí)的,所以分配給測(cè)試端點(diǎn)406的任何資源容量都是短暫的且對(duì)租戶體驗(yàn)具有可忽略的影響。在操作環(huán)境的網(wǎng)絡(luò)拓?fù)渲兴械挠?jì)算設(shè)備中,管理應(yīng)用120的部署組件122-1識(shí)別一組計(jì)算角色(例如,服務(wù)器),當(dāng)被組合時(shí)所述一組計(jì)算角色形成在線郵箱保護(hù)服務(wù)的完整構(gòu)建(例如,完整安裝)。在一個(gè)示例性實(shí)施例中,識(shí)別出的一組計(jì)算角色與在操作環(huán)境400中的其它計(jì)算角色隔離,并因此不與這些角色通信。如本文所描述的,當(dāng)識(shí)別出的一組計(jì)算角色如完整構(gòu)建操作時(shí),可以執(zhí)行完整的端對(duì)端測(cè)試。此外,可以實(shí)現(xiàn)、測(cè)試和部署對(duì)完整構(gòu)建的變更,而不影響多個(gè)租戶的消息傳送活動(dòng)。
管理應(yīng)用120的部署組件122-1可以將識(shí)別出的一組計(jì)算角色配置到部署單元中,例如圖4中描繪的部署單元“單元4”,并將所述部署單元遷移到服務(wù)實(shí)例408。可以變更、更新和/或替換一組計(jì)算角色中的一個(gè)或多個(gè),引起在一組計(jì)算角色之間的角色間配置更新,從而角色間通信指向變更的計(jì)算角色。例如,如果企業(yè)的網(wǎng)絡(luò)電子郵件客戶端接口更新,則可以利用不同的代碼修改網(wǎng)絡(luò)服務(wù)計(jì)算角色。在測(cè)試端點(diǎn)406中的其它計(jì)算角色指向變更的網(wǎng)絡(luò)服務(wù)計(jì)算角色。還可以執(zhí)行其它變更,例如更新/變更其它計(jì)算角色,更新/變更其它軟件程序,添加定制郵箱保護(hù)特征,更新操作系統(tǒng)設(shè)置和/或類似。一旦完全配置為具有變更的完整構(gòu)建,就可以由管理應(yīng)用120的驗(yàn)證組件122-3開始對(duì)一組變更的計(jì)算角色的測(cè)試。所述組件可以駐留在與測(cè)試端點(diǎn)406通信耦合的另一端點(diǎn)中,其可以稱作驗(yàn)證端點(diǎn)。例如,驗(yàn)證組件122-3可以運(yùn)行包括在部署單元“單元4”上模擬的郵箱相關(guān)事務(wù)(例如,輸入/輸出電子郵件)的測(cè)試,并根據(jù)各種基于性能的度量來分析任意測(cè)試結(jié)果。例如,所述測(cè)試結(jié)果可以記錄電子郵件過濾操作(例如,SPAM和惡意軟件掃描)的成功/失敗。如果測(cè)試結(jié)果表示成功過渡到變更的計(jì)算角色,則部署單元“單元4”遷移回到服務(wù)實(shí)例404并且處在生產(chǎn)端點(diǎn)406的控制下。在生產(chǎn)端點(diǎn)406上的每個(gè)剩余的部署單元可以遷移到測(cè)試端點(diǎn)以用于升級(jí)以及可能的用于測(cè)試;并且如果修改的部署單元成功地完成驗(yàn)證過程,則修改后的部署單元遷移回到生產(chǎn)端點(diǎn)402并且被部署用于生產(chǎn)業(yè)務(wù)量。
在一些示例性實(shí)施例中,當(dāng)這些變更/更新的計(jì)算角色中的一個(gè)或多個(gè)被測(cè)試并且變更引起處理用戶消息數(shù)據(jù)的問題時(shí),變更可以回滾。根據(jù)一個(gè)示例性回滾操作,用先前版本的該計(jì)算角色替換變更的計(jì)算角色的軟件代碼。根據(jù)另一例子,管理應(yīng)用可以指示操作為變更的角色的服務(wù)器使用變更的計(jì)算角色的先前版本而不是變更的計(jì)算角色。在回滾之后,部署單元“單元4”可以遷移回服務(wù)實(shí)例404。
圖5示出了系統(tǒng)100的操作環(huán)境500的實(shí)施例。如圖5所示,操作環(huán)境500包括分別對(duì)應(yīng)于服務(wù)實(shí)例504和服務(wù)實(shí)例508的虛擬端點(diǎn)502和虛擬端點(diǎn)506。組合的虛擬端點(diǎn)502和虛擬端點(diǎn)506可以表示用于在線計(jì)算服務(wù)的至少一些資源容量。如這里描述的,資源容量指的是各種服務(wù)器或計(jì)算角色,其中一些可以是無狀態(tài)的而一些可以是有狀態(tài)的。每個(gè)虛擬端點(diǎn)分配有包括在線計(jì)算服務(wù)的多個(gè)完整構(gòu)建的多個(gè)計(jì)算角色。存在每個(gè)虛擬端點(diǎn)的資源容量與其它虛擬端點(diǎn)的資源容量的各種隔離程度。在一些實(shí)施例中,虛擬端點(diǎn)502可以通過不共享任意資源、持久性數(shù)據(jù)庫(kù)和/或計(jì)算角色,而與虛擬端點(diǎn)506完全隔離。在一些實(shí)施例中,將特定有狀態(tài)角色維持為共享資源,例如存儲(chǔ)SPAM或惡意軟件簽名數(shù)據(jù)的全局共享數(shù)據(jù)庫(kù)。
在多個(gè)計(jì)算角色中,部署單元可以定義一組計(jì)算角色,其獨(dú)立于任意其它計(jì)算角色表示一個(gè)完整構(gòu)建。因此,每個(gè)端點(diǎn)包括一組部署單元,其在在線計(jì)算服務(wù)的網(wǎng)絡(luò)拓?fù)渲信c其它部署單元隔離。資源容量被劃分到這些隔離的單元中。在一個(gè)實(shí)施例中,虛擬端點(diǎn)506包括隔離的構(gòu)建,其已經(jīng)變更以適應(yīng)所述虛擬端點(diǎn)的用戶。作為例子,可以通過將其它政府電子郵件業(yè)務(wù)量引導(dǎo)向虛擬端點(diǎn)502且將敏感電子郵件業(yè)務(wù)量引導(dǎo)向虛擬端點(diǎn)506,而將最高級(jí)政府官員的敏感電子郵件業(yè)務(wù)量與源自同一區(qū)域的其它政府電子郵件業(yè)務(wù)量分開。這種例子的示例性操作環(huán)境可以如圖8所描述。
圖6示出了系統(tǒng)100的操作環(huán)境600的實(shí)施例。如圖6所示,操作環(huán)境600包括計(jì)算設(shè)備(稱作服務(wù)器)的網(wǎng)絡(luò)拓?fù)洌硎痉峙浣o一個(gè)或多個(gè)在線計(jì)算服務(wù)實(shí)例的資源容量。在圖6中描繪的每個(gè)部署單元包括一組計(jì)算角色,其操作為可以執(zhí)行端對(duì)端事務(wù)(例如,輸入和輸出電子郵件過濾事務(wù))的在線計(jì)算服務(wù)實(shí)例的完整構(gòu)建。
在一個(gè)實(shí)施例中,部署組件122-1能夠?qū)⒉渴饐卧姆?wù)器或角色從一個(gè)端點(diǎn)移動(dòng)到另一端點(diǎn)。在一個(gè)實(shí)施例中,部署組件122-1配置為將在部署單元中的服務(wù)器添加到與其它端點(diǎn)相關(guān)聯(lián)的負(fù)載平衡器中的預(yù)期池中,并將其從任意的預(yù)期池中移除,將角色間通信限制到部署單元的內(nèi)部服務(wù)器,并使得部署單元與其它端點(diǎn)相關(guān)聯(lián)(例如,標(biāo)記)。
在圖6中描繪的部署單元可以專用于操作端點(diǎn)保護(hù)服務(wù),例如郵箱保護(hù)服務(wù)。如本文所描述的,發(fā)現(xiàn)組件122-2用作用于將給定租戶的電子郵件業(yè)務(wù)量路由到具體端點(diǎn)或端點(diǎn)內(nèi)的具體部署單元的端點(diǎn)發(fā)現(xiàn)服務(wù)。例如,大型商業(yè)企業(yè)可以分配有多個(gè)郵箱保護(hù)服務(wù)實(shí)例,其中每個(gè)實(shí)例包含服務(wù)在給定域中的租戶(例如,屬于同一地理區(qū)域的租戶)的子集的相關(guān)端點(diǎn)的集合。
郵箱保護(hù)服務(wù)支持用于通信生產(chǎn)業(yè)務(wù)量的各種協(xié)議,例如SMTP和HTTPS。對(duì)于SMTP輸入業(yè)務(wù)量,發(fā)現(xiàn)組件122-2通過實(shí)現(xiàn)DNS功能將租戶的電子郵件路由到一個(gè)或多個(gè)部署單元。對(duì)于輸入HTTPS業(yè)務(wù)量,發(fā)現(xiàn)組件122-2利用HTTP重定向來重新路由租戶的電子郵件,其中每個(gè)網(wǎng)絡(luò)服務(wù)器與發(fā)現(xiàn)組件122-2通信以識(shí)別正確的端點(diǎn)或部署以服務(wù)租戶。
當(dāng)部署變更(例如,主要變更或更新)時(shí),部署組件122-1指示發(fā)現(xiàn)端點(diǎn)122-2分開端點(diǎn)602引導(dǎo)的業(yè)務(wù)量和端點(diǎn)604引導(dǎo)的業(yè)務(wù)量,例如用于實(shí)驗(yàn)或隔離端點(diǎn)604到租戶的子集。因此,給定租戶,發(fā)現(xiàn)組件122-2可以將租戶的電子郵件業(yè)務(wù)量路由到端點(diǎn)602或端點(diǎn)604。在一個(gè)實(shí)施例中,部署組件122-1可以劃分資源容量,允許部署單元分配到端點(diǎn)602或端點(diǎn)604,并且在部署單元遷移到其各自的端點(diǎn)之后,部署組件122-1可以在端點(diǎn)602和端點(diǎn)604間共享對(duì)郵箱存儲(chǔ)設(shè)備606的訪問。郵箱存儲(chǔ)設(shè)備606一般存儲(chǔ)用于企業(yè)的電子郵箱用戶的租戶郵箱。作為選項(xiàng),可以在授權(quán)端點(diǎn)604訪問的隔離的郵箱存儲(chǔ)設(shè)備608中保存一些郵箱。
如本文所描述的,部署組件122-1可以將一個(gè)或多個(gè)變更應(yīng)用到部署單元,并更新所述單元的當(dāng)前構(gòu)建到新的構(gòu)建用于郵箱保護(hù)服務(wù)。每個(gè)部署單元包括所有計(jì)算角色的服務(wù)器,從而可以利用模擬的事務(wù)測(cè)試新的構(gòu)建的端對(duì)端功能,并且如果測(cè)試表示驗(yàn)證,則通過僅部署所述部署單元而暴露給租戶。驗(yàn)證組件122-3可以表示測(cè)試自動(dòng)化機(jī)器,其在與配置為在新的構(gòu)建的端對(duì)端功能上運(yùn)行測(cè)試的部署單元相同的數(shù)據(jù)中心內(nèi)。
圖7示出了系統(tǒng)100的操作環(huán)境700的實(shí)施例。在一個(gè)示例性實(shí)施例中,操作環(huán)境700指的是云或在線計(jì)算服務(wù)架構(gòu),在其中虛擬端點(diǎn)適于隔離特定的租戶生產(chǎn)業(yè)務(wù)量同時(shí)利用至少一些共享的基礎(chǔ)設(shè)施。如圖7所示,操作環(huán)境700包括多個(gè)虛擬端點(diǎn)7021…N,其給定的虛擬端點(diǎn)702配置在服務(wù)實(shí)例704上。每個(gè)虛擬端點(diǎn)702還包括一組計(jì)算角色706用于操作服務(wù)實(shí)例704。在一個(gè)實(shí)施例中,每組計(jì)算角色706具有無狀態(tài)的質(zhì)量(例如,非持久性的)并與其它虛擬端點(diǎn)隔離,同時(shí)跨多個(gè)虛擬端點(diǎn)7021…N共享有狀態(tài)的計(jì)算資源。圖7描繪了區(qū)域數(shù)據(jù)庫(kù)708和全局?jǐn)?shù)據(jù)庫(kù)710作為共享有狀態(tài)計(jì)算資源的例子。
一個(gè)示例性實(shí)現(xiàn)方式可以將示例性虛擬端點(diǎn)7021指定為特定租戶子集的專用端點(diǎn),同時(shí)隔離其它租戶生產(chǎn)業(yè)務(wù)到至少一個(gè)剩余的虛擬端點(diǎn)7022…N。這種隔離可以是永久性或臨時(shí)的。例如,可以隨機(jī)選擇租戶的子集以測(cè)試在線計(jì)算服務(wù)的更新構(gòu)建。
租戶的子集可以具有使隔離到專用端點(diǎn)成為必要的特定標(biāo)準(zhǔn)。在一個(gè)例子中,一組政府租戶的電子郵件業(yè)務(wù)量不與操作環(huán)境700中的商業(yè)或民用租戶混合。這允許政府租戶使其數(shù)據(jù)與其他非政府的租戶的數(shù)據(jù)隔離。在另一例子中,政府租戶對(duì)在線計(jì)算服務(wù)提供商提出要求:用于處理其電子郵件和數(shù)據(jù)的軟件和硬件僅可以由所述提供商的具有特定安全調(diào)查并滿足公民要求的雇員訪問。在在線計(jì)算服務(wù)中的硬件和軟件可以在架構(gòu)上和邏輯上隔離,以僅允許作為滿足政府租戶要求的管理員或工程師的雇員能夠訪問在線計(jì)算服務(wù)。同時(shí),在線計(jì)算服務(wù)的其它實(shí)例可用于管理員和工程師來訪問和維護(hù)服務(wù)。
圖8示出了系統(tǒng)100的操作環(huán)境800的實(shí)施例。如圖8所示,例如,當(dāng)服務(wù)實(shí)例814專用于服務(wù)特定組的租戶(例如執(zhí)行政府官員)時(shí),操作環(huán)境800幾乎完全隔離虛擬端點(diǎn)812與其它虛擬端點(diǎn)。除了無狀態(tài)角色816,虛擬端點(diǎn)812包括有狀態(tài)的角色818,其不在其它虛擬端點(diǎn)間共享。這些有狀態(tài)角色818可以包括存儲(chǔ)非敏感性數(shù)據(jù)(例如,SPAM或惡意軟件簽名)的持久性數(shù)據(jù)庫(kù)。
給定操作一組計(jì)算角色的固定組的服務(wù)器,這些服務(wù)器可以被分開,從而可以將軟件部署到這些服務(wù)器上,同時(shí)維護(hù)在在線計(jì)算服務(wù)中的虛擬域之間的虛擬隔離。每個(gè)服務(wù)實(shí)例可以配置有其自己的虛擬端點(diǎn)。如以上圖7所述,部署組件122-1的一些實(shí)施例可以僅隔離無狀態(tài)計(jì)算角色816。在圖8中,除了隔離所有的無狀態(tài)角色816外,一些有狀態(tài)角色818被隔離到虛擬域中,例如當(dāng)特定租戶數(shù)據(jù)將與其它租戶數(shù)據(jù)隔離時(shí)。在該情況下,在有狀態(tài)角色中的軟件將提供與其它服務(wù)實(shí)例的虛擬隔離??蛇x地,整組角色或服務(wù)器可以被隔離以支持單獨(dú)的專用服務(wù)實(shí)例。因此,部署單元可以動(dòng)態(tài)適應(yīng)于提供范圍從最大資源共享到最大隔離的服務(wù)實(shí)例。
圖9示出了分布式系統(tǒng)900的框圖。分布式系統(tǒng)900可以跨多個(gè)計(jì)算實(shí)體分布系統(tǒng)100的結(jié)構(gòu)和/或操作的部分。分布式系統(tǒng)900的例子可以包括但不限于客戶端-服務(wù)器架構(gòu)、3層架構(gòu)、N層架構(gòu)、緊密耦合或群集架構(gòu)、對(duì)等架構(gòu)、主從架構(gòu)、共享數(shù)據(jù)庫(kù)架構(gòu)以及其它類型的分布式系統(tǒng)。實(shí)施例不限于該上下文。
分布式系統(tǒng)900可以包括客戶端設(shè)備910和服務(wù)器設(shè)備950。在一個(gè)例子中,設(shè)備910、950可以在通信介質(zhì)912上利用通信信號(hào)914經(jīng)由通信組件940進(jìn)行通信。
一般而言,客戶端設(shè)備910和/或服務(wù)器設(shè)備950可以包括能夠接收、處理和發(fā)送系統(tǒng)100的信息的任意電子設(shè)備。電子設(shè)備的例子可以包括但不限于超移動(dòng)設(shè)備、移動(dòng)設(shè)備、個(gè)人數(shù)字助理(PDA)、移動(dòng)計(jì)算設(shè)備、智能電話、電話、數(shù)字電話、蜂窩電話、電子書閱讀器、手機(jī)、單向?qū)ず魴C(jī)、雙向?qū)ず魴C(jī)、消息傳送設(shè)備、計(jì)算機(jī)、個(gè)人計(jì)算機(jī)(PC)、臺(tái)式計(jì)算機(jī)、膝上型計(jì)算機(jī)、筆記本計(jì)算機(jī)、上網(wǎng)本計(jì)算機(jī)、手持計(jì)算機(jī)、平板計(jì)算機(jī)、服務(wù)器、服務(wù)器陣列或服務(wù)器場(chǎng)、web服務(wù)器、網(wǎng)絡(luò)服務(wù)器、互聯(lián)網(wǎng)服務(wù)器、工作站、迷你計(jì)算機(jī)、大型計(jì)算機(jī)、超級(jí)計(jì)算機(jī)、網(wǎng)絡(luò)設(shè)備、web設(shè)備、分布式計(jì)算系統(tǒng)、多處理器系統(tǒng)、基于處理器的系統(tǒng)、消費(fèi)者電子設(shè)備、可編程消費(fèi)者電子設(shè)備、游戲設(shè)備、電視、數(shù)字電視、機(jī)頂盒、無線接入點(diǎn)、基站、用戶站、移動(dòng)用戶中心、無線電網(wǎng)絡(luò)控制器、路由器、集線器、網(wǎng)關(guān)、橋、交換機(jī)、機(jī)器或其組合。實(shí)施例并不限于該上下文。
客戶端合并910和/或服務(wù)器設(shè)備950可以利用處理組件930執(zhí)行系統(tǒng)100的處理操作或邏輯。處理組件930可以包括各種硬件元件、軟件元件或兩者的組合。硬件元件的例子包括設(shè)備、邏輯設(shè)備、組件、處理器、微處理器、電路、處理器電路、電路元件(例如,晶體管、電阻器、電容器、電感器等)、集成電路、專用集成電路(ASIC)、可編程邏輯器件(PLD)、數(shù)字信號(hào)處理器(DSP)、現(xiàn)場(chǎng)可編程門陣列(FPGA)、存儲(chǔ)器單元、邏輯門、寄存器、半導(dǎo)體設(shè)備、芯片、微芯片、芯片組等。軟件元件的例子可以包括軟件組件、程序、應(yīng)用、計(jì)算機(jī)程序、應(yīng)用程序、系統(tǒng)程序、軟件開發(fā)程序、機(jī)器程序、操作系統(tǒng)軟件、中間件、固件、軟件模塊、例程、子例程、函數(shù)、方法、過程、軟件接口、應(yīng)用程序接口(API)、指令集、計(jì)算代碼、計(jì)算機(jī)代碼、代碼段、計(jì)算機(jī)代碼段、字、值、符號(hào)或其組合。確定是否使用硬件元件和/或軟件元件實(shí)現(xiàn)實(shí)施例可以根據(jù)任意數(shù)量的因素而不同,(根據(jù)給定的實(shí)現(xiàn)方式)例如期望的計(jì)算率、功率級(jí)、耐熱性、處理周期預(yù)算、輸入數(shù)據(jù)速率、輸出數(shù)據(jù)速率、存儲(chǔ)器資源、數(shù)據(jù)總線速度和其它設(shè)計(jì)或性能約束。
客戶端設(shè)備910和/或服務(wù)器設(shè)備950可以利用通信組件940執(zhí)行系統(tǒng)100的通信操作或邏輯。通信組件940可以實(shí)現(xiàn)任意已知的通信技術(shù)和協(xié)議,例如,適于與分組交換網(wǎng)絡(luò)(例如,諸如互聯(lián)網(wǎng)的公共網(wǎng)絡(luò)、諸如企業(yè)內(nèi)聯(lián)網(wǎng)的私有網(wǎng)絡(luò)等)、電路交換網(wǎng)絡(luò)(例如,公共交換電話網(wǎng)絡(luò))或(利用適當(dāng)?shù)木W(wǎng)關(guān)和翻譯器的)分組交換網(wǎng)絡(luò)和電路交換網(wǎng)絡(luò)的組合一起使用的技術(shù)。通信組件940可以包括各種類型的標(biāo)準(zhǔn)通信元件,例如一個(gè)或多個(gè)通信接口、網(wǎng)絡(luò)接口、網(wǎng)絡(luò)接口卡(NIC)、無線電設(shè)備、無線發(fā)送器/接收器(收發(fā)器)、有線和/或無線通信介質(zhì)、物理連接器等。通過例子而非限制,通信介質(zhì)912包括有線通信介質(zhì)和無線通信介質(zhì)。有線通信介質(zhì)的例子可以包括電線、電纜、金屬導(dǎo)線、印刷電路板(PCB)、背板、交換結(jié)構(gòu)、半導(dǎo)體材料、雙絞線、同軸電纜、光纖、傳播信號(hào)等。無線通信介質(zhì)的例子可以包括聲、射頻(RF)譜、紅外和其它無線介質(zhì)。
客戶端設(shè)備910可以包括或采用一個(gè)或多個(gè)客戶端程序,其操作以根據(jù)所描述的實(shí)施例執(zhí)行各種方法。在一個(gè)實(shí)施例中,例如,客戶端設(shè)備910可以實(shí)現(xiàn)郵箱保護(hù)客戶端920,其用作到被稱作郵箱保護(hù)服務(wù)的在線計(jì)算服務(wù)的接口。郵箱保護(hù)客戶端910可以是在客戶端設(shè)備910處使用的電子郵箱消息傳送應(yīng)用的組件(例如,插件),其配置為呈現(xiàn)郵箱信息,發(fā)送/接收電子郵件和其它電子郵件相關(guān)任務(wù)。
服務(wù)器設(shè)備950可以包括或采用一個(gè)或多個(gè)服務(wù)器程序,其操作以執(zhí)行根據(jù)所描述實(shí)施例的各種方法。在一個(gè)實(shí)施例中,服務(wù)器設(shè)備950可以實(shí)現(xiàn)郵箱保護(hù)服務(wù)960的至少一部分。為了通過例子進(jìn)行說明,服務(wù)器設(shè)備950可以操作處理來自客戶端設(shè)備910的輸入生產(chǎn)業(yè)務(wù)量的計(jì)算角色,或者服務(wù)器設(shè)備950可以操作整個(gè)郵箱保護(hù)服務(wù)。替代地,服務(wù)設(shè)備950可以表示協(xié)作以操作郵箱保護(hù)服務(wù)960的多個(gè)服務(wù)器設(shè)備。
在一個(gè)實(shí)施例中,郵箱保護(hù)服務(wù)960針對(duì)任意可能的威脅或問題處理到客戶端設(shè)備910的輸入電子郵件。輸入電子郵件可以被客戶端設(shè)備910本身或者處理客戶端設(shè)備910的所有輸入和輸出的網(wǎng)絡(luò)業(yè)務(wù)量的本地內(nèi)部部署企業(yè)服務(wù)器轉(zhuǎn)發(fā)到服務(wù)器設(shè)備950。可選地,輸入電子郵件可以直接路由到服務(wù)器設(shè)備950??赡艿耐{包括但不限于惡意軟件、SPAM、釣魚和/或任意其它軟件漏洞利用。
這里包括表示用于執(zhí)行公開架構(gòu)的新穎方面的示例性方法的一組流程圖。同時(shí),為了解釋的簡(jiǎn)單,在此示出的例如以流程圖表或流程圖形式的一個(gè)或多個(gè)方法被示出和描述為一系列動(dòng)作,可以理解和了解的是所述方法并不受限于動(dòng)作的順序,因?yàn)楦鶕?jù)其的一些動(dòng)作可以以不同順序和/或與本文所示和所描述的其它動(dòng)作并發(fā)地發(fā)生。例如,本領(lǐng)域技術(shù)人員將理解和了解的是,所述方法可以替代地例如以狀態(tài)圖表示為一系列相關(guān)狀態(tài)或事件。此外,不是在方法中示出的所有動(dòng)作都可能被需要用于新穎的實(shí)現(xiàn)方式。
圖10示出了邏輯流1000的一個(gè)實(shí)施例。邏輯流1000可以表示由本文描述的一個(gè)或多個(gè)實(shí)施例執(zhí)行的一些或所有操作。
在圖10示出的說明性實(shí)施例中,在框1002處,邏輯流1000將資源容量劃分到部署單元中。例如,每個(gè)部署單元可以包括操作郵箱保護(hù)服務(wù)的各種計(jì)算角色的一組服務(wù)器。
在框1004處,邏輯流1000可以修改路由數(shù)據(jù),以將生產(chǎn)業(yè)務(wù)量路由遠(yuǎn)離部署單元之一。例如,部署單元的服務(wù)器可以添加到由其它郵箱保護(hù)服務(wù)實(shí)例的端點(diǎn)使用的負(fù)載平衡器中的預(yù)期資源池,并從服務(wù)實(shí)例的預(yù)期的資源池移除它們。因此,這些服務(wù)器的資源不再可用于處理租戶生產(chǎn)業(yè)務(wù)。任意的N層通信可以限制到服務(wù)實(shí)例的內(nèi)部端點(diǎn)和/或部署單元中的內(nèi)部角色。當(dāng)服務(wù)器移動(dòng)到新的范圍實(shí)例時(shí),修改在機(jī)器上的該角色間路由配置。
作為替代例,如本文所述通過將郵箱保護(hù)服務(wù)的資源容量劃分到部署單元,管理應(yīng)用120的部署組件122-1可以生成郵箱保護(hù)服務(wù)實(shí)例,以支持請(qǐng)求與其它租戶完全隔離的服務(wù)租戶。在一個(gè)實(shí)施例中,部署組件122-1跨無狀態(tài)角色和希望完全服務(wù)隔離的至少一些有狀態(tài)角色隔離服務(wù)實(shí)例。
在框1006處,邏輯流1000可以更新部署單元。例如,可以用新的/替換軟件代碼和/或定制特征更新在部署單元中的一個(gè)或多個(gè)服務(wù)器。示例性計(jì)算角色(例如,web服務(wù)角色)可以變更為修補(bǔ)一個(gè)或多個(gè)程序錯(cuò)誤和/或執(zhí)行一個(gè)或多個(gè)客戶功能。另一示例性計(jì)算角色可以變更為包括新的惡意軟件移除機(jī)制和/或新的惡意軟件簽名數(shù)據(jù)。作為該升級(jí)的一部分,部署組件122-1可以將一部分資源容量遷移到其它服務(wù)實(shí)例的端點(diǎn)。在此時(shí),配置部署單元,其它服務(wù)實(shí)例的端點(diǎn)以及部署單元在線,變得可用于處理實(shí)際的生產(chǎn)業(yè)務(wù)量。
在框1008處,邏輯流1000可以開始測(cè)試新的郵箱保護(hù)服務(wù)實(shí)例。例如,測(cè)試租戶可以在部署單元上調(diào)用端對(duì)端測(cè)試。管理應(yīng)用120的驗(yàn)證組件122-3可以在部署單元上運(yùn)行模擬的事務(wù)。部署組件122-1還可以用新的郵箱保護(hù)服務(wù)的最新構(gòu)建升級(jí)驗(yàn)證組件122-3。因此,模擬的事務(wù)適用于測(cè)試新的郵箱保護(hù)服務(wù)實(shí)例。
在框1010處,邏輯流1000可以驗(yàn)證對(duì)部署單元的升級(jí)。例如,管理應(yīng)用120的驗(yàn)證組件122-3可以分析來自模擬的事務(wù)的測(cè)試結(jié)果。如果測(cè)試結(jié)果表示成功完成相當(dāng)數(shù)量的測(cè)試,則將一部分電子郵件業(yè)務(wù)量路由到部署單元,可能用于進(jìn)一步的測(cè)試。一個(gè)示例性實(shí)現(xiàn)方式針對(duì)與該部分相關(guān)聯(lián)的任意租戶不執(zhí)行郵箱遷移,并僅變更路由數(shù)據(jù)以包括與新的郵箱保護(hù)服務(wù)實(shí)例相關(guān)聯(lián)的端點(diǎn)。
在一個(gè)示例性實(shí)施例中,在數(shù)據(jù)中心中為隨后的部署單元重復(fù)邏輯流1000。一旦部署單元配置用于新的郵箱保護(hù)服務(wù)實(shí)例,則將額外的租戶電子郵件業(yè)務(wù)量路由到新的郵箱保護(hù)服務(wù)實(shí)例的端點(diǎn)。
替代地,與新的郵箱保護(hù)服務(wù)相關(guān)聯(lián)的端點(diǎn)僅當(dāng)與第一部署單元相關(guān)聯(lián)的時(shí)候臨時(shí)生成。來自實(shí)際租戶的電子郵件業(yè)務(wù)量永遠(yuǎn)不路由到這些端點(diǎn)。相反,測(cè)試租戶與端點(diǎn)相關(guān)聯(lián),并在這些端點(diǎn)上運(yùn)行端到端測(cè)試。在驗(yàn)證之后,更新的第一部署單元遷移回生產(chǎn)端點(diǎn)(例如,部署升級(jí)的帶外)。因?yàn)獒槍?duì)正確性和耐久性已經(jīng)測(cè)試和驗(yàn)證了郵箱保護(hù)服務(wù)的新構(gòu)建,所以以滾動(dòng)方式適當(dāng)?shù)厣?jí)后續(xù)部署單元(例如,沒有移動(dòng)到測(cè)試端點(diǎn))。
實(shí)施例不限于該例子。
圖11示出了適于實(shí)現(xiàn)如前所述的各種實(shí)施例的示例性計(jì)算架構(gòu)1100的實(shí)施例。在一個(gè)實(shí)施例中,計(jì)算架構(gòu)1100可以包括或?qū)崿F(xiàn)為電子設(shè)備的一部分。電子設(shè)備的例子可以包括結(jié)合圖8所描述的那些,等等。實(shí)施例不限于該上下文。
如本文申請(qǐng)中所使用的,術(shù)語“系統(tǒng)”和“組件”意圖指的是計(jì)算機(jī)相關(guān)的實(shí)體,無論是硬件、硬件和軟件的組合、軟件,還是執(zhí)行中的軟件,其例子通過示例性計(jì)算架構(gòu)1100提供。例如,組件可以是但不限于在處理器上運(yùn)行的過程、處理器、硬盤驅(qū)動(dòng)、(光和/或磁存儲(chǔ)介質(zhì)的)多存儲(chǔ)驅(qū)動(dòng)、對(duì)象、可執(zhí)行文件、執(zhí)行線程、程序和/或計(jì)算機(jī)。通過圖示,在服務(wù)器上運(yùn)行的應(yīng)用和服務(wù)器兩者都可以是組件。一個(gè)或多個(gè)組件可以駐留在過程和/或執(zhí)行線程中,并且組件可以定位于一個(gè)計(jì)算機(jī)和/或分布在兩個(gè)或更多個(gè)計(jì)算機(jī)之間。此外,組件可以由各種類型的通信介質(zhì)通信地彼此耦合以協(xié)調(diào)操作。所述協(xié)調(diào)可以涉及單向或雙向交換信息。例如,組件可以通信通過通信介質(zhì)通信的信號(hào)形式的信息??梢詫⑿畔?shí)現(xiàn)為分配給各個(gè)信號(hào)線的信號(hào)。在這種分配中,每個(gè)消息是信號(hào)。然而,其它實(shí)施例可以替代地采用數(shù)據(jù)消息??梢钥绺鞣N連接發(fā)送這種數(shù)據(jù)消息。示例性連接包括并行接口、串行接口和總線接口。
計(jì)算架構(gòu)1100包括各種公用計(jì)算元件,例如一個(gè)或多個(gè)處理器、多核處理器、協(xié)處理器、存儲(chǔ)器單元、芯片組、控制器、外圍組件、接口、振蕩器、定時(shí)設(shè)備、視頻卡、音頻卡、多媒體輸入/輸出(I/O)組件、電源等。然而,實(shí)施例不限于計(jì)算架構(gòu)1100的實(shí)現(xiàn)方式。
如圖11所示,計(jì)算架構(gòu)1100包括處理單元1104、系統(tǒng)存儲(chǔ)器1106和系統(tǒng)總線1108。處理單元1104可以是任意的各種商業(yè)可用處理器,包括但不限于和處理器;應(yīng)用、嵌入和安全處理器;和和處理器;和Cell處理器;Core(2)和處理器;以及類似處理器。雙核微處理器、多核處理器和其它多處理器架構(gòu)還可以用作處理單元1104。
系統(tǒng)總線1108提供用于系統(tǒng)組件的接口,包括但不限于系統(tǒng)存儲(chǔ)器1106到處理單元1104。系統(tǒng)總線1108可以是多種類型的總線結(jié)構(gòu)中的任一種,所述總線結(jié)構(gòu)可以使用多種商業(yè)可用總線架構(gòu)中的任一種進(jìn)一步互連到(具有或不具有存儲(chǔ)器控制器的)存儲(chǔ)器總線、外圍總線和局部總線。接口適配器可以經(jīng)由槽架構(gòu)連接到系統(tǒng)總線1108。示例性槽架構(gòu)可以包括但不限于加速圖形端口(AGP)、卡片總線、(延伸)工業(yè)標(biāo)準(zhǔn)架構(gòu)((E)ISA)、微通道架構(gòu)(MCA)、NuBus、(延伸)外圍部件互連(PCI(X))、快速PCI、個(gè)人計(jì)算機(jī)存儲(chǔ)器卡國(guó)際協(xié)會(huì)(PCMCIA)等。
計(jì)算架構(gòu)1100可以包括或?qū)崿F(xiàn)各種制品。制品可以包括計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)來存儲(chǔ)邏輯。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的例子可以包括能夠存儲(chǔ)電子數(shù)據(jù)的任意有形介質(zhì),包括易失性存儲(chǔ)器或非易失性存儲(chǔ)器、可移除或不可移除的存儲(chǔ)器、可擦除或不可擦除的存儲(chǔ)器、可寫入或可重寫存儲(chǔ)器等。邏輯的例子可以包括利用任意適當(dāng)類型的代碼實(shí)現(xiàn)的可執(zhí)行計(jì)算機(jī)程序指令,所述代碼例如是源代碼、編譯代碼、解釋代碼、可執(zhí)行代碼、靜態(tài)代碼、動(dòng)態(tài)代碼、面向?qū)ο蟠a、視覺代碼等。實(shí)施例還可以至少部分地實(shí)現(xiàn)為包含于非瞬態(tài)計(jì)算機(jī)可讀介質(zhì)中或上的指令,其可以由一個(gè)或多個(gè)處理器讀取和執(zhí)行以使得能夠執(zhí)行本文描述的操作。
系統(tǒng)存儲(chǔ)器1106可以包括各種類型的一個(gè)或多個(gè)更高速存儲(chǔ)器單元形式的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),例如,只讀存儲(chǔ)器(ROM)、隨機(jī)存取存儲(chǔ)器(RAM)、動(dòng)態(tài)RAM(DRAM)、雙數(shù)據(jù)速率DRAM(DDRAM)、同步DRAM(SDRAM)、靜態(tài)RAM(SRAM)、可編程ROM(PROM)、可擦除可編程ROM(EPROM)、電可擦除可編程ROM(EEPROM)、閃存、聚合物存儲(chǔ)器(例如,鐵電聚合物存儲(chǔ)器、奧氏存儲(chǔ)器、相變或鐵電存儲(chǔ)器、硅氧化氮氧化硅(SONOS)存儲(chǔ)器)、磁或光卡、設(shè)備的陣列(如,獨(dú)立磁盤冗余陣列(RAID)驅(qū)動(dòng))、固態(tài)存儲(chǔ)器設(shè)備(例如,USB存儲(chǔ)器、固態(tài)驅(qū)動(dòng)器(SSD))以及適于存儲(chǔ)信息的任意其它類型的存儲(chǔ)介質(zhì)。在圖11所示的說明性實(shí)施例中,系統(tǒng)存儲(chǔ)器1106可以包括非易失性存儲(chǔ)器1110和/或易失性存儲(chǔ)器1112。基本輸入/輸出系統(tǒng)(BIOS)可以存儲(chǔ)于非易失性存儲(chǔ)器1110中。
計(jì)算機(jī)1102可以包括一個(gè)或多個(gè)較低速度存儲(chǔ)器單元形式的各種類型的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),包括內(nèi)部(或外部)硬盤驅(qū)動(dòng)(HDD)1114、從可移除磁盤1118讀取或?qū)懭氲拇跑洷P驅(qū)動(dòng)(FDD)1116、以及從可移除光盤1122(例如,CD-ROM或DVD)讀取或?qū)懭氲墓獗P驅(qū)動(dòng)1120。HDD 1114、FDD 1116和光盤驅(qū)動(dòng)1120可以分別由HDD接口1124、FDD接口1126和光驅(qū)動(dòng)接口1128連接到系統(tǒng)總線1108。用于外部驅(qū)動(dòng)實(shí)現(xiàn)方式的HDD接口1124可以包括至少一個(gè)或兩個(gè)通用串行總線(USB)和IEEE 1394接口技術(shù)。
驅(qū)動(dòng)和相關(guān)聯(lián)的計(jì)算機(jī)可讀介質(zhì)提供數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)、計(jì)算機(jī)可執(zhí)行指令等的易失性和/或非易失性存儲(chǔ)。例如,多個(gè)程序模塊可以存儲(chǔ)于驅(qū)動(dòng)和存儲(chǔ)器單元1110、1112中,包括操作系統(tǒng)1130、一個(gè)或多個(gè)應(yīng)用程序1132、其它程序模塊1134和程序數(shù)據(jù)1136。在一個(gè)實(shí)施例中,一個(gè)或多個(gè)應(yīng)用程序1132、其它程序模塊1134和程序數(shù)據(jù)1136可以包括例如系統(tǒng)100的各種應(yīng)用和/或組件。
用戶可以通過一個(gè)或多個(gè)有線/無線輸入設(shè)備(例如,鍵盤1138)和定點(diǎn)設(shè)備(例如,鼠標(biāo)1140)將命令和信息輸入到計(jì)算機(jī)1102。其它輸入設(shè)備可以包括麥克風(fēng)、紅外(IR)遠(yuǎn)程控制、射頻(RF)遠(yuǎn)程控制、游戲臺(tái)、鐵筆、讀卡器、軟件狗、指紋讀取器、手套、繪圖板、操縱桿、鍵盤、視網(wǎng)膜閱讀器、觸摸屏(例如,電容、電阻等)、軌跡球、軌跡板、傳感器、尖筆等。這些和其它輸入設(shè)備通常通過耦合到系統(tǒng)總線1108上的輸入設(shè)備接口1142連接到處理單元1104,但是可以由其它接口(例如,并行端口、IEEE 1394串行端口、游戲端口、USB端口、IR接口等)進(jìn)行連接。
監(jiān)視器1144或其它類型的顯示設(shè)備也經(jīng)由接口(例如,視頻適配器1146)連接到系統(tǒng)總線1108上。監(jiān)視器1144可以在計(jì)算機(jī)1102的內(nèi)部或外部。除了監(jiān)視器1144外,計(jì)算機(jī)通常包括其它外圍輸出設(shè)備,例如揚(yáng)聲器、打印機(jī)等。
計(jì)算機(jī)1102可以在聯(lián)網(wǎng)環(huán)境中利用邏輯連接經(jīng)由到一個(gè)或多個(gè)遠(yuǎn)程計(jì)算機(jī)(例如,遠(yuǎn)程計(jì)算機(jī)1148)的有線和/或無線通信進(jìn)行操作。遠(yuǎn)程計(jì)算機(jī)1148可以是工作站、服務(wù)器計(jì)算機(jī)、路由器、個(gè)人計(jì)算機(jī)、便攜式計(jì)算機(jī)、基于微處理器的娛樂設(shè)備、對(duì)等設(shè)備或其它常見網(wǎng)絡(luò)節(jié)點(diǎn),以及通常包括相對(duì)計(jì)算機(jī)1102描述的多個(gè)或所有元件,但是為了簡(jiǎn)便,僅示出存儲(chǔ)器/存儲(chǔ)設(shè)備1150。所描繪的邏輯連接包括到局域網(wǎng)(LAN)1152和/或更大的網(wǎng)(例如,廣域網(wǎng)(WAN)1154)的有線/無線連接。這種LAN和WAN聯(lián)網(wǎng)環(huán)境在辦公室和公司中是常見的,并促進(jìn)企業(yè)范圍的計(jì)算機(jī)網(wǎng)絡(luò),例如內(nèi)聯(lián)網(wǎng),其所有都可以連接到全球通信網(wǎng)絡(luò)(例如,互聯(lián)網(wǎng))上。
當(dāng)在LAN聯(lián)網(wǎng)環(huán)境中使用時(shí),計(jì)算機(jī)1102通過有線和/或無線通信網(wǎng)絡(luò)接口或適配器1156連接到LAN 1152上。適配器1156可以促進(jìn)到LAN1152的有線和/或無線通信,其還可以包括布置于其上的無線接入點(diǎn),用于與適配器1156的無線功能的通信。
當(dāng)在WAN聯(lián)網(wǎng)環(huán)境中使用時(shí),計(jì)算機(jī)1102可以包括調(diào)制解調(diào)器1158,或者連接到WAN 1154上的通信服務(wù)器,或者具有用于在WAN 1154上例如通過互聯(lián)網(wǎng)建立通信的其它單元。調(diào)制解調(diào)器1158可以是內(nèi)部或外部以及有線和/或無線設(shè)備,其經(jīng)由輸入設(shè)備接口1142連接到系統(tǒng)總線1108。在聯(lián)網(wǎng)環(huán)境中,相對(duì)計(jì)算機(jī)1102描繪的程序模塊或其一部分可以存儲(chǔ)于遠(yuǎn)程存儲(chǔ)器/存儲(chǔ)設(shè)備1150中??梢岳斫獾氖牵境龅木W(wǎng)絡(luò)連接是示例性的,并且可以使用在計(jì)算機(jī)之間建立通信鏈路的其它單元。
計(jì)算機(jī)1102能夠操作以利用IEEE 802標(biāo)準(zhǔn)族與有線和無線設(shè)備或?qū)嶓w通信,例如在無線通信(例如,IEEE 802.11空中調(diào)制技術(shù))中操作布置的無線設(shè)備。這至少包括Wi-Fi(或Wireless Fidelity)、WiMax和藍(lán)牙TM無線技術(shù),等等。因此,通信可以是與傳統(tǒng)網(wǎng)絡(luò)一樣的預(yù)定義結(jié)構(gòu),或類似的在至少兩個(gè)設(shè)備之間的自組織(ad hoc)通信。Wi-Fi網(wǎng)絡(luò)使用稱作IEEE802.11x(a、b、g、n等)的無線電技術(shù)以提供安全的、可靠的、快速的無線連接。Wi-Fi網(wǎng)絡(luò)可以用于將計(jì)算機(jī)彼此連接、連接到互聯(lián)網(wǎng)、以及連接到有線網(wǎng)絡(luò)(其使用IEEE 802.3相關(guān)的介質(zhì)和功能)。
圖12示出了適用于實(shí)現(xiàn)前述各種實(shí)施例的示例性通信架構(gòu)1200的框圖。通信架構(gòu)1200包括各種公用通信元件,例如,發(fā)送器、接收器、收發(fā)器、無線電設(shè)備、網(wǎng)絡(luò)接口、基帶處理器、天線、放大器、過濾器、電源等。然而,實(shí)施例不限于由通信架構(gòu)1200實(shí)現(xiàn)。
如圖12所示,通信架構(gòu)1200包括一個(gè)或多個(gè)客戶端1202和服務(wù)器1204??蛻舳?202可以實(shí)現(xiàn)客戶端設(shè)備910。服務(wù)器1204可以實(shí)現(xiàn)服務(wù)器設(shè)備950??蛻舳?202和服務(wù)器1204操作地連接到一個(gè)或多個(gè)各自的客戶端數(shù)據(jù)存儲(chǔ)1208和服務(wù)器數(shù)據(jù)存儲(chǔ)1210,其可以用于存儲(chǔ)對(duì)各自的客戶端1202和服務(wù)器1204本地的信息,例如cookies和/或相關(guān)聯(lián)的上下文信息。
客戶端1202和服務(wù)器1204可以利用通信框架1206在彼此之間通信信息。通信框架1206可以實(shí)現(xiàn)任意已知的通信技術(shù)和協(xié)議。通信框架1206可以實(shí)現(xiàn)為分組交換網(wǎng)絡(luò)(例如,諸如互聯(lián)網(wǎng)的公共網(wǎng)絡(luò),諸如企業(yè)內(nèi)聯(lián)網(wǎng)的私有網(wǎng)絡(luò),等等)、電路交換網(wǎng)絡(luò)(例如,公共交換電話網(wǎng)絡(luò))、或(具有適當(dāng)?shù)木W(wǎng)關(guān)和翻譯器的)分組交換網(wǎng)絡(luò)和電路交換網(wǎng)絡(luò)的組合。
通信框架1206可以實(shí)現(xiàn)各種網(wǎng)絡(luò)接口,其布置為容納、通信和連接到通信網(wǎng)絡(luò)。網(wǎng)絡(luò)接口可以被視為專用形式的輸入輸出接口。網(wǎng)絡(luò)接口可以采用連接協(xié)議,其包括但不限于直接連接、以太網(wǎng)(例如,厚、薄、雙絞線10/100/1000Base T等)、令牌環(huán)、無線網(wǎng)絡(luò)接口、蜂窩網(wǎng)絡(luò)接口、IEEE802.11a-x網(wǎng)絡(luò)接口、IEEE 802.16網(wǎng)絡(luò)接口、IEEE 802.20網(wǎng)絡(luò)接口等。此外,多個(gè)網(wǎng)絡(luò)接口可以用于與各種通信網(wǎng)絡(luò)類型接合。例如,可以采用多個(gè)網(wǎng)絡(luò)接口來允許通過廣播、多播和單播網(wǎng)絡(luò)進(jìn)行通信。當(dāng)處理要求表示較大量的速度和容量時(shí),分布式網(wǎng)絡(luò)控制器架構(gòu)可以類似地用于池、負(fù)載平衡,以及以其它方式增加客戶端1202和服務(wù)器1204要求的通信帶寬。通信網(wǎng)絡(luò)可以是有線和/或無線網(wǎng)絡(luò)的任一個(gè)和組合,包括但不限于直接互連、安全客戶鏈接、私有網(wǎng)絡(luò)(例如,企業(yè)內(nèi)聯(lián)網(wǎng))、公共網(wǎng)絡(luò)(例如,互聯(lián)網(wǎng))、個(gè)域網(wǎng)(PAN)、局域網(wǎng)(LAN)、城域網(wǎng)(MAN)、作為互聯(lián)網(wǎng)上的節(jié)點(diǎn)的操作任務(wù)(OMNI)、廣域網(wǎng)(WAN)、無線網(wǎng)絡(luò)、蜂窩網(wǎng)絡(luò)以及其它通信網(wǎng)絡(luò)。
可以使用表達(dá)“一個(gè)實(shí)施例”或“實(shí)施例”及其衍生詞描述一些實(shí)施例。這些術(shù)語表示結(jié)合實(shí)施例描述的特定特征、結(jié)構(gòu)或特性包含于至少一個(gè)實(shí)施例中。在說明書各處出現(xiàn)的短語“在一個(gè)實(shí)施例中”并不必都指代同一實(shí)施例。此外,可以使用表達(dá)“耦合”和“連接”及其衍生詞描述一些實(shí)施例。這些術(shù)語不必作為彼此的同義詞。例如,可以使用術(shù)語“連接”和/或“耦合”描述一些實(shí)施例來表示兩個(gè)或更多個(gè)元件彼此直接物理或電接觸。然而,術(shù)語“耦合”還可以表示兩個(gè)或更多個(gè)元件不直接彼此接觸,但仍然彼此協(xié)作或交互。
還要強(qiáng)調(diào)的是,提供本公開的摘要以允許讀者快速確定技術(shù)公開的本質(zhì)??梢岳斫獾氖牵峤辉撜⒉挥糜诮忉尰蛳拗茩?quán)利要求的范圍或含義。另外,在前述具體實(shí)施方式中,可以看出,為了使公開流暢的目的,將各種特征一起分組到單個(gè)實(shí)施例中。公開的該方法并不被解釋為反映所要求保護(hù)的實(shí)施例要求比在每個(gè)權(quán)利要求中明確記敘的多的特征的意圖。而是,如后續(xù)權(quán)利要求所反映的,發(fā)明主題在于比單個(gè)公開實(shí)施例的所有特征少。因此,后續(xù)權(quán)利要求在此并入到具體實(shí)施方式中,每個(gè)權(quán)利要求獨(dú)立的作為單個(gè)實(shí)施例。在隨附權(quán)利要求中,術(shù)語“包括(including)”和“其中(in which)”分別用作各自術(shù)語“包括(comprising)”和“其中(wherein)”的簡(jiǎn)明英語的等價(jià)物。此外,術(shù)語“第一”、“第二”、“第三”等僅用作標(biāo)簽,而不意圖對(duì)其對(duì)象強(qiáng)加數(shù)字要求。
上述內(nèi)容包括公開架構(gòu)的例子。自然,不可能描述組件和/或方法的每個(gè)想到的組合,但是本領(lǐng)域普通技術(shù)人員可以認(rèn)識(shí)到許多進(jìn)一步的組合和置換是可能的。因此,新穎的架構(gòu)意圖包含落入隨附權(quán)利要求的精神和范圍內(nèi)的所有這些替代、修改和變型。