欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

計(jì)算機(jī)實(shí)現(xiàn)方法和計(jì)算系統(tǒng)的制作方法

文檔序號:6634256閱讀:309來源:國知局
計(jì)算機(jī)實(shí)現(xiàn)方法和計(jì)算系統(tǒng)的制作方法
【專利摘要】本發(fā)明描述了用于管理程序執(zhí)行能力的技術(shù),例如針對提供用于為用戶執(zhí)行一個(gè)或多個(gè)程序的一組計(jì)算節(jié)點(diǎn)。在某些情況下,使用中的計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力動(dòng)態(tài)修改可定期進(jìn)行或者說是以反復(fù)的方式進(jìn)行,例如以聚合在一段時(shí)間內(nèi)待做出的經(jīng)請求或以其它方式確定的多次修改。所述技術(shù)可在某些情況下結(jié)合收費(fèi)性程序執(zhí)行服務(wù)使用,所述收費(fèi)性程序執(zhí)行服務(wù)代表多個(gè)服務(wù)用戶來執(zhí)行多個(gè)程序。
【專利說明】計(jì)算機(jī)實(shí)現(xiàn)方法和計(jì)算系統(tǒng)

【背景技術(shù)】
[0001]多家公司和其它機(jī)構(gòu)對將許多計(jì)算系統(tǒng)互連以支持其操作的計(jì)算機(jī)網(wǎng)絡(luò)進(jìn)行操作,其中例如所述計(jì)算系統(tǒng)協(xié)同定位(例如,作為局部網(wǎng)絡(luò)的一部分)或相反地位于多個(gè)不同的地理位置(例如,經(jīng)由一個(gè)或多個(gè)專用或公用中間網(wǎng)絡(luò)連接)。例如,容納大量互連計(jì)算系統(tǒng)的數(shù)據(jù)中心已變得司空見慣,諸如由單個(gè)機(jī)構(gòu)操作且代表單個(gè)機(jī)構(gòu)的私用數(shù)據(jù)中心以及由作為企業(yè)的實(shí)體操作以向顧客提供計(jì)算資源的共用數(shù)據(jù)中心。一些共用數(shù)據(jù)中心的操作員向各個(gè)顧客所擁有的硬件提供網(wǎng)絡(luò)訪問、權(quán)限和安全安裝設(shè)施,而其它公共數(shù)據(jù)中心的操作員則提供也包括其顧客可用的硬件資源的“全面服務(wù)(full service)”設(shè)施。然而,隨著典型數(shù)據(jù)中心的規(guī)模和范圍增加,提供、支配和管理物理計(jì)算資源的任務(wù)已變得日益復(fù)雜。
[0002]商用硬件的虛擬化技術(shù)的出現(xiàn)已向具有不同需求的多個(gè)用戶提供了關(guān)于管理大規(guī)模計(jì)算資源的一些益處,從而使得各種計(jì)算資源可由多個(gè)用戶有效且安全地共享。例如,諸如由VMWare、XEN、Linux' s KVM( “內(nèi)核級虛擬機(jī)”)或User-Mode Linux提供的那些虛擬化技術(shù)可通過向每個(gè)用戶提供一個(gè)或多個(gè)虛擬機(jī)(由單個(gè)物理計(jì)算機(jī)提供)使得單個(gè)物理計(jì)算機(jī)在多個(gè)用戶之間被共享,其中每臺此虛擬機(jī)均為作為不同邏輯計(jì)算系統(tǒng)的軟件模擬,該邏輯計(jì)算系統(tǒng)向用戶提供的錯(cuò)覺是它們是給定硬件計(jì)算資源的唯一操作員和管理員,同時(shí)還在各個(gè)虛擬機(jī)之間提供應(yīng)用程序隔離和安全。
[0003]附圖簡述
[0004]圖1A和圖1B為示出對程序執(zhí)行服務(wù)的多個(gè)用戶可用的程序執(zhí)行能力進(jìn)行管理的交互作用的示例性實(shí)施方案的網(wǎng)絡(luò)圖。
[0005]圖2A和圖2B示出對用戶的一組多個(gè)計(jì)算節(jié)點(diǎn)的程序執(zhí)行能力進(jìn)行管理,例如以在各個(gè)時(shí)間并以各種方式動(dòng)態(tài)修改可用程序執(zhí)行能力的實(shí)例。
[0006]圖3為示出用于管理向多個(gè)用戶提供的程序執(zhí)行能力的計(jì)算系統(tǒng)的示例性實(shí)施方案的框圖。
[0007]圖4示出了程序執(zhí)行服務(wù)系統(tǒng)管理器程序的示例性實(shí)施方案的流程圖。
[0008]圖5示出了遞歸能力協(xié)調(diào)程序的示例性實(shí)施方案的流程圖。
[0009]圖6示出了能力修改歸因程序的示例性實(shí)施方案的流程圖。
[0010]圖7示出了程序執(zhí)行服務(wù)能力維護(hù)管理器程序的示例性實(shí)施方案的流程圖。

【具體實(shí)施方式】
[0011]描述了對用于執(zhí)行一個(gè)或多個(gè)用戶的程序的程序執(zhí)行能力進(jìn)行管理的技術(shù)。在至少一些實(shí)施方案中,所管理的程序執(zhí)行能力包括供用戶用于執(zhí)行一個(gè)或多個(gè)程序的一組一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)。另外,使用時(shí)可動(dòng)態(tài)修改與用戶相關(guān)的該組計(jì)算節(jié)點(diǎn),以便管理用戶可從該組計(jì)算節(jié)點(diǎn)中獲得的程序執(zhí)行能力的量。對與用戶相關(guān)的該組計(jì)算節(jié)點(diǎn)的修改在各個(gè)實(shí)施方案中可具有各種形式(例如,以修改該組中計(jì)算節(jié)點(diǎn)的數(shù)量,例如通過動(dòng)態(tài)添加和/或刪除計(jì)算節(jié)點(diǎn)),并且在各個(gè)實(shí)施方案中可以各種方式引發(fā)(例如,基于由用戶指定的動(dòng)態(tài)指令、基于用戶預(yù)定義的觸發(fā)器的滿足情況的自動(dòng)確定、基于提供該組計(jì)算節(jié)點(diǎn)的服務(wù)的自動(dòng)化操作等)。以下包括關(guān)于可從一組計(jì)算節(jié)點(diǎn)中獲得的程序執(zhí)行能力的動(dòng)態(tài)修改的其它細(xì)節(jié)。另外,在至少一些實(shí)施方案中,這些技術(shù)可結(jié)合代表該服務(wù)的多個(gè)顧客或其他用戶來執(zhí)行多個(gè)程序的程序執(zhí)行服務(wù)("PES")進(jìn)行使用,諸如網(wǎng)絡(luò)訪問程序執(zhí)行服務(wù),其提供了用于執(zhí)行遠(yuǎn)程用戶的程序的多個(gè)計(jì)算節(jié)點(diǎn)(例如,在一個(gè)或多個(gè)物理計(jì)算系統(tǒng)上提供的多個(gè)物理計(jì)算系統(tǒng)和/或虛擬機(jī))。這些技術(shù)中的一些或全部也可通過程序執(zhí)行服務(wù)系統(tǒng)管理器模塊和/或程序執(zhí)行服務(wù)能力維護(hù)管理器模塊的實(shí)施方案自動(dòng)實(shí)施,如下文更詳細(xì)地描述。
[0012]如前所述,在各個(gè)實(shí)施方案中,對用于執(zhí)行用戶的一個(gè)或多個(gè)程序的一組計(jì)算節(jié)點(diǎn)進(jìn)行的動(dòng)態(tài)修改可具有各種形式且可以各種方式引發(fā)。作為一個(gè)實(shí)例,該組計(jì)算節(jié)點(diǎn)的程序執(zhí)行能力可至少部分地通過為該組一部分的計(jì)算節(jié)點(diǎn)的數(shù)量來測量,并且可通過改變該組的計(jì)算節(jié)點(diǎn)數(shù)量來修改(例如,以通過增加計(jì)算節(jié)點(diǎn)數(shù)量來提高程序執(zhí)行能力,并通過減少計(jì)算節(jié)點(diǎn)數(shù)量來降低程序執(zhí)行能力)。此類計(jì)算節(jié)點(diǎn)數(shù)量修改可用于(例如)該組中的一些或所有計(jì)算節(jié)點(diǎn)提供或可獲得相同或類似數(shù)量的計(jì)算資源(例如,內(nèi)存量、硬盤空間、CPU執(zhí)行周期、網(wǎng)絡(luò)帶寬等)的情況中,使得計(jì)算節(jié)點(diǎn)數(shù)量的給定百分比變化對應(yīng)于該組的總計(jì)算資源和程序執(zhí)行能力的相同或類似的百分比變化。在其它實(shí)施方案中,該組計(jì)算節(jié)點(diǎn)中的一些或全部可以一種或多種重要方式在其可獲得的計(jì)算資源的量方面有所不同(例如,如果使用兩種或更多種不同類型的計(jì)算節(jié)點(diǎn)配置,如果每個(gè)計(jì)算節(jié)點(diǎn)均獨(dú)立于其它計(jì)算節(jié)點(diǎn)配置等)或以其它方式在其提供的程序執(zhí)行能力的類型方面有所不同(例如,根據(jù)專用硬件、軟件程序的類型等),但該組的程序執(zhí)行能力動(dòng)態(tài)修改確可至少部分地基于修改該組計(jì)算節(jié)點(diǎn)的數(shù)量,或相反可基于其它方式(例如,將一種類型的計(jì)算節(jié)點(diǎn)配置改變?yōu)榱硪环N類型),如其它地方更詳細(xì)地討論。
[0013]此外,在至少一些實(shí)施方案和情況中,一組一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)的程序執(zhí)行能力可以不同于計(jì)算節(jié)點(diǎn)的數(shù)量的方式進(jìn)行測量和修改,例如基于該組提供的一種或多種類型的計(jì)算資源的總量(例如,內(nèi)存量、硬盤空間、CPU執(zhí)行周期、網(wǎng)絡(luò)帶寬等)。另外,在至少一些實(shí)施方案中,在測量和指定一組計(jì)算節(jié)點(diǎn)的程序執(zhí)行能力中可考慮其它因素,諸如一些或所有計(jì)算節(jié)點(diǎn)的地理位置、一些或所有計(jì)算節(jié)點(diǎn)之間的相互關(guān)系(例如,由至多最大地理距離或至少最小地理距離分隔、由至多最大網(wǎng)絡(luò)延時(shí)或至少最小網(wǎng)絡(luò)延時(shí)分隔、分隔成兩個(gè)或更多個(gè)獨(dú)立的數(shù)據(jù)中心或不會同時(shí)失效的其它計(jì)算節(jié)點(diǎn)集合等)、專用硬件能力和/或軟件能力的可用性等。以下包括關(guān)于測量和指定程序執(zhí)行能力的其它細(xì)節(jié)。
[0014]對用于執(zhí)行用戶的一個(gè)或多個(gè)程序的一組計(jì)算節(jié)點(diǎn)進(jìn)行管理的PES或其它系統(tǒng)可自動(dòng)確定如何和何時(shí)以各種方式對該計(jì)算節(jié)點(diǎn)組進(jìn)行程序執(zhí)行能力動(dòng)態(tài)修改。例如,在至少一些實(shí)施方案和情況中,PES或其它系統(tǒng)可以直接方式進(jìn)行某些類型的程序執(zhí)行能力修改,而其它類型的程序執(zhí)行能力修改可定期進(jìn)行或者說是以反復(fù)的方式進(jìn)行(例如,以便延遲和聚合在一段時(shí)間內(nèi)(例如自進(jìn)行一次或多次聚合修改之前開始)待做出的經(jīng)請求或以其它方式確定的多次修改。如果在一段時(shí)間內(nèi)聚合多個(gè)程序執(zhí)行能力修改確定值,則關(guān)于聚合修改確定值的信息可用于以各種方式來提高程序執(zhí)行能力修改的實(shí)施。例如,如果兩次確定的程序執(zhí)行能力修改對應(yīng)于相反類型的修改(例如,以增加和減少計(jì)算節(jié)點(diǎn)數(shù)量、增加和減少可用總內(nèi)存等),則兩次修改可以各種方式進(jìn)行聚合,例如通過經(jīng)選擇來部分或完全相互抵消,或相反通過選擇待進(jìn)行的兩次修改中的較高優(yōu)先級來代替另一次修改。另外,如果兩次或更多次確定的程序執(zhí)行能力修改對應(yīng)于類似或互補(bǔ)類型的修改(例如,以使計(jì)算節(jié)點(diǎn)數(shù)量全面增加指定量、使可用總內(nèi)存全面增加指定量等),則那些確定的修改可以各種方式同樣地聚合(例如,以選擇符合某些指定標(biāo)準(zhǔn)的單次確定的修改,諸如最大修改、最小修改、具有最高優(yōu)先級的修改、首先確定的修改、最后確定的修改等;以累積各種確定的修改并使用累積的修改量;等)。以下包括關(guān)于確定如何和何時(shí)做出各類程序執(zhí)行能力修改的其它細(xì)節(jié)。
[0015]另外,當(dāng)PES或其它系統(tǒng)對代表用戶來執(zhí)行一個(gè)或多個(gè)程序的一組計(jì)算節(jié)點(diǎn)動(dòng)態(tài)進(jìn)行程序執(zhí)行能力修改時(shí),PES或其它系統(tǒng)可進(jìn)一步進(jìn)行各種操作以將特定的程序執(zhí)行能力修改的因果律信息或其它責(zé)任歸因。責(zé)任歸因可包括(例如)識別已在相關(guān)時(shí)段內(nèi)發(fā)生的特定事件,其中每個(gè)事件均能夠引起程序執(zhí)行能力動(dòng)態(tài)修改,并且將這些事件中的一件或多件歸因于在該時(shí)段期間或之后進(jìn)行的程序執(zhí)行能力動(dòng)態(tài)修改中的一些或全部。例如,在至少一些實(shí)施方案和情況中,一些程序執(zhí)行能力動(dòng)態(tài)修改各自可由單個(gè)特定事件引發(fā)(例如,如果該組計(jì)算節(jié)點(diǎn)失效或者說是變得不可用,則系統(tǒng)立即自動(dòng)啟動(dòng)向該組提供替代計(jì)算節(jié)點(diǎn),同時(shí)計(jì)算節(jié)點(diǎn)不可用性成為直接引起系統(tǒng)自動(dòng)動(dòng)作以提供替代計(jì)算節(jié)點(diǎn)的單個(gè)事件)。在至少一些實(shí)施方案和情況中,其它程序執(zhí)行能力動(dòng)態(tài)修改各自可歸因于多個(gè)事件的組合,這些事件中的每一件均有助于或可能有助于能力修改(例如,如果多個(gè)獨(dú)立事件各自在一段時(shí)間內(nèi)需要或指示該組的計(jì)算節(jié)點(diǎn)數(shù)量增加,并且這些事件經(jīng)聚合以在該時(shí)段結(jié)束時(shí)增加單個(gè)計(jì)算節(jié)點(diǎn)的數(shù)量,同時(shí)各獨(dú)立事件成為共同間接引起系統(tǒng)后續(xù)自動(dòng)動(dòng)作以增加計(jì)算節(jié)點(diǎn)數(shù)量的多個(gè)事件)。
[0016]對與用戶相關(guān)的計(jì)算節(jié)點(diǎn)組進(jìn)行的特定程序執(zhí)行能力動(dòng)態(tài)修改的責(zé)任歸因在以下情況下可具有特別的益處,例如針對至少一些程序執(zhí)行能力修改而向用戶收費(fèi)時(shí)(例如,如果PES或其它系統(tǒng)為由于提供該組的每個(gè)計(jì)算節(jié)點(diǎn)、程序執(zhí)行能力的每個(gè)其它度量和/或基于其它依據(jù)而向消費(fèi)用戶收費(fèi)的付費(fèi)系統(tǒng))。在此類情況下,用戶可不僅能夠接收和查看關(guān)于與特定程序執(zhí)行能力動(dòng)態(tài)修改相對應(yīng)的費(fèi)用的信息,而且能夠接收和查看相關(guān)的責(zé)任歸因信息,以便用戶能夠確認(rèn)那些程序執(zhí)行能力動(dòng)態(tài)修改的原因和適當(dāng)性。在至少一些此類實(shí)施方案中,責(zé)任歸因信息可以人可讀格式產(chǎn)生以便向用戶顯示,以使用戶能夠理解各個(gè)自動(dòng)動(dòng)作為何由人可讀信息中所包括的PES或其它系統(tǒng)來采取的解釋。在其它實(shí)施方案中,也可以各種其它方式(包括通過自動(dòng)啟動(dòng)其它操作的PES或其它系統(tǒng))來使用此類責(zé)任歸因信息。另外,在至少一些實(shí)施方案中,可響應(yīng)于從用戶或其它來源處接收的各類詢問來產(chǎn)生和/或使用責(zé)任歸因信息,這些詢問諸如關(guān)于識別哪些(多個(gè))事件為引起一組一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)可用性發(fā)生指示的特定程序執(zhí)行能力修改或其它變化的原因的請求和/或關(guān)于哪些(多次)程序執(zhí)行能力修改或其它計(jì)算節(jié)點(diǎn)組的(多個(gè))可用性變化由一個(gè)或多個(gè)指示的事件引起的請求。以下包括關(guān)于確定和使用程序執(zhí)行能力動(dòng)態(tài)修改的責(zé)任歸因信息的其它細(xì)節(jié)。
[0017]在各種情況下,用于自動(dòng)管理程序執(zhí)行能力動(dòng)態(tài)修改的所述技術(shù)可提供各種益處。例如,通過聚合多個(gè)經(jīng)請求或確定的程序執(zhí)行能力動(dòng)態(tài)修改以進(jìn)行綜合考慮,PES或其它系統(tǒng)也許能夠優(yōu)化如何進(jìn)行聚合修改,以及將計(jì)算節(jié)點(diǎn)的反復(fù)變化最小化,這可使進(jìn)行額外變化的一些或所有計(jì)算節(jié)點(diǎn)在一段時(shí)間內(nèi)暫時(shí)不可用。另外,用戶可預(yù)定義基于一組計(jì)算節(jié)點(diǎn)的性能特性的各類觸發(fā)器,同時(shí)在特定觸發(fā)器被滿足時(shí),視情況自動(dòng)提高或降低程序執(zhí)行能力(例如,以被動(dòng)(reactively)提高一組計(jì)算節(jié)點(diǎn)的程序執(zhí)行能力,從而滿足計(jì)算節(jié)點(diǎn)組的計(jì)算負(fù)荷的暫時(shí)性增加;主動(dòng)(proactively)提高或降低一組計(jì)算節(jié)點(diǎn)的程序執(zhí)行能力,從而滿足其它程序執(zhí)行能力的即將出現(xiàn)的預(yù)期需求和/或滿足現(xiàn)有程序執(zhí)行能力的即將出現(xiàn)的預(yù)期需求缺乏,例如根據(jù)關(guān)于特定性能特性和/或指示程序執(zhí)行能力的重復(fù)使用模式的歷史數(shù)據(jù)的隨時(shí)間變化的趨勢;等)?;蛘?,用戶可希望將一組計(jì)算節(jié)點(diǎn)的程序執(zhí)行能力保持在指定水平或其附近(例如,計(jì)算節(jié)點(diǎn)的指定所需恒量),并且可對該組計(jì)算節(jié)點(diǎn)自動(dòng)進(jìn)行各種修改以將可用程序執(zhí)行能力保持在該指定水平(例如,以將已偏離指定所需量的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量恢復(fù)至該指定所需量)。例如當(dāng)該組計(jì)算節(jié)點(diǎn)中的每個(gè)執(zhí)行相同程序的不同復(fù)本(例如,以用作該組中的總計(jì)算負(fù)荷的替代形式),并且修改計(jì)算節(jié)點(diǎn)的數(shù)量以管理由每個(gè)計(jì)算節(jié)點(diǎn)處理的工作量時(shí),可使用此類技術(shù),或者說是將這些技術(shù)用于一組中的各個(gè)計(jì)算節(jié)點(diǎn)并未各自執(zhí)行相同程序的不同復(fù)本的情況中(例如,如果該組計(jì)算節(jié)點(diǎn)的不同子集各自執(zhí)行不同程序的復(fù)本,例如以使某些計(jì)算節(jié)點(diǎn)執(zhí)行應(yīng)用服務(wù)器程序且使其它計(jì)算節(jié)點(diǎn)執(zhí)行相關(guān)的數(shù)據(jù)庫服務(wù)器程序;如果這些計(jì)算節(jié)點(diǎn)中的一些或全部諸如以分布式方式實(shí)施單個(gè)程序的不同部分;等)。此外,當(dāng)向組添加附加計(jì)算節(jié)點(diǎn)時(shí),PES或其它系統(tǒng)在至少某些情況中還可任選地采取其它動(dòng)作,例如以提供所添加的計(jì)算節(jié)點(diǎn)來準(zhǔn)備執(zhí)行一個(gè)或多個(gè)程序,或在所添加的計(jì)算節(jié)點(diǎn)上進(jìn)一步自動(dòng)引發(fā)一個(gè)或多個(gè)程序的執(zhí)行。
[0018]如前所述,用戶可預(yù)定義與動(dòng)態(tài)修改多組計(jì)算節(jié)點(diǎn)的程序執(zhí)行能力相關(guān)的各類觸發(fā)器,并且那些觸發(fā)器隨后可用于引發(fā)用戶的計(jì)算節(jié)點(diǎn)組的相應(yīng)程序執(zhí)行能力自動(dòng)化動(dòng)態(tài)修改。作為一個(gè)實(shí)例,可定義指定計(jì)算節(jié)點(diǎn)的特定所需量或一種或多種計(jì)算資源的所需總量的觸發(fā)器,例如其可用于將相應(yīng)計(jì)算節(jié)點(diǎn)組自動(dòng)保持在所需計(jì)算節(jié)點(diǎn)數(shù)量或所需計(jì)算資源總量,或相反用于改變指定的計(jì)算節(jié)點(diǎn)數(shù)量或計(jì)算資源總量(如果滿足指定標(biāo)準(zhǔn))。在其它情況中,可定義指定一種或多種計(jì)算資源的計(jì)算節(jié)點(diǎn)數(shù)量或總量的特定絕對或相對變化的觸發(fā)器,例如如果計(jì)算節(jié)點(diǎn)組的一種或多種指示的性能特性達(dá)到指定閾值或者說是滿足指定標(biāo)準(zhǔn),則其可被觸發(fā)(例如,保持在指定時(shí)段的指定沮圍內(nèi);表不特定趨勢,諸如指定時(shí)段內(nèi)的指定變化量,或諸如特定“加速度(accelerat1n) ”或變化速率;符合或?qū)?yīng)于一種或多種指定模式(例如來自表示程序執(zhí)行能力的重復(fù)使用模式的歷史數(shù)據(jù));滿足多種性能特性的指定邏輯或值的其它組合,例如可使用邏輯算子(諸如AND、N0T、0R等)和/或以其它方式將其組合;等)。在其它實(shí)施方案和情況中,預(yù)定義的觸發(fā)器可根據(jù)不屬于計(jì)算節(jié)點(diǎn)組的性能特性的信息以其它方式來被滿足(例如,基于符合一個(gè)或多個(gè)指定時(shí)間(為特定觸發(fā)器的標(biāo)準(zhǔn)的一部分或全部)的當(dāng)前時(shí)間;基于在以不同于性能特性的方式測量的當(dāng)前計(jì)算節(jié)點(diǎn)組上執(zhí)行的一個(gè)或多個(gè)程序的狀態(tài)信息,諸如正如由(例如)經(jīng)排列或者說是已知或期望由一個(gè)或多個(gè)程序完成的工作量表示的當(dāng)前計(jì)算負(fù)荷;基于未由當(dāng)前計(jì)算節(jié)點(diǎn)組執(zhí)行的一個(gè)或多個(gè)其它執(zhí)行程序的性能特性或其它狀態(tài)信息,例如如果當(dāng)前計(jì)算節(jié)點(diǎn)組與其它執(zhí)行程序交互或者說是支持這些程序,以便在其它執(zhí)行程序上的計(jì)算負(fù)荷增加或減少時(shí),例如提高當(dāng)前計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力;等)。此類性能特性可基于該組計(jì)算節(jié)點(diǎn)中的一個(gè)或多個(gè)的任何可測量的屬性或與這些節(jié)點(diǎn)的操作相對應(yīng)的其它尺度,包括以下非排他性清單項(xiàng):單個(gè)計(jì)算節(jié)點(diǎn)的一種或多種計(jì)算資源的絕對或相對使用量(例如,所使用的可用內(nèi)存的百分量或CPU周期利用率、所使用的網(wǎng)絡(luò)帶寬的絕對量等);所有該組計(jì)算節(jié)點(diǎn)的一種或多種計(jì)算資源的絕對或相對總使用量;響應(yīng)于來自外部計(jì)算系統(tǒng)的通信中的絕對或相對延時(shí)(latency)或其它延遲(delay)量;計(jì)算節(jié)點(diǎn)在完成一個(gè)或多個(gè)所需動(dòng)作中的絕對或相對失效量;等。此外,在至少一些實(shí)施方案和情況中,觸發(fā)器的滿足情況并非使該觸發(fā)器直接指定將在被滿足時(shí)發(fā)生的特定程序執(zhí)行能力修改,而是可使指定系統(tǒng)或模塊獲得通知,并且該系統(tǒng)或模塊可請求進(jìn)行特定的程序執(zhí)行能力修改(例如,未改變的預(yù)定義的能力修改;例如基于當(dāng)時(shí)的條件在通知時(shí)動(dòng)態(tài)確定的能力修改;等)。另外,在一些實(shí)施方案中,PES或其它系統(tǒng)可進(jìn)行各種操作以監(jiān)測一組計(jì)算節(jié)點(diǎn),以便確定與該組相關(guān)的觸發(fā)器的一些或所有性能特性,或可以其它方式從另一個(gè)來源獲得此類監(jiān)測的性能特性(例如,從監(jiān)測所述計(jì)算節(jié)點(diǎn)的第三方軟件、從在計(jì)算節(jié)點(diǎn)上執(zhí)行以監(jiān)測該計(jì)算節(jié)點(diǎn)和任選地報(bào)告監(jiān)測信息的軟件等)。此外,在一些實(shí)施方案中,PES或其它系統(tǒng)可具有在滿足觸發(fā)器的指示觸發(fā)標(biāo)準(zhǔn)時(shí)引發(fā)程序執(zhí)行能力動(dòng)態(tài)修改的系統(tǒng)定義觸發(fā)器,或可在指定情況下以其它方式自動(dòng)確定以對計(jì)算節(jié)點(diǎn)組做出某些類型的變化。
[0019]當(dāng)定義的觸發(fā)器指定一種或多種計(jì)算資源的計(jì)算節(jié)點(diǎn)數(shù)量或總量的特定絕對或相對變化,并且基于相應(yīng)計(jì)算節(jié)點(diǎn)組的當(dāng)前情況自動(dòng)確定來滿足定義的觸發(fā)器的一個(gè)或多個(gè)指定標(biāo)準(zhǔn)時(shí),PES或其它系統(tǒng)可自動(dòng)確定是否和如何對觸發(fā)器進(jìn)行指定的程序執(zhí)行能力修改。例如,可立即進(jìn)行某些類型的指定程序執(zhí)行能力修改(例如,終止使用一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)的請求、基于用戶已指定用于立即實(shí)施的觸發(fā)器的請求等),而可將其它類型的指定程序執(zhí)行能力修改延遲到聚合時(shí)段結(jié)束時(shí),以將其視為在該時(shí)段期間請求或者說是確定的聚合的多次程序執(zhí)行能力修改的一部分。類似地,例如基于程序執(zhí)行能力動(dòng)態(tài)修改的類型、基于來自用戶的立即或延遲實(shí)施的顯式請求等,可確定由用戶動(dòng)態(tài)請求的程序執(zhí)行能力修改(例如,經(jīng)由⑶I,或者PES或其它系統(tǒng)的圖形用戶界面;通過經(jīng)由定義的API或者PES或其它系統(tǒng)的應(yīng)用程序編程接口的用戶程序;等)以立即進(jìn)行和/或以類似的方式暫時(shí)延遲和聚合。此外,當(dāng)確定如何管理確定的多次程序執(zhí)行能力修改的組合時(shí),在某些情況下,不同的優(yōu)先級可與確定的不同修改相關(guān)。如果如此,例如對于賦予與被滿足的觸發(fā)器不同的優(yōu)先級(例如,較高或較低優(yōu)先級)的動(dòng)態(tài)指定的用戶請求或其它用戶指令、賦予不同優(yōu)先級的不同類型的經(jīng)確定修改而言(例如,對于與提高程序執(zhí)行能力的請求相比賦予較高優(yōu)先級的降低程序執(zhí)行能力的請求而言)等,可以各種方式來評估此類優(yōu)先級。以下包括關(guān)于使用用戶定義的觸發(fā)器且確定性能特性的其它細(xì)節(jié)。
[0020]此外,在至少一些實(shí)施方案中,基于追蹤和使用相應(yīng)計(jì)算節(jié)點(diǎn)組的多個(gè)屬性,或者說是基于各自均與該組中一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)相關(guān)的可控參數(shù),PES或其它系統(tǒng)可管理定期或者說是反復(fù)聚合的多次經(jīng)確定程序執(zhí)行能力修改。作為一個(gè)實(shí)例,將計(jì)算節(jié)點(diǎn)組的計(jì)算節(jié)點(diǎn)數(shù)量用作與該計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力相對應(yīng)的尺度,PES或其它系統(tǒng)可針對該計(jì)算節(jié)點(diǎn)組而保持和使用至少三種相互關(guān)聯(lián)的度量,如下所述:計(jì)算節(jié)點(diǎn)組的所需計(jì)算節(jié)點(diǎn)數(shù)量,例如在啟動(dòng)該計(jì)算節(jié)點(diǎn)組時(shí),相關(guān)用戶可對其進(jìn)行初始設(shè)定,并且該數(shù)量可根據(jù)觸發(fā)器的滿足情況和/或動(dòng)態(tài)指定的用戶請求來修改;該組中當(dāng)前可用計(jì)算節(jié)點(diǎn)的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量(例如,通過對該組計(jì)算節(jié)點(diǎn)的連續(xù)或反復(fù)監(jiān)測來確定);和該組中當(dāng)前可用計(jì)算節(jié)點(diǎn)的正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量(例如,正如在最后一次引發(fā)一次或多次程序執(zhí)行能力動(dòng)態(tài)修改時(shí)所確定,并且任選地不時(shí)通過連續(xù)或反復(fù)監(jiān)測來更新)。所述計(jì)算節(jié)點(diǎn)組的此類多個(gè)屬性可以各種方式用于(例如)連續(xù)或反復(fù)地測量實(shí)際數(shù)量并由此更新正式記錄的數(shù)量(例如,基于對該組計(jì)算節(jié)點(diǎn)進(jìn)行監(jiān)測),并且用于定期嘗試將最近正式記錄的數(shù)量更新以符合當(dāng)前所需數(shù)量(例如,當(dāng)考慮如何和是否要對多次聚合的經(jīng)確定修改進(jìn)行組合時(shí))。
[0021]如前所述,PES或其它系統(tǒng)可進(jìn)一步進(jìn)行各種操作以將做出的特定程序執(zhí)行能力動(dòng)態(tài)修改的因果律信息或其它責(zé)任歸因。例如,如前所述,可追蹤與計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力動(dòng)態(tài)修改的請求相對應(yīng)的事件,包括所接收的用戶指定的動(dòng)態(tài)指令和經(jīng)自動(dòng)確定被滿足的預(yù)定義的觸發(fā)器,以及在一些實(shí)施方案中由PES或其它系統(tǒng)自動(dòng)采取的動(dòng)作(例如,基于進(jìn)行的監(jiān)測,例如如果確定計(jì)算節(jié)點(diǎn)已凍結(jié)或者說是不可用于進(jìn)行所需活動(dòng),自動(dòng)關(guān)閉或者說是終止將計(jì)算節(jié)點(diǎn)用作其當(dāng)前計(jì)算節(jié)點(diǎn)組的一部分)。類似地,可同樣地追蹤計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力的實(shí)際變化,諸如與發(fā)生的事件和/或其它能力變化相對應(yīng)的變化(例如,計(jì)算節(jié)點(diǎn)失效或者說是變得不可用的例子)。作為一個(gè)實(shí)例,可將各種事件相關(guān)信息儲存在第一數(shù)據(jù)庫表中,并且可將關(guān)于能力變化或其它可用性變化的各種信息儲存在第二數(shù)據(jù)庫表中。如果識別特定事件和特定可用性變化之間的關(guān)系(例如,特定事件致使特定可用性變化立即發(fā)生),則可通過將相同的關(guān)結(jié)相關(guān)標(biāo)識符與關(guān)于該事件和該可用性變化的其它信息一起保存來追蹤所述事件和可用性變化之間的相應(yīng)關(guān)結(jié)。在多個(gè)事件可單獨(dú)或組合地引起特定可用性變化但因果律不歸因于單個(gè)事件的其它情況中,可將單個(gè)關(guān)結(jié)相關(guān)標(biāo)識符與關(guān)于所述可用性變化和那些事件中的每個(gè)的其它信息一起儲存,并且還可與關(guān)于一個(gè)或多個(gè)其它可用性變化的其它信息一起保存(如果它們類似地可單獨(dú)或組合地歸因于那些相同的多個(gè)事件)。因此,例如如果給定計(jì)算節(jié)點(diǎn)組的多個(gè)事件發(fā)生在單個(gè)聚合時(shí)段期間并且一個(gè)或多個(gè)程序執(zhí)行能力變化發(fā)生在該相同的聚合時(shí)段期間或緊接其后發(fā)生(例如,作為在該聚合時(shí)段結(jié)束時(shí)進(jìn)行的協(xié)調(diào)活動(dòng)的一部分),并且如果那些事件均不可直接歸因于所述一個(gè)或多個(gè)能力變化中的任一者,則所有這些多個(gè)事件的組合都可歸因于所述一個(gè)或多個(gè)能力變化中的每個(gè)。以下包括關(guān)于此因果律歸因的進(jìn)一步細(xì)節(jié)(包括參照圖2B)。
[0022]另外,以類似的方式,多個(gè)此類所需、實(shí)際和正式屬性可被追蹤且用于與計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力相對應(yīng)的一個(gè)或多個(gè)其它可控參數(shù),諸如所需的第一組、實(shí)際和正式量的CPU周期總平均利用率、所需的第二組、實(shí)際和正式量的網(wǎng)絡(luò)帶寬總平均利用率等。此夕卜,當(dāng)同時(shí)追蹤和使用與計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力相對應(yīng)的多個(gè)參數(shù)時(shí),PES或其它系統(tǒng)可嘗試管理所有參數(shù),例如以修改計(jì)算節(jié)點(diǎn)組,以便同時(shí)獲得所需的CPU周期總平均利用率和所需的網(wǎng)絡(luò)帶寬總平均利用率。作為另一個(gè)實(shí)例,計(jì)算節(jié)點(diǎn)組的多個(gè)參數(shù)可包括該組中各個(gè)計(jì)算節(jié)點(diǎn)的計(jì)算節(jié)點(diǎn)數(shù)量和指定地理位置(例如,介于第一數(shù)據(jù)中心的該組計(jì)算節(jié)點(diǎn)的15%和20%之間,剩余的該組計(jì)算節(jié)點(diǎn)位于一個(gè)或多個(gè)其它數(shù)據(jù)中心),同時(shí)PES或其它系統(tǒng)嘗試同時(shí)管理該組的計(jì)算節(jié)點(diǎn)數(shù)量和計(jì)算節(jié)點(diǎn)地理位置。以下包括關(guān)于使用多個(gè)屬性來追蹤和管理一個(gè)或多個(gè)程序執(zhí)行能力參數(shù)的其它細(xì)節(jié)。
[0023]另外,在各個(gè)實(shí)施方案中,PES或其它系統(tǒng)可使用戶以各種方式訪問計(jì)算節(jié)點(diǎn)。例如,在一些實(shí)施方案中,可將可從用于執(zhí)行程序的PES處獲得的計(jì)算節(jié)點(diǎn)中的至少一些分配給一個(gè)或多個(gè)用戶,以便那些用戶可優(yōu)先使用,使得那些用戶中的每個(gè)相對于其他用戶可優(yōu)先使用那些計(jì)算節(jié)點(diǎn)。在一個(gè)此實(shí)施方案中,這些用戶的優(yōu)先訪問可基于可專有或?qū)偈褂弥付〞r(shí)段的那些計(jì)算節(jié)點(diǎn)(例如以類似于租用的方式)的每個(gè)用戶。另外,在一些實(shí)施方案中,例如當(dāng)計(jì)算節(jié)點(diǎn)未被分配有這些計(jì)算節(jié)點(diǎn)的用戶使用時(shí)和/或當(dāng)分配有計(jì)算節(jié)點(diǎn)的用戶明確地使已分配的計(jì)算節(jié)點(diǎn)可由其他用戶使用時(shí),分配給一個(gè)或多個(gè)用戶以專有或優(yōu)先使用的計(jì)算節(jié)點(diǎn)中的至少一些有時(shí)可用作過量程序執(zhí)行能力供其他用戶使用。這樣,分配給第一組用戶的至少一些程序執(zhí)行能力有時(shí)可用于(例如在非保證的基礎(chǔ)上)代表其他用戶來暫時(shí)執(zhí)行程序(例如,如果需要該程序執(zhí)行能力來用于其它目的,諸如一個(gè)或多個(gè)其他用戶的優(yōu)先或保留使用,則使得過量程序執(zhí)行能力的使用權(quán)可被取消)。此外,在一些實(shí)施方案中,PES可包括按需計(jì)算節(jié)點(diǎn),其可用于滿足用戶執(zhí)行程序的動(dòng)態(tài)接收請求(例如,在那些用戶請求時(shí)、在指示的將來時(shí)間、在指示的將來時(shí)段內(nèi)的一段時(shí)間等執(zhí)行),使得可執(zhí)行該請求所指示的一個(gè)或多個(gè)程序,其前提是足以滿足請求的執(zhí)行的計(jì)算節(jié)點(diǎn)在所請求的時(shí)間時(shí)(或附近)可用(但不保證會滿足該請求)時(shí)。另外,在一些實(shí)施方案中,在立即(或預(yù)定)執(zhí)行的該按需請求被滿足且代表各個(gè)用戶來成功引發(fā)一個(gè)或多個(gè)程序的執(zhí)行之后,可保證繼續(xù)使用按需計(jì)算節(jié)點(diǎn)直到將來的某個(gè)時(shí)間,諸如各個(gè)用戶所選擇的某個(gè)時(shí)間,任選地受到某些限制的某個(gè)時(shí)間,(例如,應(yīng)當(dāng)保證PES不會先占用于其它目的的用途,但不保證執(zhí)行程序的計(jì)算節(jié)點(diǎn)會失效)。在一些實(shí)施方案中,用于提供按需可變程序執(zhí)行能力的計(jì)算節(jié)點(diǎn)可不同于用于提供專有程序執(zhí)行能力的計(jì)算節(jié)點(diǎn)和/或用于提供過量程序執(zhí)行能力的計(jì)算節(jié)點(diǎn),因此如果未使用用于提供按需可變程序執(zhí)行能力的計(jì)算節(jié)點(diǎn)中的一些,則在一些實(shí)施方案中,這些節(jié)點(diǎn)可用于提供過量程序執(zhí)行能力,直到收到按需可變程序執(zhí)行能力請求,而在其它實(shí)施方案中,這些節(jié)點(diǎn)可能不會用于提供過量程序執(zhí)行能力。在其它實(shí)施方案中,僅可提供單一類型的程序執(zhí)行能力,和/或可提供其它類型的程序執(zhí)行能力。
[0024]圖1A為示出對可用于提供程序執(zhí)行能力以執(zhí)行多個(gè)用戶的程序的計(jì)算節(jié)點(diǎn)進(jìn)行管理的程序執(zhí)行服務(wù)的實(shí)例的網(wǎng)絡(luò)圖。為了進(jìn)行說明性的目的,以下描述了一些實(shí)例和實(shí)施方案,其中以特定方式來提供和管理特定類型的程序執(zhí)行能力。另外,在下述實(shí)例和實(shí)施方案中的一些中,由一組計(jì)算節(jié)點(diǎn)提供的程序執(zhí)行能力可以特定方式(例如,基于計(jì)算節(jié)點(diǎn)的數(shù)量)來測量,可以特定方式(例如,通過追蹤所需、實(shí)際和正式屬性相對于一個(gè)或多個(gè)程序執(zhí)行能力尺度的用途)來管理,可通過相關(guān)用戶以各種方式(例如,基于預(yù)定義觸發(fā)器和/或動(dòng)態(tài)指定指令的用途)進(jìn)行控制,可以特定方式進(jìn)行修改(例如,通過聚合在一段時(shí)間內(nèi)確定和延遲的至少一些程序執(zhí)行能力修改,然后在該時(shí)段結(jié)束時(shí)進(jìn)行一次或多次相應(yīng)的聚合修改,例如以修改一組中計(jì)算節(jié)點(diǎn)的數(shù)量)等。提供這些實(shí)例用于進(jìn)行說明性的目的且為了簡潔起見而將其簡化,并且應(yīng)當(dāng)理解到,本發(fā)明的技術(shù)可用于各種其它情況中,而下面僅描述了這些情況中的一些。
[0025]在圖1A的實(shí)例中,各個(gè)用戶(未示出)正在將各個(gè)客戶計(jì)算系統(tǒng)130用于通過網(wǎng)絡(luò)100與由程序執(zhí)行服務(wù)提供實(shí)體105提供的PES進(jìn)行交互,同時(shí)PES的一些功能通過程序執(zhí)行服務(wù)系統(tǒng)管理器("PESSM")模塊110的圖示實(shí)施方案提供于該實(shí)例中,而其它功能通過程序執(zhí)行服務(wù)能力維護(hù)管理器("PESCMM")模塊115的圖示實(shí)施方案提供于該實(shí)例中。PESSM模塊110可例如幫助特定用戶來配置待用于執(zhí)行這些用戶的程序的多組計(jì)算節(jié)點(diǎn),包括為這些組指定初始所需計(jì)算節(jié)點(diǎn)數(shù)量并且指定用于隨后對計(jì)算節(jié)點(diǎn)數(shù)量自動(dòng)做出動(dòng)態(tài)修改的觸發(fā)器。在該實(shí)例中,PES使各個(gè)計(jì)算節(jié)點(diǎn)120可用于執(zhí)行用戶的程序,但在其它實(shí)施方案中,用于至少一些組中的計(jì)算節(jié)點(diǎn)中的至少一些可以其它方式來提供(例如,可通過用戶和/或第三方諸如外部計(jì)算系統(tǒng)140來提供,但由PES進(jìn)行管理)。另外,PESCMM模塊115可有助于連續(xù)或反復(fù)監(jiān)測在使用中的計(jì)算節(jié)點(diǎn)組,并且任選地嘗試代替失效或者說是變得不可用的任何計(jì)算節(jié)點(diǎn),以便將程序執(zhí)行能力保持在先前確定的水平。
[0026]網(wǎng)絡(luò)100可例如為鏈接網(wǎng)絡(luò)的可公開訪問網(wǎng)絡(luò),其可能由不同的各方(諸如因特網(wǎng))進(jìn)行操作。在其它實(shí)施方案中,網(wǎng)絡(luò)100可為專用網(wǎng),諸如非特權(quán)用戶完全或部分地不可訪問的企業(yè)網(wǎng)或校園網(wǎng)。在其它實(shí)施方案中,網(wǎng)絡(luò)100可包括可訪問因特網(wǎng)和/或可通過因特網(wǎng)訪問的一個(gè)或多個(gè)專用網(wǎng)。在圖示實(shí)施方案中,PESSM模塊110和PESCMM模塊115各自可包括在一個(gè)或多個(gè)計(jì)算系統(tǒng)(未示出)上執(zhí)行的軟件指令。另外,模塊110和115以及各個(gè)計(jì)算節(jié)點(diǎn)120可以各種方式(諸如在單個(gè)數(shù)據(jù)中心)或者說是以使用一組協(xié)同定位的計(jì)算系統(tǒng)的方式,或相反以使用各個(gè)不同地理位置處的各種計(jì)算系統(tǒng)的分布式方式來提供。
[0027]在一些實(shí)施方案中,圖示的計(jì)算節(jié)點(diǎn)120可包括在一個(gè)或多個(gè)物理計(jì)算系統(tǒng)上提供的多個(gè)物理計(jì)算系統(tǒng)和/或多個(gè)虛擬機(jī)(如參照圖1B更詳細(xì)地描述)。每個(gè)計(jì)算節(jié)點(diǎn)120均具有一定量的可用于執(zhí)行一個(gè)或多個(gè)程序的計(jì)算資源,(例如)以提供特定量的程序執(zhí)行能力,例如所述程序執(zhí)行能力可例如通過一種或多種處理能力(例如,處理單元的數(shù)量和/或尺寸)、存儲容量、儲存容量、網(wǎng)絡(luò)帶寬容量等的組合來測量。在一些實(shí)施方案中,PES供應(yīng)商105可提供預(yù)配置的計(jì)算節(jié)點(diǎn),其中每個(gè)預(yù)配置的計(jì)算節(jié)點(diǎn)均具有相等或者說是類似量的可用于代表用戶來執(zhí)行程序的資源,而在其它實(shí)施方案中,PES供應(yīng)商105可提供各種不同計(jì)算節(jié)點(diǎn)的選擇,用戶可從中選擇以代表該用戶來執(zhí)行程序,例如其中每項(xiàng)選擇均具有不同量和/或類型的計(jì)算資源(例如,處理單元的尺寸、速度和/或類型;處理單元的數(shù)量;內(nèi)存量和/或存儲量;平臺配置,諸如32位或64位;等)。
[0028]在該圖示實(shí)施方案中,程序執(zhí)行服務(wù)提供用于管理多個(gè)用戶中每一者的多組一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)120的功能。如其它地方更詳細(xì)地討論,所述各個(gè)用戶可與PESSM模塊110進(jìn)行交互,以指定開始使用多組計(jì)算節(jié)點(diǎn)來代表用戶執(zhí)行程序的請求。在各個(gè)實(shí)施方案中,可在代表用戶在一組計(jì)算節(jié)點(diǎn)上執(zhí)行一個(gè)或多個(gè)程序的請求時(shí)和/或在一個(gè)或多個(gè)其它時(shí)間(例如當(dāng)用戶最初注冊和/或預(yù)訂使用PES的服務(wù)時(shí))指定此類資源。在一些實(shí)施方案中,PESSM模塊110可向一個(gè)或多個(gè)用戶提供預(yù)訂和/或注冊服務(wù),使得用戶可指定與代表用戶來執(zhí)行的一個(gè)或多個(gè)程序相關(guān)的信息(例如,一個(gè)或多個(gè)程序的程序、源代碼、可尋址位置等)、帳號信息(例如,用戶名、計(jì)費(fèi)信息等)、使用條款等。在一些實(shí)施方案中,在用戶與PESSM模塊110進(jìn)行交互以預(yù)訂和/或注冊來獲得服務(wù)之后,可向該用戶發(fā)布與該用戶相關(guān)且將結(jié)合代表用戶的執(zhí)行程序來使用的一個(gè)或多個(gè)標(biāo)識符(例如,鍵碼、令牌、用戶名等)。在其它實(shí)施方案中,可提供與PESSM模塊110(未示出)不同的模塊,以進(jìn)行與PES的預(yù)訂和/或注冊服務(wù)相關(guān)的各種操作。
[0029]從用戶接收使用一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)的請求之后,PESSMl模塊110可確定是否存在足夠數(shù)量的計(jì)算節(jié)點(diǎn)120 (其具有滿足所述請求的可用資源),并且如果如此,PESSMl模塊110可代表用戶在適量的計(jì)算節(jié)點(diǎn)上開始執(zhí)行所述請求的一個(gè)或多個(gè)程序。在用戶預(yù)定將來在一組一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)上執(zhí)行一個(gè)或多個(gè)程序的請求的情況中,PESSM模塊110可嘗試立即保留適量計(jì)算節(jié)點(diǎn)以在一個(gè)或多個(gè)將來時(shí)間執(zhí)行一個(gè)或多個(gè)程序,和/或可延遲將所述計(jì)算節(jié)點(diǎn)用于直到稍后的時(shí)間(例如,諸如當(dāng)所述一個(gè)或多個(gè)將來時(shí)間發(fā)生時(shí))才執(zhí)行的決定。在圖示實(shí)施方案中,如果PESSM模塊110不能針對用戶請求來分配計(jì)算節(jié)點(diǎn),則所述請求可能失效,使得程序無法執(zhí)行。在這些情況中,用戶可再次提交已失效的請求,以稍后執(zhí)行。如前所述,在一些實(shí)施方案中,例如根據(jù)所用計(jì)算節(jié)點(diǎn)的數(shù)量、所用計(jì)算節(jié)點(diǎn)的類型、使用計(jì)算節(jié)點(diǎn)的持續(xù)時(shí)間、計(jì)算節(jié)點(diǎn)進(jìn)行的特定操作(例如,數(shù)據(jù)傳送和/或儲存)等,可向用戶收取與使用PES相關(guān)的各種費(fèi)用。
[0030]在提供一組一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)用于代表用戶來執(zhí)行一個(gè)或多個(gè)程序之后,可以各種方式來管理所述計(jì)算節(jié)點(diǎn)組。例如,如前所述,PESCMM模塊115可監(jiān)測該組計(jì)算節(jié)點(diǎn),例如以確定一些或所有計(jì)算節(jié)點(diǎn)的性能特性,包括實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量或由該組計(jì)算節(jié)點(diǎn)提供的實(shí)際程序執(zhí)行能力的其它度量。如果(例如)一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)失效或者說是變得不可用,則可改變該組的實(shí)際程序執(zhí)行能力,并且在至少一些實(shí)施方案中,模塊115可進(jìn)行各種操作來保持所述計(jì)算節(jié)點(diǎn)組在這些情況下的程序執(zhí)行能力(例如,通過向該組添加替代計(jì)算節(jié)點(diǎn)以取代不可用的計(jì)算節(jié)點(diǎn))。另外,模塊115可使用關(guān)于所述計(jì)算節(jié)點(diǎn)組的經(jīng)確定的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量的信息,以例如在檢測實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量發(fā)生變化時(shí)、定期地等更新所述計(jì)算節(jié)點(diǎn)組的正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量。
[0031]另外,PESSM模塊110也可有助于以各種方式來管理所述計(jì)算節(jié)點(diǎn)組。例如,如前所述,與該組相關(guān)的用戶可具有先前指定的一個(gè)或多個(gè)數(shù)量修改觸發(fā)器,其指定將向該組做出的計(jì)算節(jié)點(diǎn)數(shù)量變化的類型(如果滿足各個(gè)指定標(biāo)準(zhǔn))。此外,在至少一些實(shí)施方案中,與該組相關(guān)的用戶可在各個(gè)時(shí)間動(dòng)態(tài)指定對其相關(guān)計(jì)算節(jié)點(diǎn)組的操作變化,包括對該組計(jì)算節(jié)點(diǎn)的數(shù)量變化。作為管理所述計(jì)算節(jié)點(diǎn)組的一部分,模塊110可追蹤所述計(jì)算節(jié)點(diǎn)組的所需計(jì)算節(jié)點(diǎn)數(shù)量,并且定期將所述計(jì)算節(jié)點(diǎn)組的正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量與所述計(jì)算節(jié)點(diǎn)組的所需計(jì)算節(jié)點(diǎn)數(shù)量進(jìn)行協(xié)調(diào)。例如根據(jù)一個(gè)或多個(gè)用戶指定的預(yù)定義觸發(fā)器的滿足情況和/或一個(gè)或多個(gè)動(dòng)態(tài)指定的用戶指令,此定期協(xié)調(diào)可包括追蹤和聚合在聚合時(shí)段期間發(fā)生的計(jì)算節(jié)點(diǎn)數(shù)量的經(jīng)請求的修改。在該時(shí)段結(jié)束時(shí),模塊110然后可確定是否和如何進(jìn)行聚合的計(jì)算節(jié)點(diǎn)數(shù)量修改,并且可根據(jù)聚合的計(jì)算節(jié)點(diǎn)數(shù)量修改來更新所需計(jì)算節(jié)點(diǎn)數(shù)量。然后,模塊110可通過啟動(dòng)聚合的計(jì)算節(jié)點(diǎn)數(shù)量修改,以及更新正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量以匹配將由聚合的計(jì)算節(jié)點(diǎn)數(shù)量修改引起的新的所需計(jì)算節(jié)點(diǎn)數(shù)量來對所需和正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量進(jìn)行協(xié)調(diào)。此外,在當(dāng)前的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量在該時(shí)段結(jié)束時(shí)不同于正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量的情況中,還可根據(jù)實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量對所需和正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量進(jìn)行協(xié)調(diào),使得進(jìn)行開始聚合的計(jì)算節(jié)點(diǎn)數(shù)量修改,以將當(dāng)前的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量更新為當(dāng)前所需的計(jì)算節(jié)點(diǎn)數(shù)量。模塊110還可反復(fù)地,諸如每次經(jīng)過指定時(shí)段時(shí)、每次已經(jīng)請求了最小量的計(jì)算節(jié)點(diǎn)數(shù)量變化時(shí)等進(jìn)行此類定期協(xié)調(diào)活動(dòng)。
[0032]此外,PESSM模塊110可進(jìn)行其它活動(dòng),以追蹤針對特定計(jì)算節(jié)點(diǎn)組發(fā)生的事件和特定程序執(zhí)行能力變化。至少一些程序執(zhí)行能力變化信息可與由模塊110引發(fā)以作為定期或反復(fù)協(xié)調(diào)活動(dòng)的一部分的程序執(zhí)行能力動(dòng)態(tài)修改相對應(yīng),并且任選地在某些情況下還可包括由PESCMM模塊115進(jìn)行的監(jiān)測中的程序執(zhí)行能力變化信息(例如,以對應(yīng)于失效或者說是變得不可用的計(jì)算節(jié)點(diǎn),或計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力的其它類型的所檢測變化)。模塊110還可例如根據(jù)進(jìn)行的定期或其它反復(fù)協(xié)調(diào)活動(dòng)在各個(gè)時(shí)間(或相反在其它時(shí)間)進(jìn)行自動(dòng)確定,以將特定能力變化的因果律或其它責(zé)任歸因于特定事件。
[0033]雖然針對向各個(gè)用戶提供各類功能的PES描述了圖1A的上述示例性實(shí)施方案,但應(yīng)當(dāng)理解到可以存在各種其它實(shí)施方案。例如,在至少一些實(shí)施方案中,單個(gè)計(jì)算節(jié)點(diǎn)120的未使用部分(例如,未使用的處理單元時(shí)鐘周期、內(nèi)存的未使用部分等)可供一個(gè)或多個(gè)用戶使用,使得第一用戶的一個(gè)或多個(gè)程序可與一個(gè)或多個(gè)其他用戶的那些程序共享單個(gè)計(jì)算節(jié)點(diǎn)的資源。另外,雖然針對程序執(zhí)行服務(wù)和程序執(zhí)行能力描述了一些實(shí)施方案,但應(yīng)當(dāng)理解到所述技術(shù)可用于管理各個(gè)其它組計(jì)算節(jié)點(diǎn)或其它類型的計(jì)算相關(guān)資源的使用權(quán)??山?jīng)管理以供多個(gè)用戶使用的其它類型的計(jì)算相關(guān)資源的實(shí)例的非排他性清單項(xiàng)可包括如下內(nèi)容:持久性數(shù)據(jù)存儲能力(例如,在非易失性存儲設(shè)備,諸如硬盤驅(qū)動(dòng)器上);臨時(shí)數(shù)據(jù)存儲能力(例如,在易失性存儲器,諸如RAM上);消息排隊(duì)和/或傳遞能力;其它類型的通信能力(例如,網(wǎng)絡(luò)插座、虛擬通信電路等);數(shù)據(jù)庫管理能力;專有帶寬或其它網(wǎng)絡(luò)相關(guān)資源;輸入裝置能力;輸出裝置能力;CPU周期或其它指令執(zhí)行能力;等。
[0034]圖1B示出了其中可采用包括多個(gè)物理計(jì)算系統(tǒng)的一個(gè)或多個(gè)數(shù)據(jù)中心來提供程序執(zhí)行服務(wù)的實(shí)施方案。具體地講,圖1B為示出其中程序執(zhí)行服務(wù)的PESSM模塊180和PESCMM模塊160采用所述一個(gè)或多個(gè)數(shù)據(jù)中心處的各個(gè)計(jì)算系統(tǒng)來管理代表用戶的一個(gè)或多個(gè)程序的執(zhí)行的示例性實(shí)施方案的網(wǎng)絡(luò)圖。圖示實(shí)例包括PES使用的數(shù)據(jù)中心170,數(shù)據(jù)中心170連接至數(shù)據(jù)中心170外部的因特網(wǎng)196。在該實(shí)例中,因特網(wǎng)196提供訪問各種外部計(jì)算系統(tǒng)的權(quán)利,諸如經(jīng)由專用網(wǎng)194的計(jì)算系統(tǒng)190以及可直接訪問的計(jì)算系統(tǒng)192。專用網(wǎng)194可為例如從專用網(wǎng)194外部的非特權(quán)計(jì)算系統(tǒng)完全或部分地不可訪問的企業(yè)網(wǎng)。計(jì)算系統(tǒng)192可包括例如直接連接至因特網(wǎng)(例如,經(jīng)由電話或電纜調(diào)制解調(diào)器、數(shù)字用戶線路("DSL")等)的家用計(jì)算系統(tǒng)。另外,示出了經(jīng)由因特網(wǎng)196連接至數(shù)據(jù)中心170的一個(gè)或多個(gè)其它數(shù)據(jù)中心198,例如數(shù)據(jù)中心198在至少一些實(shí)施方案中可被PES進(jìn)一步使用。
[0035]示例性數(shù)據(jù)中心170包括許多物理主機(jī)計(jì)算系統(tǒng)175、物理計(jì)算系統(tǒng)182、PES的PESSM模塊180和PES的PESCMM模塊160。在該實(shí)例中,主機(jī)計(jì)算系統(tǒng)175各自提供多個(gè)虛擬機(jī),并且具有管理那些虛擬機(jī)的虛擬機(jī)("VM")管理器組件(例如,管理程序或其它虛擬機(jī)監(jiān)視器),例如針對具有多個(gè)虛擬機(jī)177a和VM管理器組件179a的主機(jī)計(jì)算系統(tǒng)175a所示出。其它主機(jī)計(jì)算系統(tǒng)175b可同樣地包括此類組件,為了簡潔起見,此處未示出那些其它組件,并且一些或所有計(jì)算系統(tǒng)182可任選地同樣具有一個(gè)或多個(gè)此類虛擬機(jī)和/或VM管理器組件(未示出)。由主機(jī)計(jì)算系統(tǒng)提供的虛擬機(jī)中的每個(gè)均可作為不同的計(jì)算節(jié)點(diǎn)用于PES中,例如以使主機(jī)計(jì)算系統(tǒng)上的第一虛擬機(jī)計(jì)算節(jié)點(diǎn)成為第一用戶的第一計(jì)算節(jié)點(diǎn)組的一部分,并且使所述相同主機(jī)計(jì)算系統(tǒng)上的第二虛擬機(jī)計(jì)算節(jié)點(diǎn)成為第二用戶的第二計(jì)算節(jié)點(diǎn)組的一部分?;蛘?,在其它實(shí)施方案中,所述數(shù)據(jù)中心處的物理主機(jī)計(jì)算系統(tǒng)中的一些或全部可能不提供任何虛擬機(jī),例如相反直接作為代表PES的最終消費(fèi)用戶來執(zhí)行一個(gè)或多個(gè)程序的計(jì)算節(jié)點(diǎn)。此外,在一些實(shí)施方案中,各個(gè)計(jì)算系統(tǒng)175和182均可具有不同的能力,可具有不同的相關(guān)使用費(fèi),可支持不同類型的用戶程序(例如,不同尺寸的虛擬機(jī)的軟件映像例子,或具有不同類型的資源標(biāo)準(zhǔn)和/或計(jì)算資源使用率,諸如不同模式的I/O和存儲器存取以及網(wǎng)絡(luò)使用率的程序)等。如果如此,則可根據(jù)一個(gè)或多個(gè)此類因素對特定用戶和/或其程序進(jìn)行分組(例如自動(dòng)地),這些因素還可用作選擇計(jì)算系統(tǒng)來執(zhí)行特定程序的約束條件和/或首選項(xiàng)。示例性數(shù)據(jù)中心170還包括可包括多個(gè)聯(lián)網(wǎng)裝置(未示出)(諸如轉(zhuǎn)換器、邊緣路由器和核心路由器)的內(nèi)部網(wǎng)絡(luò)172,以及連接至內(nèi)部網(wǎng)絡(luò)172的計(jì)算系統(tǒng)175和182、PESCMM模塊160和PESSM模塊180。各個(gè)主機(jī)計(jì)算系統(tǒng)175和其它計(jì)算系統(tǒng)182均可以各種方式來設(shè)置,包括通過將其分組在共享共用底板或其它互連介質(zhì)的機(jī)架中。此外,可采用一個(gè)或多個(gè)計(jì)算系統(tǒng)(未示出)來執(zhí)行模塊160和180中的每個(gè)。
[0036]圖示的PESSM模塊180和PESCMM模塊160實(shí)施所述技術(shù)中的至少一些,以便管理在采用計(jì)算系統(tǒng)175和182來提供的多組計(jì)算節(jié)點(diǎn)上執(zhí)行程序,如其它地方更詳細(xì)地描述。當(dāng)選擇特定計(jì)算節(jié)點(diǎn)來執(zhí)行用戶的一個(gè)或多個(gè)程序時(shí),在一些實(shí)施方案中,PESSM模塊可通過與VM管理器組件或控制所述所選計(jì)算節(jié)點(diǎn)的程序的執(zhí)行的其它管理器組件進(jìn)行交互來開始執(zhí)行那些程序,或者可在所選計(jì)算節(jié)點(diǎn)上直接執(zhí)行程序。PES的用戶可使用各種計(jì)算系統(tǒng),諸如計(jì)算系統(tǒng)190或192,或其它數(shù)據(jù)中心198之一處的計(jì)算系統(tǒng)以與PESSM模塊180進(jìn)行交互。
[0037]應(yīng)當(dāng)理解到,圖1B的數(shù)據(jù)中心僅提供用于說明性的目的,并且在其它實(shí)施方案中可以其它方式來提供程序執(zhí)行服務(wù)和其它軟件執(zhí)行服務(wù)。例如,相反地可采用數(shù)據(jù)中心170外部的一個(gè)或多個(gè)其它計(jì)算系統(tǒng),諸如計(jì)算系統(tǒng)190、192或者數(shù)據(jù)中心198處的計(jì)算系統(tǒng)來提供PESSM模塊180和/或PESCMM模塊160。
[0038]圖2A示出了對提供用于執(zhí)行示例性用戶的一個(gè)或多個(gè)程序的一組示例性計(jì)算節(jié)點(diǎn)進(jìn)行管理的技術(shù)的實(shí)例,諸如可由PESSM模塊和/或PESCMM模塊的實(shí)施方案自動(dòng)實(shí)施的技術(shù)。具體地講,在該實(shí)例中,特定用戶(以下簡稱用戶UUU且在圖2A中未示出)已開始使用一組多個(gè)計(jì)算節(jié)點(diǎn)以代表該用戶各自執(zhí)行所指示的程序的復(fù)本,例如以用作替代計(jì)算節(jié)點(diǎn)來處理由所述執(zhí)行程序提供的服務(wù)所接收的請求(例如,以便平衡該服務(wù)在整個(gè)該組的多個(gè)計(jì)算節(jié)點(diǎn)中的計(jì)算負(fù)荷)。如時(shí)間線坐標(biāo)圖210中所示出,用戶在時(shí)間Tl已請求提供計(jì)算節(jié)點(diǎn)組,并且已為該組的8個(gè)計(jì)算節(jié)點(diǎn)指定初始所需計(jì)算節(jié)點(diǎn)數(shù)量215a。信息250對各個(gè)用戶定義的觸發(fā)器指示,用戶已在例如初始請求時(shí)向計(jì)算節(jié)點(diǎn)組指定。另外,時(shí)間線坐標(biāo)圖205示出了關(guān)于將被追蹤用于計(jì)算節(jié)點(diǎn)組且將用于確定觸發(fā)器250是否被滿足的性能特性的兩種實(shí)例類型的信息,所述信息在該實(shí)例中包括計(jì)算節(jié)點(diǎn)組的CPU總平均利用率205a和計(jì)算節(jié)點(diǎn)組的網(wǎng)絡(luò)帶寬總平均利用率205b。
[0039]響應(yīng)于與開始提供計(jì)算節(jié)點(diǎn)組的所接收的用戶請求相對應(yīng)的時(shí)間Tl時(shí)的事件El,示例性PES (未示出)根據(jù)初始所需的計(jì)算節(jié)點(diǎn)數(shù)量向用戶啟動(dòng)最初包括八個(gè)計(jì)算節(jié)點(diǎn)的計(jì)算節(jié)點(diǎn)組。另外,向八個(gè)計(jì)算節(jié)點(diǎn)同樣地設(shè)置計(jì)算節(jié)點(diǎn)組的正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量225。然而,如時(shí)間線坐標(biāo)圖210中所示,所述八個(gè)計(jì)算節(jié)點(diǎn)實(shí)際上并未立即可用,因?yàn)樾枰欢螘r(shí)間來提供這些計(jì)算節(jié)點(diǎn)且使其可用作計(jì)算節(jié)點(diǎn)組的一部分,包括通過PES或用戶來使程序復(fù)本在這些計(jì)算節(jié)點(diǎn)中的每個(gè)上執(zhí)行。具體地講,在經(jīng)過時(shí)間Tl之后的初始時(shí)間后,計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力發(fā)生變化C1255,該變化在時(shí)間Tl時(shí)開始,在大約時(shí)間T2時(shí)結(jié)束,并且與可用的八個(gè)計(jì)算節(jié)點(diǎn)中的前四個(gè)相對應(yīng)。因此,追蹤用于計(jì)算節(jié)點(diǎn)組的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量220在所述時(shí)間從O增加至4。另外,同時(shí)或此后不久,時(shí)間線坐標(biāo)圖205表明,根據(jù)該組中可用計(jì)算節(jié)點(diǎn)的操作而開始追蹤C(jī)PU總平均利用率205a和網(wǎng)絡(luò)帶寬總平均利用率205b的性能特性。
[0040]在該實(shí)例中,PES(或其它第三方系統(tǒng))以大致連續(xù)的方式對該組計(jì)算節(jié)點(diǎn)進(jìn)行監(jiān)測,使得以最新的方式來保持性能特性205a和205b以及實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量220的信息。然而,在該實(shí)例中,僅定期對計(jì)算節(jié)點(diǎn)組的計(jì)算節(jié)點(diǎn)數(shù)量進(jìn)行至少某些類型的動(dòng)態(tài)修改,例如以在聚合時(shí)段260期間聚合至少某些類型的經(jīng)請求的修改,并且以在分別在所需、實(shí)際和正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量215、220和225之間的聚合時(shí)段結(jié)束時(shí)進(jìn)行協(xié)調(diào)活動(dòng)。因此,在第一聚合時(shí)段260a期間,計(jì)算節(jié)點(diǎn)組的計(jì)算節(jié)點(diǎn)數(shù)量發(fā)生額外變化255。例如,在使前四個(gè)計(jì)算節(jié)點(diǎn)可用的變化Cl之后,在大約時(shí)間T3時(shí)結(jié)束的后續(xù)變化C2與可用作計(jì)算節(jié)點(diǎn)組的一部分的三個(gè)附加計(jì)算節(jié)點(diǎn)相對應(yīng)。
[0041]然而,在該實(shí)例中,例如由于最初選擇的計(jì)算節(jié)點(diǎn)存在的硬件問題(或相反在其它情況中,由于在時(shí)間Tl時(shí)僅7個(gè)計(jì)算節(jié)點(diǎn)可用于計(jì)算節(jié)點(diǎn)組中,其中一旦第八個(gè)計(jì)算節(jié)點(diǎn)隨后可用,便將其動(dòng)態(tài)添加),最初請求的第八個(gè)計(jì)算節(jié)點(diǎn)不能及時(shí)可用。因此,示出了事件E2265發(fā)生在變化C2之后不久(在大約時(shí)間T4時(shí)),其中PES終止原來的第八個(gè)計(jì)算節(jié)點(diǎn)(如果需要)(例如,如果其被凍結(jié)在中間狀態(tài)下),并且開始提供第八個(gè)替代計(jì)算節(jié)點(diǎn)。如參照圖2B更詳細(xì)地討論,在該實(shí)例中,PES已引起與添加初始的第八個(gè)計(jì)算節(jié)點(diǎn)相對應(yīng)的時(shí)間Tl時(shí)的變化ClOa,但該變化ClOa未能通過已添加且可用的實(shí)際第八個(gè)計(jì)算節(jié)點(diǎn)來完成,因此變化ClOa未在時(shí)間線坐標(biāo)圖210的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量220中體現(xiàn),也未以其它方式在圖2A中示出。相反,在該實(shí)例中,事件E2被分成同時(shí)或接近同時(shí)發(fā)生的兩個(gè)不同的事件E2a和E2b (未單獨(dú)示出)。具體地講,在該實(shí)例中,PES記錄與未能正確初始化(例如在指定期限內(nèi))的第八個(gè)計(jì)算節(jié)點(diǎn)相對應(yīng)的時(shí)間T4時(shí)的事件E2a,并且PES自動(dòng)引發(fā)時(shí)間T4時(shí)的變化ClOb (未示出)以終止未能正確初始化的初始的第八個(gè)計(jì)算節(jié)點(diǎn)。此外,在該實(shí)例中,初始的第八個(gè)計(jì)算節(jié)點(diǎn)由于事件E2a而發(fā)生的實(shí)際終止本身被視為時(shí)間T4時(shí)的個(gè)別事件E2b,個(gè)別事件E2b自動(dòng)引發(fā)立即提供第八個(gè)替代計(jì)算節(jié)點(diǎn)。使得第一事件的變化引起的結(jié)果本身可被視為引起另一種變化的第二事件的此類鏈接事件和相應(yīng)變化結(jié)果在追蹤事件和相應(yīng)變化結(jié)果之間的相互關(guān)系中可提供各種益處,如其它地方更詳細(xì)地討論。隨后,根據(jù)事件E2b在時(shí)間T4時(shí)開始,并且在時(shí)間T5時(shí)結(jié)束的變化C3255使實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量從七個(gè)變?yōu)榘藗€(gè),因?yàn)榈诎藗€(gè)替代計(jì)算節(jié)點(diǎn)可用作計(jì)算節(jié)點(diǎn)組的一部分。
[0042]在計(jì)算節(jié)點(diǎn)組的八個(gè)計(jì)算節(jié)點(diǎn)以預(yù)期的方式操作聚合時(shí)段260a的一部分之后,在大約時(shí)間T7,實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量220發(fā)生另一種變化C4255,該變化由失效或者說是變得不可用的計(jì)算節(jié)點(diǎn)中的一個(gè)促使。相應(yīng)事件E3265與變化C4大約同時(shí)發(fā)生,其中PES終止不可用計(jì)算節(jié)點(diǎn)(如果需要),并且任選地自動(dòng)開始提供替代計(jì)算節(jié)點(diǎn)。具體地講,以類似于此前針對事件E2所討論的方式,事件E3在該實(shí)例中被分成同時(shí)或接近同時(shí)發(fā)生的兩個(gè)不同的事件E3a和E3b (未單獨(dú)示出)。因此,PES在該實(shí)例中記錄與經(jīng)檢測已變得不可用的計(jì)算節(jié)點(diǎn)相對應(yīng)的時(shí)間T7時(shí)的事件E3a,并且PES自動(dòng)引發(fā)時(shí)間T7時(shí)的活動(dòng)以終止不可用計(jì)算節(jié)點(diǎn),例如以直接引起變化C4。此外,在該實(shí)例中,不可用計(jì)算節(jié)點(diǎn)由于事件E3a而發(fā)生的終止本身被視為在大約時(shí)間T7時(shí)自動(dòng)引發(fā)以立即提供替代計(jì)算節(jié)點(diǎn)的個(gè)別事件E3b,但在其它實(shí)施方案和情況中,替代計(jì)算節(jié)點(diǎn)的任何這種提供相反地將被延遲直到在聚合時(shí)段260a結(jié)束時(shí)進(jìn)行的協(xié)調(diào)活動(dòng)Hl。隨后,在該實(shí)例中,變化C5255在大約時(shí)間T9時(shí)結(jié)束,該變化將實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量恢復(fù)至八個(gè),這由事件E3b直接引起,因?yàn)樗鎏娲?jì)算節(jié)點(diǎn)可用作計(jì)算節(jié)點(diǎn)組的一部分。在該實(shí)例中,暫時(shí)不更新正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量225以對應(yīng)于變化C4和C5,也不更新以對應(yīng)于先前的變化C1-C3,但在其它實(shí)施方案中,可更新正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量225以反映一些或所有此類變化,例如以連續(xù)或反復(fù)地將正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量225保持在與所更新的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量220 —致的狀態(tài)中。在該實(shí)例中,在聚合時(shí)段260a的其余時(shí)間內(nèi)未發(fā)生其它計(jì)算節(jié)點(diǎn)能力可用性變化或事件,包括所有指定的觸發(fā)器250不被滿足,并且未接收動(dòng)態(tài)指定的用戶指令。因此,在所述時(shí)段260a結(jié)束時(shí)的時(shí)間Tll時(shí),考慮了第一組協(xié)調(diào)活動(dòng)H1,但無需任何活動(dòng),因?yàn)楫?dāng)前所需、實(shí)際和正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量215、220和225分別在八個(gè)計(jì)算節(jié)點(diǎn)處均匹配。如果在聚合時(shí)段260a期間未進(jìn)行代替不可用計(jì)算節(jié)點(diǎn)的變化C5 (如該實(shí)例中所示),則在該聚合時(shí)段之后,該變化相反地會作為協(xié)調(diào)活動(dòng)Hl的一部分被引起,以便代替所述時(shí)間處的不可用計(jì)算節(jié)點(diǎn)(例如,結(jié)合在聚合時(shí)段260a期間請求或引起的任何其它動(dòng)態(tài)可用性變化)。
[0043]然而,在第二聚合時(shí)段260b期間,發(fā)生了其它事件。具體地講,事件E5265首先發(fā)生在大約時(shí)間T16時(shí),從而與PES做出的自動(dòng)確定相對應(yīng),即已通過提高CPU總平均利用率205a來使觸發(fā)器TR-1250a被滿足,如時(shí)間線坐標(biāo)圖205中通過CPU總平均利用率205a線上的第一個(gè)黑色橢圓所圖示。對于十二個(gè)經(jīng)請求的全部所需計(jì)算節(jié)點(diǎn)數(shù)量215c而言(或者無論當(dāng)前所需的計(jì)算節(jié)點(diǎn)數(shù)量如何,可請求將所更新的所需計(jì)算節(jié)點(diǎn)數(shù)量設(shè)置為十二個(gè)),觸發(fā)器TR-1的滿足情況引發(fā)了將所需計(jì)算節(jié)點(diǎn)數(shù)量215增加4個(gè)計(jì)算節(jié)點(diǎn)的請求。類似地,在經(jīng)過另外的額外時(shí)間之后,事件E6265接下來發(fā)生在大約時(shí)間T18時(shí),從而與確定已通過提高網(wǎng)絡(luò)帶寬總平均利用率205b來使觸發(fā)器TR-N 250c被滿足相對應(yīng),如時(shí)間線坐標(biāo)圖205中通過網(wǎng)絡(luò)帶寬總平均利用率205b線上的黑色橢圓所圖示。對于十個(gè)經(jīng)請求的全部所需計(jì)算節(jié)點(diǎn)數(shù)量215d而言(或者無論當(dāng)前所需的計(jì)算節(jié)點(diǎn)數(shù)量如何,可請求將所更新的所需計(jì)算節(jié)點(diǎn)數(shù)量設(shè)置為十個(gè)),觸發(fā)器TR-N的滿足情況引發(fā)了將所需計(jì)算節(jié)點(diǎn)數(shù)量215增加2個(gè)計(jì)算節(jié)點(diǎn)的請求。在經(jīng)過較短的額外時(shí)間之后,事件E4265發(fā)生在大約時(shí)間T19時(shí),其中對于十一個(gè)經(jīng)請求的全部所需計(jì)算節(jié)點(diǎn)數(shù)量215b而言(或者無論當(dāng)前所需的計(jì)算節(jié)點(diǎn)數(shù)量如何,可請求將所更新的所需計(jì)算節(jié)點(diǎn)數(shù)量設(shè)置為十一個(gè)),與計(jì)算節(jié)點(diǎn)組相關(guān)的用戶提供了將所需計(jì)算節(jié)點(diǎn)數(shù)量215增加3個(gè)計(jì)算節(jié)點(diǎn)的動(dòng)態(tài)指定請求??衫绺鶕?jù)注意到CPU總平均利用率205a為較高、計(jì)算節(jié)點(diǎn)組上的總計(jì)算負(fù)荷正在增加等的用戶來做出該請求。
[0044]最后,在聚合時(shí)段260b結(jié)束之前不久,額外變化C6發(fā)生在大約時(shí)間T20時(shí),該變化由失效或者說是變得不可用的該組計(jì)算節(jié)點(diǎn)中的一個(gè)促使。相應(yīng)事件E9與變化C6大約同時(shí)發(fā)生,其中PES終止不可用計(jì)算節(jié)點(diǎn)(如果需要)。在該實(shí)例中,然而PES并非立即開始提供替代計(jì)算節(jié)點(diǎn),而是決定等待直到即將進(jìn)行的第二組協(xié)調(diào)活動(dòng)H2在時(shí)間T21時(shí)開始(例如,根據(jù)時(shí)間T21之前所剩余的少量時(shí)間、根據(jù)替代計(jì)算節(jié)點(diǎn)的此類延遲提供等,所述延遲為在使用時(shí)變得不可用的任何計(jì)算節(jié)點(diǎn)的默認(rèn)動(dòng)作),因?yàn)榭赡艿氖菍⒏鶕?jù)那些協(xié)調(diào)活動(dòng)來減少計(jì)算節(jié)點(diǎn)組中計(jì)算節(jié)點(diǎn)的數(shù)量,并且無需所述替代計(jì)算節(jié)點(diǎn)。在其它實(shí)施方案中,PES相反地可立即開始提供替代計(jì)算節(jié)點(diǎn)(例如,基于在任何情況下未延遲不可用計(jì)算節(jié)點(diǎn)的替代;基于在該情況下未延遲不可用計(jì)算節(jié)點(diǎn)的替代(由于所需計(jì)算節(jié)點(diǎn)數(shù)量作為協(xié)調(diào)活動(dòng)H2的一部分而可能增加而非減少);基于在該情況下未延遲不可用計(jì)算節(jié)點(diǎn)的替代(由于其它因素,諸如用戶在稍后的時(shí)間T3之前已對八個(gè)計(jì)算節(jié)點(diǎn)進(jìn)行支付);等)。具體地講,以類似于此前針對事件E2和E3所討論的方式,事件E9被分成同時(shí)或接近同時(shí)發(fā)生的兩個(gè)不同的事件E9a和E9b (未單獨(dú)示出)。因此,PES在該實(shí)例中記錄與經(jīng)檢測已變得不可用的計(jì)算節(jié)點(diǎn)相對應(yīng)的時(shí)間T20時(shí)的事件E9a,并且PES自動(dòng)引發(fā)時(shí)間T20時(shí)的活動(dòng)以終止不可用計(jì)算節(jié)點(diǎn),例如以直接引起變化C6。此外,在該實(shí)例中,不可用計(jì)算節(jié)點(diǎn)由于事件E9a而發(fā)生的終止本身被視為大約時(shí)間T20時(shí)的個(gè)別事件E9b,該事件引發(fā)將該組的附加計(jì)算節(jié)點(diǎn)用作替代計(jì)算節(jié)點(diǎn)的請求,例如以將所需計(jì)算節(jié)點(diǎn)數(shù)量215保持在八個(gè)計(jì)算節(jié)點(diǎn)的所需數(shù)量215a。在該實(shí)例中,以類似于事件E4-E6的方式來處理事件E9b的請求,該請求被延遲直到將在當(dāng)前聚合時(shí)段260b結(jié)束時(shí)進(jìn)行的協(xié)調(diào)活動(dòng)H2,但在其它實(shí)施方案和情況中,相反地可立即開始替代計(jì)算節(jié)點(diǎn)的這種提供。另外,在該實(shí)例中,未以類似于此前針對變化C4和C5描述的方式來更新正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量225以對應(yīng)于變化C6,但在其它實(shí)施方案中,可更新正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量225以反映此類變化。
[0045]因此,在第二聚合時(shí)段260b結(jié)束時(shí),開始協(xié)調(diào)活動(dòng)H2,并且在該情況下會引起對計(jì)算節(jié)點(diǎn)組的動(dòng)態(tài)修改。具體地講,PES在該實(shí)例中將與事件E4、E5、E6和E9b的各種經(jīng)請求的所需計(jì)算節(jié)點(diǎn)數(shù)量215b、215c、215d和215a相對應(yīng)的經(jīng)請求的修改聚合,并且決定對八個(gè)先前所需計(jì)算節(jié)點(diǎn)數(shù)量215a做出聚合的動(dòng)態(tài)數(shù)量修改,同時(shí)聚合的動(dòng)態(tài)數(shù)量修改在該實(shí)例中增加了四個(gè)附加計(jì)算節(jié)點(diǎn)(例如,基于采用經(jīng)請求的數(shù)量修改中的最大值),以便對應(yīng)于十二個(gè)所更新的當(dāng)前所需計(jì)算節(jié)點(diǎn)數(shù)量215e。在其它實(shí)施方案中,可以其它方式來確定聚合的動(dòng)態(tài)數(shù)量修改,例如以選擇聚合的動(dòng)態(tài)數(shù)量修改以便根據(jù)事件E9b來保持先前所需計(jì)算節(jié)點(diǎn)數(shù)量215a (例如,從而導(dǎo)致從當(dāng)前的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量增加一個(gè)計(jì)算節(jié)點(diǎn)),以采用事件E4-E6的經(jīng)請求的數(shù)量修改中的最小值(例如,從而導(dǎo)致從當(dāng)前所需的計(jì)算節(jié)點(diǎn)數(shù)量增加兩個(gè)計(jì)算節(jié)點(diǎn)),以采用事件E4-E6的經(jīng)請求的數(shù)量修改的平均值(例如,從而導(dǎo)致從當(dāng)前所需的計(jì)算節(jié)點(diǎn)數(shù)量增加三個(gè)計(jì)算節(jié)點(diǎn)),以采用事件E4-E6的經(jīng)請求的數(shù)量修改的聚合值(例如,從而導(dǎo)致從當(dāng)前所需的計(jì)算節(jié)點(diǎn)數(shù)量增加九個(gè)計(jì)算節(jié)點(diǎn)),以采用事件E4-E6的經(jīng)請求的數(shù)量修改的最高優(yōu)先級(例如,從而導(dǎo)致從當(dāng)前所需的計(jì)算節(jié)點(diǎn)數(shù)量增加三個(gè)計(jì)算節(jié)點(diǎn),其前提是例如相比事件E5和E6的觸發(fā)器滿足情況,E4的用戶指令被視為具有較高優(yōu)先級),以采用事件E4-E6的經(jīng)請求的數(shù)量修改中第一次請求的修改或最后一次請求的修改(例如,從而導(dǎo)致從當(dāng)前所需的計(jì)算節(jié)點(diǎn)數(shù)量分別增加四個(gè)或三個(gè)計(jì)算節(jié)點(diǎn))等。在其中用戶指令事件相比觸發(fā)器滿足事件具有較高優(yōu)先級的一些實(shí)施方案和情況中(例如,如果用戶指令始終會覆蓋來自觸發(fā)器滿足事件的任何經(jīng)請求的動(dòng)態(tài)修改),PES還可防止其它觸發(fā)器滿足事件發(fā)生在接收用戶指令事件之后的聚合時(shí)段期間,例如以在該實(shí)例中忽略(或絕不確定)發(fā)生在針對事件E4來接收用戶指令之后的任何觸發(fā)器滿足事件。此外,在該實(shí)例中,在協(xié)調(diào)活動(dòng)H2時(shí),當(dāng)前實(shí)際和正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量220和225在七個(gè)和八個(gè)計(jì)算節(jié)點(diǎn)處分別不同。因此,作為協(xié)調(diào)活動(dòng)H2的一部分,PES開始向計(jì)算節(jié)點(diǎn)組提供五個(gè)附加計(jì)算節(jié)點(diǎn),以將七個(gè)當(dāng)前的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量增加至十二個(gè)新更新的所需計(jì)算節(jié)點(diǎn)數(shù)量,并且進(jìn)一步更新正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量225以符合十二個(gè)新更新的所需計(jì)算節(jié)點(diǎn)數(shù)量。因此,在該實(shí)例中,5個(gè)計(jì)算節(jié)點(diǎn)的能力可用性變化間接地由以下方式引起:根據(jù)事件E9b來代替由于變化C7而變得不可用的一個(gè)計(jì)算節(jié)點(diǎn),以及增加與來自事件E4、E5和E6的所確定的聚合數(shù)量修改相對應(yīng)的4個(gè)附加計(jì)算節(jié)點(diǎn)。
[0046]在第三聚合時(shí)段260c期間,進(jìn)一步發(fā)生其它事件和計(jì)算節(jié)點(diǎn)能力可用性變化。具體地講,變化C7在大約時(shí)間T22時(shí)結(jié)束,其中當(dāng)前可用的計(jì)算節(jié)點(diǎn)數(shù)量增加了五個(gè)至總共十二個(gè)計(jì)算節(jié)點(diǎn),以反映其可用性在時(shí)間T21時(shí)開始的五個(gè)附加計(jì)算節(jié)點(diǎn),并且實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量220由此被更新。如時(shí)間線坐標(biāo)圖205所示,CPU總平均利用率205a和網(wǎng)絡(luò)帶寬總平均利用率205b均在變化C7之后降低,其中CPU總平均利用率205a迅速下降。具體地講,在該實(shí)例中,CPU總平均利用率205a最終降至低于與觸發(fā)器250b的指定標(biāo)準(zhǔn)相對應(yīng)的20%的閾值,從而致使事件ES發(fā)生(包括確定觸發(fā)器TR-3250b已被滿足),如時(shí)間線坐標(biāo)圖205中通過CPU總平均利用率205a線上的第二個(gè)黑色橢圓所圖示。對于十個(gè)經(jīng)請求的全部所需計(jì)算節(jié)點(diǎn)數(shù)量215f而言(或者無論當(dāng)前所需的計(jì)算節(jié)點(diǎn)數(shù)量如何,可請求將所更新的所需計(jì)算節(jié)點(diǎn)數(shù)量設(shè)置為十個(gè)),觸發(fā)器的滿足情況引發(fā)了將所需計(jì)算節(jié)點(diǎn)數(shù)量215減少2個(gè)計(jì)算節(jié)點(diǎn)的請求。
[0047]最后,在聚合時(shí)段260c結(jié)束之前,額外變化C8發(fā)生在大約時(shí)間T28時(shí),該變化由失效或者說是變得不可用的該組計(jì)算節(jié)點(diǎn)中的一個(gè)促使。相應(yīng)事件ElO與變化CS大約同時(shí)發(fā)生,其中PES終止不可用計(jì)算節(jié)點(diǎn)(如果需要)。以類似于針對變化C6的方式,PES在該實(shí)例中選擇等待直到第三組協(xié)調(diào)活動(dòng)H3在時(shí)間T31時(shí)開始,而非立即開始替代不可用計(jì)算節(jié)點(diǎn)(例如,因?yàn)槭录﨓S使得可能或很可能的是,計(jì)算節(jié)點(diǎn)組中計(jì)算節(jié)點(diǎn)的所需數(shù)量此后會減少),但在其它實(shí)施方案中,PES相反地可立即開始提供替代計(jì)算節(jié)點(diǎn),具體地講,以類似于此前針對事件E2、E3和E9所述的方式,事件ElO在該實(shí)例中被分成同時(shí)或接近同時(shí)發(fā)生的兩個(gè)不同的事件ElOa和ElOb (未單獨(dú)示出)。因此,在該實(shí)例中,PES記錄與經(jīng)檢測已變得不可用的計(jì)算節(jié)點(diǎn)相對應(yīng)的時(shí)間T28時(shí)的事件ElOa,并且PES自動(dòng)引發(fā)時(shí)間T28時(shí)的活動(dòng)以終止不可用計(jì)算節(jié)點(diǎn),例如以直接引起變化CS。此外,在該實(shí)例中,不可用計(jì)算節(jié)點(diǎn)由于事件ElOa而發(fā)生的終止本身被視為大約時(shí)間T28時(shí)的個(gè)別事件ElOb,該事件引發(fā)將該組的附加計(jì)算節(jié)點(diǎn)用作替代計(jì)算節(jié)點(diǎn)的請求,例如以將所需計(jì)算節(jié)點(diǎn)數(shù)量215保持在十二個(gè)計(jì)算節(jié)點(diǎn)的所需數(shù)量215e。在該實(shí)例中,以類似于事件E9b的方式來處理事件ElOb的請求,該請求被延遲直到將在當(dāng)前聚合時(shí)段260c結(jié)束時(shí)進(jìn)行的協(xié)調(diào)活動(dòng)H3,但在其它實(shí)施方案和情況中,相反地可立即開始替代計(jì)算節(jié)點(diǎn)的這種提供。另外,在該實(shí)例中,未以類似于此前針對變化C4-C6所述的方式來更新正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量225以對應(yīng)于變化C8,但在其它實(shí)施方案中,可更新正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量225以反映此類變化。
[0048]因此,在第三聚合時(shí)段260c結(jié)束時(shí),開始協(xié)調(diào)活動(dòng)H3,并且會導(dǎo)致計(jì)算節(jié)點(diǎn)組發(fā)生變化。具體地講,PES在該實(shí)例中將與已經(jīng)發(fā)生在時(shí)段260b期間的事件(在該實(shí)例中僅為事件ES和ElOb)相對應(yīng)的經(jīng)請求的修改聚合,并且決定對十二個(gè)先前所需計(jì)算節(jié)點(diǎn)數(shù)量215e做出聚合的動(dòng)態(tài)數(shù)量修改,所述修改在該實(shí)例中減少了兩個(gè)計(jì)算節(jié)點(diǎn),以便對應(yīng)于十個(gè)所更新的當(dāng)前所需計(jì)算節(jié)點(diǎn)數(shù)量215g。此外,在協(xié)調(diào)活動(dòng)H3時(shí),當(dāng)前實(shí)際和正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量220和225在十一個(gè)和十二個(gè)計(jì)算節(jié)點(diǎn)處分別不同。因此,作為協(xié)調(diào)活動(dòng)H3的一部分,PES按照十一個(gè)計(jì)算節(jié)點(diǎn)的當(dāng)前實(shí)際計(jì)算節(jié)點(diǎn)能力來引發(fā)十二個(gè)當(dāng)前正式的計(jì)算節(jié)點(diǎn)數(shù)量發(fā)生變化,以達(dá)到十個(gè)當(dāng)前所需的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量,以便將現(xiàn)有計(jì)算節(jié)點(diǎn)之一從計(jì)算節(jié)點(diǎn)組中移除(例如,以任選地在完成已開始的一些或所有動(dòng)作之后終止在已移除的計(jì)算節(jié)點(diǎn)上執(zhí)行程序,并且以使該計(jì)算節(jié)點(diǎn)可供其他用戶將來使用)。因此,在該實(shí)例中,在時(shí)間T31時(shí)將現(xiàn)有計(jì)算節(jié)點(diǎn)之一移除的能力可用性變化間接地由以下方式引起:終止關(guān)于事件ElOb的一組計(jì)算節(jié)點(diǎn),以及請求減少與事件E8相對應(yīng)的2個(gè)計(jì)算節(jié)點(diǎn)。PES進(jìn)一步更新正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量225以符合十個(gè)新更新的所需計(jì)算節(jié)點(diǎn)數(shù)量。在時(shí)間T31之后不久,最終變化C9在大約時(shí)間T32時(shí)結(jié)束,其中當(dāng)前可用的計(jì)算節(jié)點(diǎn)數(shù)量減少了一個(gè)至總共十個(gè)計(jì)算節(jié)點(diǎn),以反映在時(shí)間T31時(shí)開始從計(jì)算節(jié)點(diǎn)組中移除的計(jì)算節(jié)點(diǎn),并且實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量220由此被更新,在其它實(shí)施方案中,在決定做出所述變化時(shí),變化C9可基本上立即發(fā)生在時(shí)間T31,例如其前提是立即將待移除的計(jì)算節(jié)點(diǎn)從計(jì)算節(jié)點(diǎn)組的其它活動(dòng)中退出,甚至在已移除的計(jì)算節(jié)點(diǎn)暫時(shí)執(zhí)行且可用于繼續(xù)進(jìn)行操作時(shí)。
[0049]另外,雖然在該實(shí)例中所示出的協(xié)調(diào)活動(dòng)H1、H2和H3發(fā)生在單個(gè)時(shí)間點(diǎn),但應(yīng)當(dāng)理解到一些或所有協(xié)調(diào)活動(dòng)可實(shí)際上發(fā)生在一段時(shí)間內(nèi),并且還可具有持續(xù)一段時(shí)間的其它效果。例如,在至少一些實(shí)施方案中,由PES引發(fā)的對計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力的一些或所有變化可產(chǎn)生可能不允許至少一些其它類型的事件或變化的臨時(shí)鎖定期??梢鸫随i定的PES-指示的程序執(zhí)行能力變化可包括例如作為協(xié)調(diào)活動(dòng)的一部分來引起的程序執(zhí)行能力增加和/或降低(例如,添加新計(jì)算節(jié)點(diǎn)、移除現(xiàn)有計(jì)算節(jié)點(diǎn)等),和/或響應(yīng)于PES決定(例如,計(jì)算節(jié)點(diǎn)失效、接收用戶指令、用戶指定的觸發(fā)器的滿足情況等)而立即引發(fā)的程序執(zhí)行能力變化。此類鎖定可具有各種類型的持續(xù)時(shí)間(例如,直至指定的結(jié)果或發(fā)生,例如直到所添加的計(jì)算節(jié)點(diǎn)已變得可用;指定的持續(xù)時(shí)間,諸如所添加的計(jì)算節(jié)點(diǎn)變得可用的平均或預(yù)期時(shí)間;等),并且在一些實(shí)施方案中可根據(jù)PES引發(fā)的變化的類型而有所不同。在此類鎖定期間,可能不允許至少某些類型的事件或變化,例如不允許在該鎖定持續(xù)時(shí)間期間用戶指定的觸發(fā)器被滿足(或通過忽略任何此類觸發(fā)器滿足情況),和/或不允許在該鎖定持續(xù)時(shí)間期間接受用戶指令(或通過忽略任何此類用戶指令)。此外,在一些實(shí)施方案中,與計(jì)算節(jié)點(diǎn)組相關(guān)的用戶可同樣地指定以與鎖定冷卻期類似的方式操作的冷卻期,諸如緊接鎖定或相反地發(fā)生在其它時(shí)間的指定時(shí)間量的冷卻期。如同鎖定,在冷卻期間,可能不允許至少某些類型的事件或變化,例如以不允許在冷卻期間用戶指定的觸發(fā)器被滿足(或通過忽略任何此類觸發(fā)器滿足情況)。應(yīng)當(dāng)理解到,在其它實(shí)施方案中,用戶和/或PES可以其它方式來控制對計(jì)算節(jié)點(diǎn)組的修改。
[0050]因此,這樣,PES操作以管理由一組計(jì)算節(jié)點(diǎn)提供給用戶的程序執(zhí)行能力,包括以根據(jù)各種情況對該計(jì)算節(jié)點(diǎn)組做出各種動(dòng)態(tài)修改。應(yīng)當(dāng)理解到,圖2A中示出的事件和變化僅提供用于進(jìn)行示意性的目的,并且PES的所述實(shí)際事件、變化和其它操作在其它實(shí)施方案和情況中可能不同。
[0051]圖2B示出了用于將因果關(guān)系信息自動(dòng)歸因于此前參照圖2A所討論的計(jì)算節(jié)點(diǎn)數(shù)量動(dòng)態(tài)修改的技術(shù)的實(shí)例,諸如可由PESSM模塊的實(shí)施方案自動(dòng)進(jìn)行的技術(shù)。具體地講,圖2B示出了儲存與圖2A所示信息中的一些相對應(yīng)的信息的兩個(gè)實(shí)例數(shù)據(jù)庫表數(shù)據(jù)結(jié)構(gòu),其中圖2B的實(shí)例表280儲存與圖2A的示例性計(jì)算節(jié)點(diǎn)組(圖2B中稱為“第I組”)發(fā)生的示例性計(jì)算節(jié)點(diǎn)能力可用性變化有關(guān)的各種信息,并且圖2B的實(shí)例表290儲存與圖2A的示例性計(jì)算節(jié)點(diǎn)組(第I組)發(fā)生的示例性事件有關(guān)的各種信息。
[0052]實(shí)例表280包括各自對應(yīng)于參照圖2A所討論的示例性變化Cl-ClO中之一的各行或項(xiàng)285a-285k,其中示出了各行的各欄或列280a_280x。具體地講,在該實(shí)例中,各行包括唯一標(biāo)識符("ID" ) 280a,與變化相對應(yīng)的適用計(jì)算節(jié)點(diǎn)組的ID 280b、程序執(zhí)行能力變化的類型280c、程序執(zhí)行能力變化的預(yù)期結(jié)果的指示280d、關(guān)于變化的各種詳情280e、變化的開始和結(jié)束時(shí)間280f和280g、發(fā)生變化或者說是與變化相關(guān)的聚合時(shí)段280h (在該實(shí)例中為基于在聚合時(shí)段結(jié)束時(shí)進(jìn)行的協(xié)調(diào)活動(dòng)所提及的聚合時(shí)段)、變化-事件關(guān)結(jié)ID280x和任選的各種其它信息。作為一個(gè)示例性實(shí)例,行285a對應(yīng)于第I組的變化Cl,變化Cl對應(yīng)于第I組的計(jì)算節(jié)點(diǎn)數(shù)量的變化,該變化涉及增加4個(gè)計(jì)算節(jié)點(diǎn)并且在聚合時(shí)段Hl期間于時(shí)間T02時(shí)結(jié)束。其它行包括類似的信息。
[0053]實(shí)例表290包括各自對應(yīng)于參照圖2A所述的示例性事件El-ElO中之一的各行或項(xiàng)295a-295m,其中示出了各行的各欄或列290a_290x。具體地講,在該實(shí)例中,各行包括唯一標(biāo)識符("ID" ) 290a、與事件相對應(yīng)的適用計(jì)算節(jié)點(diǎn)的ID 290b、事件的類型290c、關(guān)于事件來源的信息290d、事件的時(shí)間290e、發(fā)生事件或者說是與事件相關(guān)的聚合時(shí)段290f (在該實(shí)例中指基于在聚合時(shí)段結(jié)束時(shí)進(jìn)行的協(xié)調(diào)活動(dòng))、變化-事件關(guān)結(jié)ID 290x和任選的各種其它信息(例如,與所接收的用戶指令相關(guān)的特定用戶)。作為一個(gè)示例性實(shí)例,行295h對應(yīng)于第I組的事件E4,該事件E4對應(yīng)于在聚合時(shí)段H2期間的時(shí)間T19時(shí)所接收的用戶指令,該指令請求第I組的所需計(jì)算節(jié)點(diǎn)數(shù)量增加3個(gè)計(jì)算節(jié)點(diǎn)。其它行包括類似的信息。
[0054]在圖2B的實(shí)例中,表280和290的變化-事件關(guān)結(jié)ID信息280x和290x反映了被歸因以反映變化和事件之間的關(guān)系的因果關(guān)系信息。具體地講,在該實(shí)例中,如果表280和290中的行針對變化-事件關(guān)結(jié)ID信息280x和290x而共享共同的值,則其反映了相應(yīng)事件和變化之間的被歸因的因果關(guān)系。作為一個(gè)實(shí)例,如此前參照圖2A所討論,事件E3b對應(yīng)于提供變?yōu)椴豢捎玫挠?jì)算節(jié)點(diǎn)的替代計(jì)算節(jié)點(diǎn),所述計(jì)算節(jié)點(diǎn)可直接歸因于對應(yīng)于由此將計(jì)算節(jié)點(diǎn)添加至該組的變化C5。因此,行295e (對應(yīng)于事件E3b)和行285g (對應(yīng)于變化C5)共享共同的關(guān)結(jié)標(biāo)識符。
[0055]相反地,與在協(xié)調(diào)活動(dòng)H2期間開始的添加五個(gè)計(jì)算節(jié)點(diǎn)相對應(yīng)的變化C7不具有可直接歸因于該變化的單個(gè)事件。具體地講,事件E4、E5和E6各自請求對第I組進(jìn)行動(dòng)態(tài)修改,這些動(dòng)態(tài)修改經(jīng)聚合且共同用于促使針對變化C7而添加五個(gè)計(jì)算節(jié)點(diǎn)中的四個(gè)。因而,行295f-295h (對應(yīng)于事件E4-E6)和行285i (對應(yīng)于變化C7)均共享共同的關(guān)結(jié)標(biāo)識符。此外,在圖2A的實(shí)例中,被添加作為變化C7的一部分的五個(gè)計(jì)算節(jié)點(diǎn)之一為由于變化C6而變得不可用的計(jì)算節(jié)點(diǎn)的替代節(jié)點(diǎn),同時(shí)開始對應(yīng)于事件E9b的替代計(jì)算節(jié)點(diǎn)。因此,行295j (對應(yīng)于事件E9b)和行285i (對應(yīng)于變化C7)也共享相同的共同關(guān)結(jié)標(biāo)識符。在其它實(shí)施方案中,如果通過提供對應(yīng)于事件E4-E6的四個(gè)附加計(jì)算節(jié)點(diǎn)以單獨(dú)地在事件E9b中開始提供替代計(jì)算節(jié)點(diǎn),例如以立即代替不可用計(jì)算節(jié)點(diǎn),則所述替代計(jì)算節(jié)點(diǎn)的相應(yīng)變化將在時(shí)段260b和由此進(jìn)行的協(xié)調(diào)活動(dòng)H2結(jié)束之前發(fā)生,并且將在表280中與事件E9b和共享不同的相應(yīng)關(guān)結(jié)標(biāo)識符的所述額外變化單獨(dú)地示出。另外,雖然針對變化C7而添加的五個(gè)計(jì)算節(jié)點(diǎn)以聚合的方式在表280的單行中示出,但在其它實(shí)施方案中,所添加的每個(gè)計(jì)算節(jié)點(diǎn)均可在表280的單獨(dú)的行285中表示,并且如果如此,其各自共享相同的關(guān)結(jié)標(biāo)識符N7,該關(guān)結(jié)標(biāo)識符N7目前針對聚合變化C7的唯一行285i而示出。
[0056]此外,在該實(shí)例中,在表280中追蹤了變化,這些變化不僅對應(yīng)于基于動(dòng)態(tài)用戶指令和/或被滿足的用戶觸發(fā)器的計(jì)算節(jié)點(diǎn)數(shù)量的動(dòng)態(tài)修改,還基于計(jì)算節(jié)點(diǎn)數(shù)量的意外變化(例如,由于計(jì)算節(jié)點(diǎn)失效或者說是變得不可用)。此類變化基于監(jiān)測活動(dòng)來檢測,并且被示為觸發(fā)額外變化的事件(例如提供替代計(jì)算節(jié)點(diǎn)),但在其它實(shí)施方案中,可以其它方式對其進(jìn)行處理,例如不追蹤此類變化和/或不將系統(tǒng)啟動(dòng)的替代活動(dòng)視為事件。此外,雖然表280和290中的變化-事件關(guān)結(jié)信息未對可直接歸因于一個(gè)或多個(gè)相應(yīng)事件(例如,立即引發(fā)那些變化的事件)的變化與可間接歸因于一個(gè)或多個(gè)相應(yīng)事件(例如,例如在協(xié)調(diào)活動(dòng)期間聚合在一起且共同引起那些變化的事件)的變化進(jìn)行區(qū)分,但在其它實(shí)施方案中,可進(jìn)一步追蹤此類信息。
[0057]如前所述,對計(jì)算節(jié)點(diǎn)組的特定程序執(zhí)行能力動(dòng)態(tài)修改的責(zé)任歸因可提供各種益處,包括向與計(jì)算節(jié)點(diǎn)組相關(guān)的用戶提供為何會發(fā)生變化的解釋。還可響應(yīng)于從用戶或其它來源處接收的各類詢問來產(chǎn)生和/或使用此類責(zé)任歸因信息,這些詢問諸如關(guān)于識別哪些(多個(gè))事件為引起一組一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)的可用性發(fā)生指示的特定程序執(zhí)行能力修改或其它變化的原因的請求和/或關(guān)于哪些(多次)程序執(zhí)行能力修改或其它計(jì)算節(jié)點(diǎn)組的(多個(gè))可用性變化由一個(gè)或多個(gè)指示的事件引起的請求。參照圖2B所討論,表280和290中示出的關(guān)結(jié)信息提供了一種用于追蹤和提供責(zé)任歸因信息的機(jī)制。例如,對于圖2A中與變化C7相對應(yīng)的添加5個(gè)計(jì)算節(jié)點(diǎn)而言,用戶可能想知道為何添加了 5個(gè)計(jì)算節(jié)點(diǎn)(例如,特別是按照添加3個(gè)計(jì)算節(jié)點(diǎn)的事件E4的用戶指令)。通過采用圖2B中示出的關(guān)結(jié)信息,PES或其它系統(tǒng)可易于自動(dòng)生成人可讀的解釋。例如,響應(yīng)于關(guān)于與圖2A的變化Cl相對應(yīng)的添加四個(gè)計(jì)算節(jié)點(diǎn)的原因的用戶請求,PES或其它系統(tǒng)可例如指示以下內(nèi)容:“變化COl由時(shí)間Tl時(shí)的事件EOl直接引起。事件EOl為來自用戶UUU以開始提供一組8個(gè)計(jì)算節(jié)點(diǎn)的請求”。該信息可這樣產(chǎn)生:通過采用行285a中對應(yīng)于變化Cl的關(guān)結(jié)信息280x以識別表290中對應(yīng)于事件El的行295a,并且以所需方式從行285a和295a中提取和格式化信息(例如,以基于用戶請求或先前的用戶首選項(xiàng)的格式、以基于PES默認(rèn)值的格式等)。類似地,響應(yīng)于關(guān)于執(zhí)行用戶指令El以開始提供該組八個(gè)計(jì)算節(jié)點(diǎn)的用戶請求,PES或其它系統(tǒng)可例如指示以下內(nèi)容:“時(shí)間Tl時(shí)的事件EOl直接引起變化C01、C02和C03。變化COl為添加4個(gè)計(jì)算節(jié)點(diǎn),其在時(shí)間Tl時(shí)開始并且在時(shí)間T2時(shí)結(jié)束。變化C02為添加3個(gè)計(jì)算節(jié)點(diǎn),其在時(shí)間Tl時(shí)開始并且在時(shí)間T3時(shí)結(jié)束。變化C03為添加I個(gè)計(jì)算節(jié)點(diǎn),其在時(shí)間Tl時(shí)開始,但未結(jié)束”。作為另一個(gè)實(shí)例,響應(yīng)于關(guān)于與圖2A的變化C7相對應(yīng)的添加五個(gè)計(jì)算節(jié)點(diǎn)的原因的用戶請求,PES或其它系統(tǒng)可例如指示以下內(nèi)容:“變化C07由發(fā)生在時(shí)段Tll至T21期間的事件E05、E06、E04和E09b間接引起。事件E05為基于觸發(fā)器TR-1的滿足情況的4個(gè)附加計(jì)算節(jié)點(diǎn)的請求。事件E06為基于觸發(fā)器TR-N的滿足情況的2個(gè)附加計(jì)算節(jié)點(diǎn)的請求。事件E04為基于來自用戶UUU的用戶提供動(dòng)態(tài)指令的3個(gè)附加計(jì)算節(jié)點(diǎn)的請求。事件E09b為基于該組中不可用計(jì)算節(jié)點(diǎn)的自動(dòng)終止的I個(gè)替代計(jì)算節(jié)點(diǎn)的請求”。作為對此類文本串的補(bǔ)充或替代,責(zé)任歸因信息還可以各種其它形式諸如自動(dòng)報(bào)表(例如,以表格、圖表等)以及以定期或其它預(yù)定方式來產(chǎn)生。應(yīng)當(dāng)理解到,在其它實(shí)施方案中,此類責(zé)任歸因信息可以各種其它方式來產(chǎn)生和使用。
[0058]應(yīng)當(dāng)理解到,關(guān)于圖2B中示出的事件和變化的信息僅提供用于進(jìn)行示意性的目的,并且對于所儲存的信息而言,此類信息的儲存在其它實(shí)施方案中可以各種其它方式來進(jìn)行。此外,在其它實(shí)施方案中,PES可儲存關(guān)于用戶和計(jì)算節(jié)點(diǎn)組的各種其它類型的信息,例如以提供儲存關(guān)于用戶定義的觸發(fā)器、關(guān)于監(jiān)測的性能測量信息、關(guān)于用戶賬號等的信息的附加表。
[0059]另外,圖2A和2B的前述實(shí)例提供用于進(jìn)行示意性的目的,并且其它實(shí)施方案可以各種方式不同于這些實(shí)例。例如,雖然在這些實(shí)例中,程序執(zhí)行能力根據(jù)計(jì)算節(jié)點(diǎn)的數(shù)量來測量和修改,例如其前提是各種可用計(jì)算節(jié)點(diǎn)被視為等效(例如,具有等效的計(jì)算資源),但可提供其它實(shí)施方案,其中各種可用計(jì)算節(jié)點(diǎn)可為具有不同特性(例如不同的處理能力、內(nèi)存量、平臺規(guī)格等)的不同類型,和/或其中以不同于計(jì)算節(jié)點(diǎn)數(shù)量的方式來追蹤程序執(zhí)行能力。在一些此類實(shí)施方案中,各種請求可包括一個(gè)或多個(gè)特定類型的計(jì)算節(jié)點(diǎn)的指示,所述計(jì)算節(jié)點(diǎn)用于被選擇來執(zhí)行與所述請求相關(guān)的程序的多組計(jì)算節(jié)點(diǎn)中,并且那些請求僅可在相應(yīng)的指定類型的計(jì)算節(jié)點(diǎn)上實(shí)現(xiàn)。
[0060]另外,在至少一些實(shí)施方案中,PES或其它系統(tǒng)還可進(jìn)行作為管理多組計(jì)算節(jié)點(diǎn)的一部分的其它類型的活動(dòng)。例如,如前所述,PES或其它系統(tǒng)可決定在各個(gè)時(shí)間從計(jì)算節(jié)點(diǎn)組中添加或移除計(jì)算節(jié)點(diǎn),各個(gè)時(shí)間包括如下:在聚合時(shí)段結(jié)束時(shí)進(jìn)行的協(xié)調(diào)活動(dòng)期間(響應(yīng)于在所述時(shí)段期間被滿足的一個(gè)或多個(gè)觸發(fā)器和/或在所述時(shí)段期間接收的用戶指令);在響應(yīng)于經(jīng)指定或確定而具有瞬即效應(yīng)的用戶指令或觸發(fā)器滿足情況的任何時(shí)間;在響應(yīng)于PES或其它系統(tǒng)的自動(dòng)活動(dòng)例如以代替失效的計(jì)算節(jié)點(diǎn)和/或終止并移除當(dāng)前操作被禁止的計(jì)算節(jié)點(diǎn)的任何時(shí)間;等。在至少一些實(shí)施方案中,PES或其它系統(tǒng)還可在確定至少一些此類計(jì)算節(jié)點(diǎn)組修改的確切時(shí)間時(shí)考慮其它因素。例如,在用戶將負(fù)責(zé)針對給定時(shí)段使用給定數(shù)量的計(jì)算節(jié)點(diǎn)的情況中(例如,已經(jīng)收取了 X個(gè)計(jì)算節(jié)點(diǎn)在下一小時(shí)的費(fèi)用),此類信息可用于確定關(guān)于計(jì)算節(jié)點(diǎn)組的至少某些類型的修改的時(shí)間。如果PES或其它系統(tǒng)決定將該組中計(jì)算節(jié)點(diǎn)的數(shù)量減少至低于X,則PES或其它系統(tǒng)可決定在實(shí)際上將計(jì)算節(jié)點(diǎn)數(shù)量減少至低于X之前,等待直到接近給定時(shí)段或給定時(shí)段結(jié)束時(shí)(例如,在已向用戶收取費(fèi)用的小時(shí)結(jié)束時(shí))。類似地,如果一組計(jì)算節(jié)點(diǎn)在接近進(jìn)行新的協(xié)調(diào)活動(dòng)時(shí)失效(例如,在接近將經(jīng)請求的計(jì)算節(jié)點(diǎn)數(shù)量修改聚合期間的一段時(shí)間結(jié)束時(shí)),則PES或其它系統(tǒng)可決定對實(shí)際節(jié)點(diǎn)數(shù)量和任選的正式記錄的節(jié)點(diǎn)數(shù)量進(jìn)行更新,以反映所述失效,但無需立即開始添加替代計(jì)算節(jié)點(diǎn)-這樣,如果已確定在協(xié)調(diào)活動(dòng)期間聚合經(jīng)請求的計(jì)算節(jié)點(diǎn)數(shù)量修改可將該組的計(jì)算節(jié)點(diǎn)數(shù)量減少一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn),則失效的計(jì)算節(jié)點(diǎn)可用作一個(gè)減少的此類節(jié)點(diǎn),而非終止該組的執(zhí)行計(jì)算節(jié)點(diǎn)。
[0061]在一些實(shí)施方案中,PES或其它系統(tǒng)可同時(shí)管理對計(jì)算節(jié)點(diǎn)組進(jìn)行的多次不同類型的修改。作為一個(gè)實(shí)例,可采用單個(gè)位置處的計(jì)算節(jié)點(diǎn)來將計(jì)算節(jié)點(diǎn)組管理在當(dāng)前所需的計(jì)算節(jié)點(diǎn)數(shù)量,但用戶可決定為計(jì)算節(jié)點(diǎn)組指定第二類型的尺度,使得該組中計(jì)算節(jié)點(diǎn)的指定的所需子集位于不同的第二位置。如果如此,PES或其它系統(tǒng)可操作以通過各種方式來滿足第二尺度的期望值,各種方式包括通過將任何新計(jì)算節(jié)點(diǎn)逐步添加至第二位置處的組中并且從第一位置處的組中逐步移除任何現(xiàn)有計(jì)算節(jié)點(diǎn)直到實(shí)現(xiàn)第二尺度的期望值,或者立即終止第一位置處的組中的現(xiàn)有計(jì)算節(jié)點(diǎn)以能夠使替代計(jì)算節(jié)點(diǎn)添加至第二位置處的組中。此類逐步添加和/或移除可以其它地方更詳細(xì)地討論的方式中的任何方式來觸發(fā),包括代替不可用計(jì)算節(jié)點(diǎn)、響應(yīng)于動(dòng)態(tài)指定的用戶指令和/或被滿足的用戶指定的觸發(fā)器來修改計(jì)算節(jié)點(diǎn)數(shù)量等。另外,雖然計(jì)算節(jié)點(diǎn)數(shù)量和位置在該實(shí)例中為同時(shí)均衡,但可以類似的方式來進(jìn)行各種其它類型的變化(例如,例如根據(jù)具有不同相關(guān)數(shù)量的計(jì)算資源的不同類型將現(xiàn)有計(jì)算節(jié)點(diǎn)從第一種類型改變?yōu)榈诙N類型)。此外,雖然通過改變計(jì)算節(jié)點(diǎn)數(shù)量在一些實(shí)例中進(jìn)行了程序執(zhí)行能力修改,但在其它實(shí)施方案中,此類能力修改可通過改變該組中一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)的程序執(zhí)行能力來進(jìn)行(例如,通過用具有或多或少的一種或多種類型的相關(guān)計(jì)算資源的第二計(jì)算節(jié)點(diǎn)代替第一計(jì)算節(jié)點(diǎn)、通過對已成為該組的一部分的計(jì)算節(jié)點(diǎn)中的一個(gè)節(jié)點(diǎn)可用的一種或多種計(jì)算資源的量進(jìn)行修改等)。
[0062]如前所述,PES可在各個(gè)實(shí)施方案中提供和使用各類功能,并且這些功能可以各種方式提供。例如,在一些實(shí)施方案中,可從PES獲得的程序執(zhí)行能力可包括多個(gè)計(jì)算節(jié)點(diǎn),所述計(jì)算節(jié)點(diǎn)用于代表用戶來執(zhí)行程序,例如通過經(jīng)由一個(gè)或多個(gè)網(wǎng)絡(luò)或能夠在計(jì)算機(jī)之間傳輸數(shù)據(jù)的其它數(shù)據(jù)交換介質(zhì)互連的多個(gè)物理計(jì)算機(jī)。這些計(jì)算機(jī)中的至少一些可在一些實(shí)施方案中各自包括同時(shí)執(zhí)行多個(gè)程序的足夠的計(jì)算相關(guān)資源(例如,足夠的可寫內(nèi)存、非易失性存儲、CPU周期或其它CPU使用率度量、網(wǎng)絡(luò)帶寬、交換空間等),并且這些計(jì)算機(jī)中的至少一些在一些此類實(shí)施方案中可各自提供多個(gè)虛擬機(jī)計(jì)算節(jié)點(diǎn),所述虛擬機(jī)計(jì)算節(jié)點(diǎn)各自可代表不同的用戶來執(zhí)行一個(gè)或多個(gè)程序。此外,在各個(gè)實(shí)施方案中,PES可代表多個(gè)用戶來執(zhí)行各類程序。例如,代表用戶來執(zhí)行的此類程序可包括一個(gè)或多個(gè)操作系統(tǒng)、應(yīng)用(例如,服務(wù)器和/或其它軟件應(yīng)用)、實(shí)用程序、程序庫等。另外,在至少一些實(shí)施方案中,此類程序可包括可執(zhí)行的軟件映像,諸如虛擬機(jī)映像,其在一個(gè)或多個(gè)虛擬機(jī)計(jì)算節(jié)點(diǎn)上可啟動(dòng)或者說是可受載,并且各自可包括操作系統(tǒng)軟件、用于一個(gè)或多個(gè)應(yīng)用程序的軟件,和/或配置信息等。
[0063]在至少一些實(shí)施方案中,通過PES在一組一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)上執(zhí)行一個(gè)或多個(gè)程序可響應(yīng)于立即執(zhí)行那些程序的當(dāng)前執(zhí)行請求來引發(fā)。或者,所述引發(fā)可基于此前接收的程序執(zhí)行請求,該請求可對當(dāng)前時(shí)間內(nèi)的那些程序預(yù)定或者說是保留日后執(zhí)行。程序執(zhí)行請求可以各種方式來接收,例如直接從用戶處接收(例如,經(jīng)由交互式控制臺或由程序執(zhí)行服務(wù)提供的其它GUI),或者從自動(dòng)引發(fā)一個(gè)或多個(gè)其它程序或其它實(shí)例的自行執(zhí)行的用戶執(zhí)行程序處接收(例如,經(jīng)由程序執(zhí)行服務(wù)提供的API,諸如使用網(wǎng)絡(luò)服務(wù)的API)。程序執(zhí)行請求可包括用于引發(fā)一個(gè)或多個(gè)程序的執(zhí)行的各種信息,諸如可執(zhí)行的程序或待執(zhí)行的程序的其它復(fù)本、此前經(jīng)注冊或者說是提供用于執(zhí)行的程序的指示,和待同時(shí)執(zhí)行的許多程序?qū)嵗?例如,表示為單個(gè)所需數(shù)量的實(shí)例、最小和最大數(shù)量的所需實(shí)例等),以及用于執(zhí)行一個(gè)或多個(gè)程序的各種其它類型的首選項(xiàng)和/或要求(例如,資源分配、用于執(zhí)行的地理和/或邏輯位置、其它程序和/或計(jì)算節(jié)點(diǎn)的臨近執(zhí)行、時(shí)間相關(guān)標(biāo)準(zhǔn)等)。
[0064]在接收用于在指示的時(shí)間執(zhí)行一個(gè)或多個(gè)程序?qū)嵗恼埱笾?,PES可決定將一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)用于執(zhí)行程序?qū)嵗囊唤M中。在一些實(shí)施方案中,使用計(jì)算節(jié)點(diǎn)(即使用于將來執(zhí)行)的決定在所述請求時(shí)進(jìn)行。在其它實(shí)施方案中,將計(jì)算節(jié)點(diǎn)用于將來執(zhí)行一個(gè)或多個(gè)程序?qū)嵗臎Q定可基于當(dāng)時(shí)可用的信息而被延遲至稍后的時(shí)間,諸如將來的執(zhí)行時(shí)間。在一些實(shí)施方案中,將哪些計(jì)算節(jié)點(diǎn)用于代表用戶來執(zhí)行一個(gè)或多個(gè)程序的決定在執(zhí)行請求之前做出,例如在用戶預(yù)訂和/或注冊以使用PES的時(shí)間和/或執(zhí)行用戶程序的請求之前的另一個(gè)時(shí)間。例如,在一些此類實(shí)施方案中,一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)在一段時(shí)間內(nèi)可與用戶相關(guān),使得可在所述期間的任何時(shí)間(諸如接收在所述期間執(zhí)行所述用戶的軟件的請求的任何時(shí)間)代表該用戶在相關(guān)的計(jì)算節(jié)點(diǎn)上執(zhí)行程序。另外,在一些實(shí)施方案中,將哪些計(jì)算節(jié)點(diǎn)用于代表用戶來執(zhí)行程序的決定可在一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)和/或一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)的計(jì)算資源可用于執(zhí)行所述用戶的程序時(shí)做出,例如以在計(jì)算節(jié)點(diǎn)未被使用和/或可以其它方式用于執(zhí)行程序時(shí),在一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)上執(zhí)行一個(gè)或多個(gè)待處理請求的程序。
[0065]將哪些計(jì)算節(jié)點(diǎn)用于執(zhí)行各程序復(fù)本或?qū)嵗臎Q定可以各種方式做出,包括基于在請求中指定的或者說是為程序和/或相關(guān)用戶指定的任何首選項(xiàng)和/或要求(例如,在注冊時(shí)間等)。例如,如果確定了用于執(zhí)行程序?qū)嵗膬?yōu)選和/或所需資源(例如,內(nèi)存和/或存儲;CPU類型、周期或其它性能度量;網(wǎng)絡(luò)容量;平臺類型等)的標(biāo)準(zhǔn),則將適當(dāng)?shù)挠?jì)算節(jié)點(diǎn)用于執(zhí)行程序?qū)嵗臎Q定可至少部分地基于計(jì)算節(jié)點(diǎn)是否具有可用于滿足那些資源標(biāo)準(zhǔn)的足夠資源。關(guān)于執(zhí)行和配置程序以在程序執(zhí)行服務(wù)上執(zhí)行的其它細(xì)節(jié)包括在2006年 3 月 31 日提交的名稱為"Managing Execut1n of Programs by Multiple ComputingSystems"的待審的美國專利申請N0.11/395,463中,該專利全文據(jù)此以引入的方式并入本文。
[0066]在一些實(shí)施方案中,費(fèi)用可與PES的使用相關(guān),使得PES可代表用戶來執(zhí)行程序以交換該用戶對一項(xiàng)或多項(xiàng)費(fèi)用的付款。例如,在一些實(shí)施方案中,根據(jù)分配用于代表用戶來執(zhí)行一個(gè)或多個(gè)程序的程序執(zhí)行能力的量和/或類型,例如根據(jù)分配用于執(zhí)行該用戶的程序的許多處理單元中的一個(gè)或多個(gè)、內(nèi)存量、存儲量、網(wǎng)絡(luò)資源量等,可以向該用戶收取費(fèi)用。在一些實(shí)施方案中,費(fèi)用可基于其它因素,諸如用于執(zhí)行程序的計(jì)算資源的各種特性,例如基于CPU能力或性能、平臺類型(例如,32位、64位等)等。在一些實(shí)施方案中,費(fèi)用可根據(jù)各種使用因素來收取,諸如每次使用服務(wù)的價(jià)格、使用計(jì)算服務(wù)的每個(gè)時(shí)間單位的價(jià)格、每個(gè)所用存儲量的價(jià)格、每個(gè)傳入和/或傳出的數(shù)據(jù)的價(jià)格等。在至少一些實(shí)施方案中,如下文更詳細(xì)地討論,費(fèi)用可基于各種其它因素,諸如關(guān)于執(zhí)行程序的各種性質(zhì)(例如,執(zhí)行連續(xù)性、故障容差等)。在至少一些實(shí)施方案中,PES供應(yīng)商可提供用于代表多個(gè)用戶來執(zhí)行程序的各種等級、類型和/或水平的服務(wù)或功能中的一種或多種,并且在一些此類實(shí)施方案中,各種費(fèi)用可與各種等級、類型和/或水平的服務(wù)相關(guān)。另外,例如,等級可用于由PES提供的特定類型的功能,例如以針對第一數(shù)量的程序執(zhí)行能力功能收取第一等級的費(fèi)用(例如,高達(dá)所用計(jì)算節(jié)點(diǎn)的指定的第一閾值)、針對第二數(shù)量的程序執(zhí)行能力功能收取第二等級的費(fèi)用(例如,較低價(jià)格等級)(例如,高于所用計(jì)算節(jié)點(diǎn)的指定的第一閾值和高達(dá)所用計(jì)算節(jié)點(diǎn)的指定的第二閾值)等。關(guān)于與程序執(zhí)行服務(wù)相關(guān)的各種費(fèi)用的其它細(xì)節(jié)包括在2007年12月21日提交的名稱為"Providing Configurable Pricing forExecut1n of Software Images"的待審的美國專利申請N0.11/963,331中,該專利全文據(jù)此以引入的方式并入本文。
[0067]此外,PES可在各個(gè)實(shí)施方案中提供和使用各種其它類型的功能,如其它地方更詳細(xì)地討論。
[0068]圖3為示出適用于對管理多個(gè)用戶的多組計(jì)算節(jié)點(diǎn)的技術(shù)進(jìn)行實(shí)施的系統(tǒng)的示例性實(shí)施方案的框圖。具體地講,圖3示出了適用于提供程序執(zhí)行服務(wù)的至少一些功能的服務(wù)器計(jì)算系統(tǒng)300,以及程序執(zhí)行服務(wù)的用戶可以使用的各個(gè)客戶計(jì)算系統(tǒng)350、程序執(zhí)行服務(wù)可以使用的計(jì)算節(jié)點(diǎn)360、和其它計(jì)算系統(tǒng)380。在圖示實(shí)施方案中,服務(wù)器計(jì)算系統(tǒng)300具有以下部件,其包括CPU 305、各種1/0部件310、存儲裝置320和存儲器330。圖示的1/0部件包括顯示器311、網(wǎng)絡(luò)接線312、計(jì)算機(jī)可讀介質(zhì)驅(qū)動(dòng)器313和其它1/0設(shè)備315 (例如,鍵盤、鼠標(biāo)、揚(yáng)聲器等)。另外,圖示的用戶計(jì)算系統(tǒng)350具有與服務(wù)器計(jì)算系統(tǒng)300的部件相類似的部件,其包括CPU 351、1/0部件352、存儲裝置354和存儲器357。其它計(jì)算系統(tǒng)380和計(jì)算節(jié)點(diǎn)360各自也可包括與參照服務(wù)器計(jì)算系統(tǒng)300所示出的部件中的一些或全部相類似的部件,但為了簡潔起見,在該實(shí)例中未示出此類部件。
[0069]程序執(zhí)行服務(wù)系統(tǒng)管理器模塊340的實(shí)施方案正在存儲器330中執(zhí)行,并且通過網(wǎng)絡(luò)390(例如,經(jīng)由因特網(wǎng)和/或萬維網(wǎng)、經(jīng)由私用蜂窩網(wǎng)絡(luò)等)與計(jì)算系統(tǒng)350和380以及計(jì)算節(jié)點(diǎn)360進(jìn)行交互。在該示例性實(shí)施方案中,PESSM 340包括關(guān)于管理(例如結(jié)合由PESSM340管理的程序執(zhí)行服務(wù))與用戶計(jì)算系統(tǒng)350進(jìn)行交互的各個(gè)用戶(未示出)對多個(gè)計(jì)算節(jié)點(diǎn)360的使用的功能。其它計(jì)算系統(tǒng)350和380以及計(jì)算節(jié)點(diǎn)360可將各種軟件作為與PESSM的交互作用的一部分來執(zhí)行。例如,用戶計(jì)算系統(tǒng)350可在存儲器357中執(zhí)行軟件以與PESSM 340進(jìn)行交互(例如,作為萬維網(wǎng)瀏覽器或?qū)S每蛻舳藨?yīng)用程序的一部分),例如以配置和/或請求代表那些系統(tǒng)的用戶在一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)360上以各種方式來執(zhí)行程序,以及以實(shí)施各種其它類型的動(dòng)作,如其它地方更詳細(xì)地討論??蓪㈥P(guān)于PESSM模塊340的功能的各種信息儲存在存儲裝置320中,諸如關(guān)于用于代表多個(gè)用戶來執(zhí)行程序的配置、執(zhí)行和/或注冊的信息322、關(guān)于計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力修改的信息324 (例如,關(guān)于用戶指定的預(yù)定義觸發(fā)器的信息;關(guān)于來自用戶的動(dòng)態(tài)指定的能力修改指令的信息;關(guān)于計(jì)算節(jié)點(diǎn)性能測量的信息和關(guān)于確定指定的觸發(fā)器是否被滿足的其它信息;各組的所需、實(shí)際和正式記錄的計(jì)算節(jié)點(diǎn)數(shù)量的當(dāng)前值;等),以及關(guān)于特定計(jì)算節(jié)點(diǎn)組的特定程序執(zhí)行能力修改的因果關(guān)系歸因的信息326(例如,通過列出所發(fā)生的至少一些事件和各組計(jì)算節(jié)點(diǎn)的至少一些變化,并且將特定事件與特定變化聯(lián)系起來,例如以類似于圖2B和其它地方所討論的方式)。
[0070]在PESSM模塊340接收在一組一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)360上執(zhí)行一個(gè)或多個(gè)程序的請求(或其它指示)之后,PESSM模塊340選擇該組的一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn),并且引發(fā)那些程序在那些計(jì)算節(jié)點(diǎn)360上的執(zhí)行。另外,PESSM模塊340可進(jìn)一步與計(jì)算節(jié)點(diǎn)360進(jìn)行交互,以隨后終止所引發(fā)的程序在所述計(jì)算節(jié)點(diǎn)上的執(zhí)行,將所述程序中的一個(gè)或多個(gè)移動(dòng)至一個(gè)或多個(gè)其它計(jì)算節(jié)點(diǎn)360或計(jì)算系統(tǒng)380等。計(jì)算節(jié)點(diǎn)360在各個(gè)實(shí)施方案中可具有各種形式,例如以包括許多物理計(jì)算系統(tǒng)和/或在一個(gè)或多個(gè)物理計(jì)算系統(tǒng)上執(zhí)行的許多虛擬機(jī)。在一些實(shí)施方案中,服務(wù)器計(jì)算系統(tǒng)300和計(jì)算節(jié)點(diǎn)360可為數(shù)據(jù)中心或其它組的協(xié)同定位計(jì)算系統(tǒng)的一部分,或者可以其它方式為專用網(wǎng)的計(jì)算節(jié)點(diǎn)。另外,在一些實(shí)施方案中,PESSM模塊340可與一個(gè)或多個(gè)其它計(jì)算系統(tǒng)380進(jìn)行交互,以啟動(dòng)或終止一個(gè)或多個(gè)程序在那些計(jì)算系統(tǒng)上的執(zhí)行,例如其前提是計(jì)算系統(tǒng)380由提供計(jì)算節(jié)點(diǎn)以供其他用戶使用的一個(gè)或多個(gè)第三方參與者提供。在一些實(shí)施方案中,PESSM模塊340可進(jìn)一步或相反地管理一種或多種類型的計(jì)算相關(guān)資源或服務(wù)(除程序執(zhí)行服務(wù)之外)(例如,持久性或臨時(shí)數(shù)據(jù)存儲服務(wù)、消息服務(wù)、數(shù)據(jù)庫服務(wù)等)的使用權(quán)。
[0071]另外,程序執(zhí)行服務(wù)能力維護(hù)管理器模塊345的實(shí)施方案正在存儲器330中執(zhí)行,并且在該實(shí)施方案中通過網(wǎng)絡(luò)390與計(jì)算節(jié)點(diǎn)360進(jìn)行交互。具體地講,在該示例性實(shí)施方案中,PESCMM模塊345包括關(guān)于監(jiān)測計(jì)算節(jié)點(diǎn)360中的一個(gè)或多個(gè)或者說是與其進(jìn)行交互以追蹤那些計(jì)算節(jié)點(diǎn)的使用的功能,例如以確定計(jì)算節(jié)點(diǎn)組的當(dāng)前實(shí)際程序執(zhí)行能力和/或確定與計(jì)算節(jié)點(diǎn)組的一些或所有計(jì)算節(jié)點(diǎn)相對應(yīng)的當(dāng)前性能特性。如前所述,此類信息可儲存在存儲裝置320上和/或其它位置,并且可以各種方式被模塊340和345使用。例如,在一些實(shí)施方案中,如果模塊345發(fā)現(xiàn)計(jì)算節(jié)點(diǎn)已失效或者說是變得不可用(例如,作為提供或者說是初始化計(jì)算節(jié)點(diǎn)以用作計(jì)算節(jié)點(diǎn)組的一部分的過程中的一部分,在計(jì)算節(jié)點(diǎn)已用做計(jì)算節(jié)點(diǎn)組的一部分之后等),則模塊345可自動(dòng)采取動(dòng)作以將不可用計(jì)算節(jié)點(diǎn)用新計(jì)算節(jié)點(diǎn)來代替。在其它實(shí)施方案中,模塊345可能相反地不可對計(jì)算節(jié)點(diǎn)進(jìn)行一些或所有監(jiān)測,例如其前提是模塊345相反地從另一個(gè)來源處獲得關(guān)于計(jì)算節(jié)點(diǎn)組的當(dāng)前實(shí)際程序執(zhí)行能力和/或與計(jì)算節(jié)點(diǎn)組的一些或所有計(jì)算節(jié)點(diǎn)相對應(yīng)的當(dāng)前性能特性的信息,然后視情況將該信息用于維持計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力。
[0072]應(yīng)當(dāng)理解到,計(jì)算系統(tǒng)300、350和380以及計(jì)算節(jié)點(diǎn)360僅為示例性的,并且并非旨在限定本發(fā)明的范圍。所述計(jì)算系統(tǒng)和/或節(jié)點(diǎn)相反地可各自包括多個(gè)交互計(jì)算系統(tǒng)或設(shè)備,并且所述計(jì)算系統(tǒng)/節(jié)點(diǎn)可包括通過一個(gè)或多個(gè)網(wǎng)絡(luò)(諸如因特網(wǎng))、經(jīng)由萬維網(wǎng)或經(jīng)由專用網(wǎng)(例如移動(dòng)通信網(wǎng)絡(luò)等)連接至未示出的其它設(shè)備。更一般地說,計(jì)算節(jié)點(diǎn)或其它計(jì)算系統(tǒng)可包括可進(jìn)行交互且執(zhí)行所述類型的功能的硬件或軟件的任何組合,包括但不限于臺式電腦或其它計(jì)算機(jī)、數(shù)據(jù)庫服務(wù)器、網(wǎng)絡(luò)存儲設(shè)備和其它網(wǎng)絡(luò)設(shè)備、PDA、手機(jī)、無線電話、尋呼機(jī)、電子整理器、因特網(wǎng)設(shè)備、電視系統(tǒng)(例如,采用機(jī)頂盒和/或個(gè)人/數(shù)字視頻錄像機(jī)),以及包含適當(dāng)通信能力的各種其它消費(fèi)品。另外,由圖示的模塊340和/或345提供的功能可在一些實(shí)施方案中分配于其它模塊中。類似地,在一些實(shí)施方案中,可能不可提供模塊340和/或345的一些功能和/或其它附加功能可能是可用的。
[0073]也應(yīng)當(dāng)理解到,雖然各個(gè)項(xiàng)目在使用時(shí)被示為儲存在存儲器中或存儲裝置上,但這些項(xiàng)目或其部分可在為了存儲管理和數(shù)據(jù)完整性的存儲器和其它存儲設(shè)備之間傳送?;蛘?,在其它實(shí)施方案中,所述軟件模塊和/或系統(tǒng)中的一些或全部可在另一臺設(shè)備上的存儲器中執(zhí)行,并且經(jīng)由計(jì)算機(jī)之間通信與圖示的計(jì)算系統(tǒng)進(jìn)行通信。此外,在一些實(shí)施方案中,所述系統(tǒng)和/或模塊中的一些或全部可以其它方式來實(shí)施或提供,這些方式諸如至少部分地以固件和/或硬件的方式,包括(但不限于)一個(gè)或多個(gè)專用集成電路(ASIC)、標(biāo)準(zhǔn)集成電路、控制器(例如,通過執(zhí)行適當(dāng)?shù)闹噶?,并且包括微控制器?或嵌入式控制器)、現(xiàn)場可編程門陣列(FPGA)、復(fù)雜可編程邏輯器件(CPLD)等。也可將所述模塊、系統(tǒng)和數(shù)據(jù)結(jié)構(gòu)中的一些或全部(例如,作為軟件指令或結(jié)構(gòu)化數(shù)據(jù))儲存在計(jì)算機(jī)可讀介質(zhì)上,諸如硬盤、存儲器、網(wǎng)絡(luò),或者通過適當(dāng)?shù)尿?qū)動(dòng)器或經(jīng)由適當(dāng)?shù)倪B接件讀取的便攜式介質(zhì)物件。所述系統(tǒng)、模塊和數(shù)據(jù)結(jié)構(gòu)也可作為產(chǎn)生的數(shù)據(jù)信號(例如,作為載波或者其它模擬或數(shù)字傳播信號的一部分)在各種計(jì)算機(jī)可讀傳輸介質(zhì)(包括無線和有線/電纜介質(zhì))上傳輸,并且可采取各種形式(例如,作為單一或多路模擬信號的一部分,或者作為多個(gè)離散數(shù)字包或幀)。在其它實(shí)施方案中,此類計(jì)算機(jī)程序產(chǎn)品也可采取其它形式。因此,本發(fā)明可通過其它計(jì)算機(jī)系統(tǒng)配置來實(shí)施。
[0074]圖4為程序執(zhí)行服務(wù)系統(tǒng)管理器程序400的示例性實(shí)施方案的流程圖。所述程序可通過以下方式來提供,例如執(zhí)行圖1A和圖1B各自的PESSM模塊110和180,和/或圖3的PESSM模塊340,例如以有助于管理用戶對多組計(jì)算節(jié)點(diǎn)的使用,以及在某些情況下進(jìn)行其它類型的管理操作。在該圖示實(shí)施方案中,程序400管理程序執(zhí)行服務(wù)的各個(gè)使用方面,該程序執(zhí)行服務(wù)提供了代表多個(gè)用戶來執(zhí)行程序的程序執(zhí)行能力。
[0075]在圖示實(shí)施方案中,所述程序從接收信息或請求的圖框405處開始。所述程序繼續(xù)至圖框410,以確定所接收的請求或信息(諸如來自用戶的請求)是否是關(guān)于引發(fā)一個(gè)或多個(gè)程序在一組計(jì)算節(jié)點(diǎn)上的執(zhí)行。如果是,所述程序繼續(xù)至圖框415,以獲得關(guān)于經(jīng)請求的程序執(zhí)行的信息,諸如計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力的初始所需量(例如,所需計(jì)算節(jié)點(diǎn)數(shù)量)、任選地一個(gè)或多個(gè)待執(zhí)行的程序以及任選地一個(gè)或多個(gè)用戶指定的能力修改觸發(fā)器。如其它地方所討論,在一些實(shí)施方案中,用戶可從各類計(jì)算節(jié)點(diǎn)中的一個(gè)或多個(gè)中選擇和/或可以其它方式指定各種量和/或類型的所需計(jì)算資源(例如,處理單元類型/量、內(nèi)存量、平臺規(guī)格等)。在圖框420中,所述程序然后選擇計(jì)算節(jié)點(diǎn)以用于該組中,并且在圖框425中,開始使那些所選計(jì)算節(jié)點(diǎn)可供用戶使用,例如通過提供所選計(jì)算節(jié)點(diǎn)并且任選地引發(fā)一個(gè)或多個(gè)待執(zhí)行的程序的執(zhí)行。所述程序也將該組中的所選計(jì)算節(jié)點(diǎn)的所需程序執(zhí)行能力指定為該組的正式記錄的初始程序執(zhí)行能力。當(dāng)代表用戶可使用計(jì)算節(jié)點(diǎn)時(shí),可以各種方式使該用戶獲知其可用性,或在其它實(shí)施方案中,計(jì)算節(jié)點(diǎn)可以自動(dòng)方式進(jìn)行操作,而無需用戶的進(jìn)一步交互。所述程序然后繼續(xù)至圖框430,以儲存關(guān)于計(jì)算節(jié)點(diǎn)組的信息,包括該組的任何用戶指定的觸發(fā)器。
[0076]如果相反地在圖框410處確定未接收到引發(fā)一組計(jì)算節(jié)點(diǎn)的執(zhí)行的請求,則所述程序相反地繼續(xù)至圖框440,以確定是否接收到關(guān)于修改現(xiàn)有計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力的請求。如果是,所述程序繼續(xù)至圖框445,以接收和儲存關(guān)于修改所指示的現(xiàn)有計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力的動(dòng)態(tài)指定的用戶指令。在圖示實(shí)施方案中,用戶指令可與發(fā)生在當(dāng)前聚合時(shí)段期間的其它可能的程序執(zhí)行能力修改請求聚合在一起,并且在下次進(jìn)行協(xié)調(diào)活動(dòng)期間進(jìn)行進(jìn)一步處理(例如參照圖框465-477),但在其它實(shí)施方案中,相反地可立即執(zhí)行至少一些此類用戶指定的修改請求。
[0077]如果相反地在圖框440處確定未接收到修改一組計(jì)算節(jié)點(diǎn)的程序執(zhí)行能力的請求,則所述程序相反地繼續(xù)至圖框460,以確定是否當(dāng)前要針對一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力進(jìn)行定期或者說是反復(fù)的協(xié)調(diào)活動(dòng),例如在此計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力修改請求的聚合時(shí)段結(jié)束時(shí)。如果是,所述程序繼續(xù)至圖框465,以確定當(dāng)前進(jìn)行協(xié)調(diào)活動(dòng)的一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)組(例如,聚合時(shí)段已結(jié)束的計(jì)算節(jié)點(diǎn)組和一個(gè)或多個(gè)程序執(zhí)行能力動(dòng)態(tài)修改已被聚合的計(jì)算節(jié)點(diǎn)組),并且在圖框467中,選擇下一個(gè)經(jīng)確定的計(jì)算節(jié)點(diǎn)組,從第一個(gè)開始。所述程序然后繼續(xù)至圖框470,以執(zhí)行進(jìn)行反復(fù)能力協(xié)調(diào)活動(dòng)的程序,其中此程序的一個(gè)實(shí)例將參照圖5更詳細(xì)地描述。所述程序接下來繼續(xù)至圖框475,以執(zhí)行進(jìn)行關(guān)于程序執(zhí)行能力修改的因果關(guān)系歸因的活動(dòng)(在圖框470中進(jìn)行)的程序,其中此程序的一個(gè)實(shí)例將參照圖6更詳細(xì)地描述。在圖框475之后,所述程序繼續(xù)至圖框477,以確定是否要處理更多經(jīng)確定的計(jì)算節(jié)點(diǎn)組,并且如果是,所述程序返回至圖框467,以選擇下一個(gè)經(jīng)確定的此計(jì)算節(jié)點(diǎn)組。
[0078]如果相反地在圖框460處確定當(dāng)前未針對一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力進(jìn)行定期或者說是反復(fù)的協(xié)調(diào)活動(dòng),則所述程序相反地繼續(xù)至圖框480,以任選地進(jìn)行一個(gè)或多個(gè)其它指示的操作。此類操作可包括例如以下中的一個(gè)或多個(gè):關(guān)于進(jìn)行其它類型的程序執(zhí)行的用戶請求(如果所提供的程序執(zhí)行服務(wù)提供了此類其它程序執(zhí)行類型),例如以在單個(gè)計(jì)算節(jié)點(diǎn)上執(zhí)行單個(gè)程序;未立即執(zhí)行的用戶指定的程序執(zhí)行能力修改請求(例如,終止執(zhí)行所指示的特定計(jì)算節(jié)點(diǎn)的用戶指令,例如如果該計(jì)算節(jié)點(diǎn)不能正常運(yùn)行);指定附加觸發(fā)器或者說是修改所指示的計(jì)算節(jié)點(diǎn)組的配置信息的用戶請求;針對所指示的計(jì)算節(jié)點(diǎn)組立即進(jìn)行協(xié)調(diào)活動(dòng)的用戶請求,諸如作為反復(fù)的協(xié)調(diào)活動(dòng)的補(bǔ)充或替代(例如,如果僅在用戶請求時(shí)才進(jìn)行協(xié)調(diào)活動(dòng));獲得關(guān)于與用戶相關(guān)的一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)組的各種狀態(tài)信息的用戶請求;向用戶進(jìn)行管理相關(guān)活動(dòng)(諸如預(yù)訂、注冊或付款操作)的請求;等。
[0079]在圖框430、445或480之后,或者如果相反地在圖框477中確定經(jīng)確定的附加計(jì)算節(jié)點(diǎn)組不可用,則所述程序繼續(xù)至圖框485,以根據(jù)圖框405中所接收的信息或請求或者以其它方式(例如定期地)引發(fā)的信息或請求,任選地進(jìn)行任何用戶計(jì)費(fèi)(或償付)活動(dòng),例如以根據(jù)提供給這些用戶的程序執(zhí)行功能來從一個(gè)或多個(gè)用戶處收取和/或收集費(fèi)用。所述程序還可視情況任選地進(jìn)行定期內(nèi)務(wù)操作。
[0080]在圖框485之后,所述程序繼續(xù)至圖框495,以確定是否要繼續(xù),例如直到終止執(zhí)行所述程序的明確指示時(shí)。如果確定要繼續(xù),則所述程序返回至圖框405,否則,繼續(xù)至圖框499并且結(jié)束。應(yīng)當(dāng)理解到,可在一些實(shí)施方案和情況中進(jìn)行其它類型的活動(dòng),例如以確定用戶是否被授權(quán)進(jìn)行經(jīng)請求的特定操作,以針對某些類型的經(jīng)請求的操作立即從用戶處獲得付款等。另外,雖然用戶請求且其它操作在圖示實(shí)施方案中被指示為以專門針對特定計(jì)算節(jié)點(diǎn)組和特定相關(guān)用戶的方式來進(jìn)行,但在其它實(shí)施方案中,一些或所有此類操作相反地可以更普遍地例如應(yīng)用于與單個(gè)用戶相關(guān)的多個(gè)計(jì)算節(jié)點(diǎn)組和/或從與一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)組相關(guān)的多個(gè)用戶處應(yīng)用。
[0081]圖5為遞歸能力協(xié)調(diào)程序500的示例性實(shí)施方案的流程圖。所述程序可通過以下方式來提供,例如執(zhí)行圖1A和圖1B各自的PESSM模塊110和180,和/或圖3的PESSM模塊340,例如該程序可從圖4中的程序400的圖框470處開始。
[0082]在圖示實(shí)施方案中,所述程序開始于圖框505,其中其獲得了待進(jìn)行的能力協(xié)調(diào)活動(dòng)的當(dāng)前所選計(jì)算節(jié)點(diǎn)組的指示。在圖框515中,所述程序然后檢索關(guān)于所選計(jì)算節(jié)點(diǎn)組的正式記錄的程序執(zhí)行能力的信息,例如根據(jù)先前針對所選計(jì)算節(jié)點(diǎn)組進(jìn)行的協(xié)調(diào)活動(dòng)(或如果該活動(dòng)為所進(jìn)行的第一次協(xié)調(diào)活動(dòng),則為所選計(jì)算節(jié)點(diǎn)組的正式記錄的初始程序執(zhí)行能力),和/或根據(jù)可由PES能力維護(hù)管理器模塊對正式記錄的程序執(zhí)行能力進(jìn)行的后續(xù)修改(例如,如參照圖7更詳細(xì)地描述)。所述程序然后繼續(xù)至圖框520和525,以分別確定所選計(jì)算節(jié)點(diǎn)組的當(dāng)前實(shí)際和當(dāng)前所需程序執(zhí)行能力。確定當(dāng)前實(shí)際程序執(zhí)行能力可包括例如檢索此前由PES能力維護(hù)管理器模塊作為監(jiān)測所選計(jì)算節(jié)點(diǎn)組的一部分來儲存的信息,但在其它實(shí)施方案中,所述程序500可動(dòng)態(tài)確定當(dāng)前實(shí)際能力(例如,通過動(dòng)態(tài)請求PES能力維護(hù)管理器模塊或其它監(jiān)測來源提供該信息)。
[0083]在圖框525中確定當(dāng)前所需程序執(zhí)行能力可包括例如檢索以下信息,關(guān)于在與協(xié)調(diào)活動(dòng)相對應(yīng)的當(dāng)前聚合時(shí)段期間已針對所選計(jì)算節(jié)點(diǎn)組從相關(guān)用戶處接收的動(dòng)態(tài)指定的任何能力修改指令的信息(例如,如此前參照圖4的圖框445所討論),以及關(guān)于先前已在當(dāng)前聚合時(shí)段期間被確定為被滿足的所選計(jì)算節(jié)點(diǎn)組的任何用戶指定的觸發(fā)器的信息?;蛘?,在一些實(shí)施方案中,所述程序相反地可檢索所選計(jì)算節(jié)點(diǎn)組的所確定的性能特性信息(例如,此前由PES能力維護(hù)管理器模塊作為監(jiān)測所選計(jì)算節(jié)點(diǎn)組的一部分來儲存的信息,或通過請求PES能力維護(hù)管理器模塊或其它監(jiān)測來源提供該信息而動(dòng)態(tài)獲得的信息),以便當(dāng)前確定是否所選計(jì)算節(jié)點(diǎn)組的任何用戶指定的觸發(fā)器目前被滿足和/或此前在當(dāng)前聚合時(shí)段期間已被滿足。在檢索各種信息之后,當(dāng)前所需程序執(zhí)行能力可通過聚合一個(gè)或多個(gè)經(jīng)請求的程序執(zhí)行能力修改來確定(如其它地方更詳細(xì)地討論),以便在做出任何此類聚合的能力修改之后,確定所得的所需程序執(zhí)行能力。
[0084]在圖框525之后,所述程序繼續(xù)至圖框530,以確定將對所選計(jì)算節(jié)點(diǎn)組做出的實(shí)際變化,以便協(xié)調(diào)所選計(jì)算節(jié)點(diǎn)組的當(dāng)前實(shí)際、所需和正式記錄的程序執(zhí)行能力,例如以將當(dāng)前正式能力調(diào)整為當(dāng)前所需能力。所述程序然后繼續(xù)至圖框535,以將由經(jīng)修改的所選計(jì)算節(jié)點(diǎn)組提供的當(dāng)前所需程序執(zhí)行能力指定為所選計(jì)算節(jié)點(diǎn)組的所更新的當(dāng)前正式記錄的程序執(zhí)行能力,并且進(jìn)一步引發(fā)圖框530中確定的程序執(zhí)行能力修改。在圖框535之后,所述程序繼續(xù)至圖框599并且返回。
[0085]圖6為能力修改歸因程序600的示例性實(shí)施方案的流程圖。所述程序可通過以下方式來提供,例如執(zhí)行圖1A和圖1B各自的PESSM模塊110和180,和/或圖3的PESSM模塊340,例如該程序可從圖4中的程序400的圖框475處開始。
[0086]在圖示實(shí)施方案中,所述程序開始于圖框605,其中其獲得了待進(jìn)行的能力修改歸因活動(dòng)的當(dāng)前所選計(jì)算節(jié)點(diǎn)組的指示。在圖框625中,所述程序然后識別關(guān)于自先前的時(shí)間(諸如先前針對所選計(jì)算節(jié)點(diǎn)組進(jìn)行的協(xié)調(diào)活動(dòng))以來發(fā)生的程序執(zhí)行能力可用性變化的信息。識別所述變化信息可包括例如檢索此前由PES能力維護(hù)管理器模塊作為監(jiān)測所選計(jì)算節(jié)點(diǎn)組的一部分來儲存的信息,但在其它實(shí)施方案中,所述程序600可動(dòng)態(tài)確定該信息(例如,通過動(dòng)態(tài)請求PES能力維護(hù)管理器模塊或其它監(jiān)測來源提供該信息)。
[0087]在圖框625之后,所述程序繼續(xù)至圖框630,以確定是否已發(fā)生任何此類能力可用性變化,否則,繼續(xù)至圖框699。否則,所述程序繼續(xù)至圖框635,以識別關(guān)于自先前的時(shí)間(諸如先前針對所選計(jì)算節(jié)點(diǎn)組進(jìn)行的協(xié)調(diào)活動(dòng))以來發(fā)生的程序執(zhí)行能力修改請求事件的信息。識別所述事件信息可包括例如檢索此前由PES系統(tǒng)管理器模塊作為向所選計(jì)算節(jié)點(diǎn)組提供功能的一部分來儲存的信息,例如參照圖4和圖5更詳細(xì)地討論。在圖框640中,例如根據(jù)事件的類型(例如代替不可用計(jì)算節(jié)點(diǎn)的自動(dòng)化系統(tǒng)操作、指定相應(yīng)的立即響應(yīng)的所接收的用戶指令等),所述程序然后確定直接引起相應(yīng)的可用性變化的所識別事件中的任何事件。
[0088]在圖框640之后,所述程序繼續(xù)至圖框645,以選擇圖框625中所識別的下一個(gè)可用性變化,從第一個(gè)開始。在圖框650中,所述程序然后確定該變化是否可直接歸因于圖框640中確定的個(gè)別事件之一,如果是,將該事件記錄為所選能力可用性變化的原因。否則,所述程序在圖框650中將所選能力可用性變化的原因歸因?yàn)閳D框640中未確定的其它所識別事件的組合。在圖框660中,所述程序然后確定是否存在更多能力可用性變化,如果是,返回至圖框645以選擇下一個(gè)此能力可用性變化。否則,所述程序繼續(xù)至圖框699并且返回。
[0089]圖7為程序執(zhí)行服務(wù)能力維護(hù)管理器程序700的示例性實(shí)施方案的流程圖。所述程序可通過以下方式來提供,例如執(zhí)行圖1A和圖1B各自的PESCMM模塊115和160,和/或圖3的PESCMM模塊345,例如以有助于監(jiān)測用戶的多組計(jì)算節(jié)點(diǎn),包括確定可從計(jì)算節(jié)點(diǎn)組獲得的實(shí)際程序執(zhí)行能力。在該圖示實(shí)施方案中,所述程序700結(jié)合提供代表多個(gè)用戶來執(zhí)行程序的程序執(zhí)行能力的程序執(zhí)行服務(wù)進(jìn)行操作,但在其它實(shí)施方案中,可以其它方式提供程序700的一些或所有功能。
[0090]在圖示實(shí)施方案中,所述程序開始于圖框705,其中已接收到開始收集關(guān)于一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)組的計(jì)算節(jié)點(diǎn)的信息的指示(例如連續(xù)地或者說是以重復(fù)的方式),雖然此處未示出,但在一些實(shí)施方案中,其它模塊和/或程序可動(dòng)態(tài)請求程序700以產(chǎn)生和提供特定的相關(guān)信息(例如關(guān)于特定的相關(guān)計(jì)算節(jié)點(diǎn)組的信息)。在圖框705中,所述程序收集一個(gè)或多個(gè)此類計(jì)算節(jié)點(diǎn)的性能特性信息,包括那些計(jì)算節(jié)點(diǎn)所屬的計(jì)算節(jié)點(diǎn)組的指示,以供以后用于產(chǎn)生所述計(jì)算節(jié)點(diǎn)組的聚合信息。所述信息可以各種方式產(chǎn)生,包括通過請求特定計(jì)算節(jié)點(diǎn)或相關(guān)模塊(例如,虛擬機(jī)計(jì)算節(jié)點(diǎn)的相關(guān)VM管理器組件)提供該信息來拖取此信息,通過此類計(jì)算節(jié)點(diǎn)和/或相關(guān)部件將該信息推送至程序700 (例如定期地;在某些類型的事件時(shí),諸如會使計(jì)算節(jié)點(diǎn)關(guān)閉或者說是變得不可用的檢測出的錯(cuò)誤狀態(tài);等),通過特定計(jì)算節(jié)點(diǎn)來監(jiān)測網(wǎng)絡(luò)流量和/或單個(gè)資源使用率;等。
[0091]所述程序然后繼續(xù)至圖框710,以確定一個(gè)或多個(gè)所選計(jì)算節(jié)點(diǎn)組的聚合性能特性信息并且儲存該所確定的信息以供以后使用,例如用于所有計(jì)算節(jié)點(diǎn)組、恰好收集了單獨(dú)的計(jì)算節(jié)點(diǎn)信息的計(jì)算節(jié)點(diǎn)組、已請求或最近尚未產(chǎn)生的聚合性能特性信息的計(jì)算節(jié)點(diǎn)組、其中單獨(dú)的計(jì)算節(jié)點(diǎn)信息可用于計(jì)算節(jié)點(diǎn)組中的每個(gè)計(jì)算節(jié)點(diǎn)的計(jì)算節(jié)點(diǎn)組等。應(yīng)當(dāng)理解到,聚合性能特性信息可以各種方式產(chǎn)生,包括當(dāng)僅部分信息可用于該組的計(jì)算節(jié)點(diǎn)時(shí),諸如推斷或者說是估算不可用的單獨(dú)的性能特性信息。另外,收集和/或聚合的特定性能特性信息可以各種方式而有所不同,例如以在某些實(shí)施方案中始終收集所有計(jì)算節(jié)點(diǎn)組的某些類型的信息,以根據(jù)特定計(jì)算節(jié)點(diǎn)組的所確定觸發(fā)器的指定標(biāo)準(zhǔn)來收集某些類型的信息等。此外,雖然圖框705-785在該實(shí)例中被示為以連續(xù)的方式來實(shí)施,但應(yīng)當(dāng)理解到,在一些實(shí)施方案中,各圖框相反地可以其它方式來實(shí)施。例如,在一些實(shí)施方案中,圖框705的信息收集活動(dòng)可在連續(xù)的基礎(chǔ)上或在接近連續(xù)的基礎(chǔ)上進(jìn)行,但圖框710和/或其它圖框中的聚合信息產(chǎn)生僅可定期進(jìn)行。
[0092]在圖框710之后,所述程序繼續(xù)至圖框715,以確定和儲存一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)組中的每個(gè)的當(dāng)前實(shí)際程序執(zhí)行能力信息,例如以反映當(dāng)前可用的一組計(jì)算節(jié)點(diǎn)的當(dāng)前數(shù)量和/或計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力的一種或多種其它度量,并且儲存所確定的信息以供以后使用。雖然此處未示出,但在一些實(shí)施方案和情況中,所述程序還可立即更新計(jì)算節(jié)點(diǎn)組的相應(yīng)的正式記錄的程序執(zhí)行能力,以反映計(jì)算節(jié)點(diǎn)組的所確定的當(dāng)前實(shí)際程序執(zhí)行能力,而在其它實(shí)施方案中,該程序會等待直到相應(yīng)的下一組協(xié)調(diào)活動(dòng)時(shí)才更新正式記錄的程序執(zhí)行能力。
[0093]在圖框720中,所述程序然后任選地確定對于任何計(jì)算節(jié)點(diǎn)組而言已被滿足的任何計(jì)算節(jié)點(diǎn)組的任何能力修改觸發(fā)器(例如,根據(jù)圖框705中收集的和/或圖框710中聚合的性能特性信息,和/或根據(jù)圖框715中確定的實(shí)際程序執(zhí)行能力信息),但在其它實(shí)施方案中,此觸發(fā)器滿足情況確定相反地可在聚合時(shí)段結(jié)束時(shí)進(jìn)行(諸如參考參照圖5更詳細(xì)地討論的相應(yīng)協(xié)調(diào)活動(dòng))。如果任何觸發(fā)器經(jīng)確定被滿足,則然后儲存關(guān)于此類被滿足的觸發(fā)器的信息以供以后使用。在一些實(shí)施方案和情況中,特定觸發(fā)器被滿足還可立即弓I發(fā)相關(guān)計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力修改,并且如果如此,則可引發(fā)此程序執(zhí)行能力修改活動(dòng),并且所述程序還可記錄將該被滿足的觸發(fā)器與所述程序執(zhí)行能力修改活動(dòng)關(guān)聯(lián)的因果關(guān)系信息,例如以供以后使用(參考圖6的程序600)。
[0094]以類似的方式,所述程序在圖框725中確定是否已引發(fā)任何計(jì)算節(jié)點(diǎn)組的任何計(jì)算節(jié)點(diǎn)以可用于計(jì)算節(jié)點(diǎn)組,但該初始化已失效或者說是未在指定時(shí)段(例如10分鐘)之內(nèi)完成,如果是,所述程序的圖示實(shí)施方案開始立即提供任何此類計(jì)算節(jié)點(diǎn)的替代計(jì)算節(jié)點(diǎn),并且所述程序還可記錄將該初始化計(jì)算節(jié)點(diǎn)不可用性作為所引發(fā)的替代活動(dòng)的原因的因果關(guān)系信息。在其它實(shí)施方案中,此類替代活動(dòng)相反地可能不以直接方式進(jìn)行(例如,相反地可連同修改程序執(zhí)行能力的其它請求一起聚合)和/或相反地可由圖4的程序400進(jìn)行。另外,作為引發(fā)此類不可用計(jì)算節(jié)點(diǎn)的替代活動(dòng)的一部分,所述程序還可采取動(dòng)作以終止不可用計(jì)算節(jié)點(diǎn)(例如,如果該節(jié)點(diǎn)仍在運(yùn)行但無響應(yīng))。
[0095]以類似的方式,所述程序在圖框730中任選地開始立即提供計(jì)算節(jié)點(diǎn)組中此前用作計(jì)算節(jié)點(diǎn)組的一部分但目前被確定為已失效或者說是變得不可用的任何計(jì)算節(jié)點(diǎn)的替代計(jì)算節(jié)點(diǎn),并且如果如此,所述程序還可記錄將該計(jì)算節(jié)點(diǎn)不可用性作為所引發(fā)的替代活動(dòng)的原因的因果關(guān)系信息。在其它實(shí)施方案中,此類替代活動(dòng)相反地可能不以直接方式進(jìn)行(例如,相反地可連同修改程序執(zhí)行能力的其它請求一起聚合)和/或可由圖4的程序400進(jìn)行,和/或可進(jìn)行可自動(dòng)引發(fā)特定計(jì)算節(jié)點(diǎn)組的程序執(zhí)行能力的立即變化的其它類型的自動(dòng)確定。另外,作為引發(fā)不可用計(jì)算節(jié)點(diǎn)的替代活動(dòng)的一部分,所述程序還可采取動(dòng)作以終止該不可用計(jì)算節(jié)點(diǎn)(例如,如果該節(jié)點(diǎn)仍在運(yùn)行但無響應(yīng))。此外,如其它地方更詳細(xì)地討論,當(dāng)確定是否要參照圖框725和/或730立即進(jìn)行替代活動(dòng)時(shí),所述程序可在一些實(shí)施方案中考慮其它因素,諸如將向或已向相關(guān)用戶收取費(fèi)用的時(shí)段、直至計(jì)劃進(jìn)行可影響替代活動(dòng)進(jìn)行可取性的下一次協(xié)調(diào)活動(dòng)之前的大量時(shí)間等。
[0096]在圖框730之后,所述程序繼續(xù)至圖框785,以任選地進(jìn)行任何內(nèi)務(wù)操作,包括視情況更新存儲信息。在圖框785之后,所述程序繼續(xù)至圖框795,以確定是否要繼續(xù),例如直到接收到終止的明確指示時(shí)。如果確定要繼續(xù),則所述程序返回至圖框705,否則,繼續(xù)至圖框799并且結(jié)束。雖然參照程序700所述的各種活動(dòng)在該實(shí)施方案中被示為通過與執(zhí)行程序400的模塊不同的模塊進(jìn)行,但在其它實(shí)施方案中,這兩個(gè)程序的一些或所有功能可由單個(gè)模塊執(zhí)行或者以其它方式組合。
[0097]應(yīng)當(dāng)理解到,在一些實(shí)施方案中,由上述程序提供的功能可以替代方式來提供,諸如分配在更多程序之間或合并于較少的程序中。類似地,在一些實(shí)施方案中,例如當(dāng)其它圖示的程序相反地分別缺乏或包括此類功能時(shí),或者當(dāng)改變所提供的功能數(shù)量時(shí),圖示的程序可提供與所述功能相比更多或更少的功能。另外,雖然各種操作可以被示為以特定的方式(例如串行或并行)和/或以特定的順序進(jìn)行,但本領(lǐng)域的技術(shù)人員將意識到,在其它實(shí)施方案中,這些操作可以其它順序和以其它方式進(jìn)行。本領(lǐng)域的技術(shù)人員還將意識到,上述數(shù)據(jù)結(jié)構(gòu)可以不同的方式結(jié)構(gòu)化,諸如通過使單個(gè)數(shù)據(jù)結(jié)構(gòu)分成多個(gè)數(shù)據(jù)結(jié)構(gòu)或者通過使多個(gè)數(shù)據(jù)結(jié)構(gòu)合并為單個(gè)數(shù)據(jù)結(jié)構(gòu)。類似地,在一些實(shí)施方案中,例如當(dāng)其它圖示的數(shù)據(jù)結(jié)構(gòu)相反地分別缺乏或包括此類信息時(shí),或者當(dāng)改變所儲存的信息數(shù)量或類型時(shí),圖示的數(shù)據(jù)結(jié)構(gòu)可儲存與所述信息相比更多或更少的信息。
[0098]第I條:一種用于程序執(zhí)行服務(wù)的配置計(jì)算系統(tǒng)中以確定提供給用戶的程序執(zhí)行能力的動(dòng)態(tài)修改的因果律的方法,所述方法包括:
[0099]在所述程序執(zhí)行服務(wù)的所述配置計(jì)算系統(tǒng)的控制下,所述程序執(zhí)行服務(wù)提供可被配置來執(zhí)行多個(gè)遠(yuǎn)程用戶的程序以換取向所述用戶收取的費(fèi)用的多個(gè)計(jì)算節(jié)點(diǎn),并且針對多個(gè)所述用戶中的每個(gè),
[0100]從以下用戶處接收信息,所述用戶指定用于執(zhí)行所述用戶的指示程序的計(jì)算節(jié)點(diǎn)的初始所需數(shù)量并且指定用于隨后引發(fā)對供所述用戶使用的計(jì)算節(jié)點(diǎn)的數(shù)量的自動(dòng)修改的多個(gè)數(shù)量修改觸發(fā)器,所述數(shù)量修改觸發(fā)器中的每個(gè)均包括用于確定所述數(shù)量修改觸發(fā)器是否被滿足的一個(gè)或多個(gè)標(biāo)準(zhǔn),并且如果所述數(shù)量修改觸發(fā)器是被滿足的,則包括待請求的指定的計(jì)算節(jié)點(diǎn)數(shù)量變化;
[0101]向所述用戶自動(dòng)確定用于執(zhí)行所述用戶的所述指示程序的一組所述多個(gè)計(jì)算節(jié)點(diǎn)中的多個(gè),所述多個(gè)計(jì)算節(jié)點(diǎn)具有初始所需計(jì)算節(jié)點(diǎn)數(shù)量,并且在第一時(shí)間提供所述多個(gè)計(jì)算節(jié)點(diǎn)以供所述用戶使用;
[0102]響應(yīng)于來自所述用戶的指令,引發(fā)所述指示程序的復(fù)本在所述組計(jì)算節(jié)點(diǎn)中的每個(gè)上的執(zhí)行;并且
[0103]在從所述第一時(shí)間至隨后的第二時(shí)間的一段時(shí)間期間,通過以下方式來自動(dòng)管理所述組計(jì)算節(jié)點(diǎn):
[0104]在所述時(shí)段期間,自動(dòng)監(jiān)測所述組計(jì)算節(jié)點(diǎn)以通過那些計(jì)算節(jié)點(diǎn)的操作來確定性能度量,并且根據(jù)所述確定的性能度量來自動(dòng)確定由所述用戶指定的所述數(shù)量修改觸發(fā)器中的至少一個(gè)被滿足;
[0105]在所述時(shí)段期間,從所述用戶處接收各自指示所述組計(jì)算節(jié)點(diǎn)的數(shù)量變化的動(dòng)態(tài)指定請求的一個(gè)或多個(gè)數(shù)量變化指令;
[0106]在所述第二時(shí)間自動(dòng)確定實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量,所述數(shù)量反映了在所述第二時(shí)間實(shí)際上可用以執(zhí)行所述用戶的程序的所述組計(jì)算節(jié)點(diǎn)的數(shù)量,至少部分地根據(jù)所述時(shí)段期間的所述組計(jì)算節(jié)點(diǎn)的多個(gè)可用性變化,在所述第二時(shí)間確定的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量不同于所述第一時(shí)間處的計(jì)算節(jié)點(diǎn)的初始所需數(shù)量,所述多個(gè)可用性變化中的至少一些具有向所述用戶收取的一項(xiàng)或多項(xiàng)相關(guān)費(fèi)用;
[0107]對于所述多個(gè)可用性變化的至少一個(gè)中的每個(gè)而言,將所述可用性變化的單個(gè)原因自動(dòng)歸因,所述單個(gè)原因?yàn)榻?jīng)確定被滿足的所述至少一個(gè)數(shù)量修改觸發(fā)器之一或來自所述用戶的所述一個(gè)或多個(gè)數(shù)量變化指令之一;
[0108]對于單個(gè)原因未自動(dòng)歸因的所述多個(gè)可用性變化中的至少另一個(gè)中的每個(gè)而言,所述至少另一個(gè)可用性變化不同于所述至少一個(gè)可用性變化,將多種可能原因的組合自動(dòng)歸因于所述可用性變化,所述多種可能原因彼此獨(dú)立,并且包括經(jīng)確定被滿足的所述至少一個(gè)數(shù)量修改觸發(fā)器中的一個(gè)或多個(gè)且包括來自所述用戶的所述一個(gè)或多個(gè)數(shù)量變化指令中的至少一個(gè);以及
[0109]提供所述至少一個(gè)可用性變化中的每個(gè)的所歸因的單個(gè)原因的指示和所述至少另一個(gè)可用性變化中的每個(gè)的所歸因的多個(gè)原因組合的指示,以便能夠?qū)⑺鲋辽僖恍┛捎眯宰兓南嚓P(guān)費(fèi)用歸于所述用戶。
[0110]第2條:根據(jù)第I條所述的方法,其中針對所述多個(gè)用戶之一,至少部分地根據(jù)所述一個(gè)用戶的所述組計(jì)算節(jié)點(diǎn)的數(shù)量的經(jīng)請求的增加,在所述第二時(shí)間確定的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量大于所述第一時(shí)間處的初始所需計(jì)算節(jié)點(diǎn)數(shù)量,所述經(jīng)請求的增加根據(jù)經(jīng)確定被滿足的所述至少一個(gè)數(shù)量修改觸發(fā)器的一個(gè)或多個(gè)中的每個(gè)和來自所述一個(gè)用戶的所述一個(gè)或多個(gè)數(shù)量變化指令中的至少一個(gè),其中自動(dòng)確定所述一個(gè)用戶的所述第二時(shí)間處的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量包括通過聚合所述一個(gè)或多個(gè)被滿足的數(shù)量修改觸發(fā)器的經(jīng)請求的增加和來自所述一個(gè)用戶的所述至少一個(gè)數(shù)量變化指令的經(jīng)請求的增加來確定待做出以增加所述一個(gè)用戶的所述組的計(jì)算節(jié)點(diǎn)數(shù)量的單次聚合修改,其中增加所述一個(gè)用戶的所述組的計(jì)算節(jié)點(diǎn)數(shù)量的所述確定的單次聚合修改為所述一個(gè)用戶的所述組的所述至少另一個(gè)可用性變化中的一個(gè),其中所述一個(gè)或多個(gè)被滿足的數(shù)量修改觸發(fā)器和來自所述一個(gè)用戶的所述至少一個(gè)數(shù)量變化指令均未被歸因?yàn)樗鲆粋€(gè)用戶的所述組的所述至少一個(gè)可用性變化中任何一個(gè)的單個(gè)原因,并且其中所述一個(gè)用戶的所述組的所述至少另一個(gè)可用性變化中的每個(gè)的多種可能原因的組合包括在所述時(shí)段期間針對所述一個(gè)用戶的所述計(jì)算節(jié)點(diǎn)組的可用性變化確定的并且未被歸因?yàn)樗鲋辽僖粋€(gè)可用性變化之一的單個(gè)原因的所有可能原因。
[0111]第3條:根據(jù)第2條所述的方法,其中所述程序執(zhí)行服務(wù)為網(wǎng)絡(luò)訪問服務(wù)使得所述遠(yuǎn)程用戶中的每個(gè)均通過一個(gè)或多個(gè)網(wǎng)絡(luò)來提供來自客戶計(jì)算設(shè)備的指令,其中具有所述相關(guān)費(fèi)用的所述一個(gè)用戶的所述組的所述至少一些可用性變化包括所述一個(gè)用戶的所述組計(jì)算節(jié)點(diǎn)的數(shù)量的一次或多次增加,并且其中所述一個(gè)用戶為在所述第一時(shí)間提供由所述一個(gè)用戶使用的所述多個(gè)計(jì)算節(jié)點(diǎn)支付第一費(fèi)用并且針對作為所述一個(gè)用戶的所述組的所述一次或多次數(shù)量增加的一部分來提供的每個(gè)附加計(jì)算節(jié)點(diǎn)支付一次或多次不同的第二費(fèi)用。
[0112]第4條:一種用于確定提供給用戶的程序執(zhí)行能力的動(dòng)態(tài)修改的因果律的計(jì)算機(jī)實(shí)現(xiàn)方法,所述方法包括:
[0113]在被配置來提供由多個(gè)用戶使用的程序執(zhí)行服務(wù)的一個(gè)或多個(gè)計(jì)算系統(tǒng)的控制下,所述程序執(zhí)行服務(wù)具有可被配置來執(zhí)行所述程序執(zhí)行服務(wù)的所述用戶的程序的多個(gè)計(jì)算節(jié)點(diǎn),
[0114]接收用于代表所述程序執(zhí)行服務(wù)的第一用戶來執(zhí)行一個(gè)或多個(gè)軟件程序的初始所需程序執(zhí)行能力的指示;
[0115]確定用于隨后引發(fā)對提供給所述第一用戶的程序執(zhí)行能力的自動(dòng)修改的多個(gè)能力修改觸發(fā)器,所述能力修改觸發(fā)器中的每個(gè)均包括用于確定所述能力修改觸發(fā)器是否被滿足的一個(gè)或多個(gè)標(biāo)準(zhǔn),并且如果所述能力修改觸發(fā)器是被滿足的,則包括待請求的指定類型的程序執(zhí)行能力修改;
[0116]自動(dòng)確定用于提供所述第一用戶的所述初始所需程序執(zhí)行能力的第一組所述多個(gè)計(jì)算節(jié)點(diǎn)中的多個(gè),并且使所述第一組的計(jì)算節(jié)點(diǎn)在第一時(shí)間可用以各自執(zhí)行所述第一用戶的一個(gè)或多個(gè)軟件程序;
[0117]自動(dòng)識別發(fā)生在所述第一時(shí)間和隨后的第二時(shí)間之間的一段時(shí)間期間并且各自能夠引起對所述第一組的多個(gè)計(jì)算節(jié)點(diǎn)提供的所述程序執(zhí)行能力的修改的多個(gè)獨(dú)立事件,所述多個(gè)事件包括經(jīng)確定被滿足的所述指定的能力修改觸發(fā)器中的至少一個(gè);
[0118]在所述第二時(shí)間自動(dòng)確定所述第一用戶可從所述第一組計(jì)算節(jié)點(diǎn)中獲得的實(shí)際程序執(zhí)行能力,至少部分地根據(jù)發(fā)生在所述第一時(shí)間和所述第二時(shí)間之間的時(shí)段期間的所述第一組的一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)的一個(gè)或多個(gè)可用性變化,所述第二時(shí)間處的實(shí)際程序執(zhí)行能力不同于在所述第一時(shí)間提供給所述第一用戶的所需程序執(zhí)行能力;
[0119]對于所述第一組的所述一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)的所述可用性變化中的每個(gè)而言,將所識別事件中的一個(gè)或多個(gè)自動(dòng)歸因?yàn)樗隹捎眯宰兓脑?,所述可用性變化中的至少一個(gè)具有原因,所述原因?yàn)楸舜霜?dú)立并且包括經(jīng)確定被滿足的所述至少一個(gè)指定的能力修改觸發(fā)器中的一個(gè)或多個(gè)的多個(gè)事件的組合;并且
[0120]提供一個(gè)或多個(gè)所述可用性變化中的每個(gè)的所述歸因的原因的指示,以便能夠進(jìn)行與所述歸因的原因相對應(yīng)的一個(gè)或多個(gè)進(jìn)一步動(dòng)作。
[0121]第5條:根據(jù)第4條所述的方法,其中所述多個(gè)事件還包括由所述第一用戶動(dòng)態(tài)指定以請求對所述第一組提供的所述程序執(zhí)行能力的指定修改的至少一個(gè)能力修改指令,并且其中被歸因?yàn)樗鲋辽僖粋€(gè)可用性變化之一的原因的多個(gè)事件的組合包括所述至少一個(gè)指定的能力修改指令中的一個(gè)或多個(gè)。
[0122]第6條:根據(jù)第4條所述的方法,其中所述可用性變化中的至少另一個(gè)具有為所述多個(gè)事件中的單個(gè)事件的所歸因的原因,所述至少另一個(gè)可用性變化不同于所述至少一個(gè)可用性變化。
[0123]第7條:根據(jù)第6條所述的方法,還包括:自動(dòng)確定所述單個(gè)事件為所述至少另一個(gè)可用性變化的所確定類型的原因,所述所確定類型的原因?yàn)橹苯釉蚧蜷g接原因,并且提供所述單個(gè)事件為所述至少另一個(gè)可用性變化的所述所確定類型的原因的指示。
[0124]第8條:根據(jù)第4條所述的方法,其中自動(dòng)確定所述實(shí)際程序執(zhí)行能力包括確定已發(fā)生的多個(gè)可用性變化,并且其中將所述一個(gè)或多個(gè)事件自動(dòng)歸因?yàn)樗隹捎眯宰兓械拿總€(gè)的原因包括識別各自為所述多個(gè)可用性變化之一的單個(gè)原因的一個(gè)或多個(gè)所述多個(gè)事件,并且將不為所述多個(gè)可用性變化之一的單個(gè)原因的所有所述多個(gè)事件聚合為不具有單個(gè)原因的所述多個(gè)可用性變化彼此的組合的一部分。
[0125]第9條:根據(jù)第4條所述的方法,其中對于所述至少一個(gè)可用性變化之一而言,將所述多個(gè)事件的組合自動(dòng)歸因?yàn)樗鲆粋€(gè)可用性變化的原因包括確定所述多個(gè)事件的組合為所述一個(gè)可用性變化的所確定類型的原因,所述所確定類型的原因?yàn)橹苯釉蚧蜷g接原因,并且其中提供所述一個(gè)或多個(gè)可用性變化中的每個(gè)的所述歸因的原因的所述指示包括提供所述多個(gè)事件的組合為所述一個(gè)可用性變化的所述所確定類型的原因的指示。
[0126]第10條:根據(jù)第4條所述的方法,其中所述多個(gè)獨(dú)立事件各自請求對所述第一組提供的所述程序執(zhí)行能力的修改,并且其中所述方法還包括:通過聚合所述多個(gè)事件的經(jīng)請求的修改并且在所述第二時(shí)間之前引發(fā)對所述第一組的所述確定的單次聚合修改來自動(dòng)確定將對所述第一組的程序執(zhí)行能力做出的單次聚合修改。
[0127]第11條:根據(jù)第10條所述的方法,其中所述多個(gè)事件還包括由所述第一用戶動(dòng)態(tài)指定以請求對所述第一組提供的所述程序執(zhí)行能力的指定修改的至少一個(gè)能力修改指令,其中所述確定的多個(gè)能力修改觸發(fā)器由所述第一用戶在所述第一時(shí)間之前指定,并且其中被歸因?yàn)樗鲋辽僖粋€(gè)可用性變化之一的原因的多個(gè)事件的組合包括所述至少一個(gè)指定的能力修改指令中的一個(gè)或多個(gè)。
[0128]第12條:根據(jù)第11條所述的方法,其中所述確定的單次聚合修改為所述一個(gè)可用性變化,其所述一個(gè)或多個(gè)指定的能力修改指令包括在被歸因?yàn)樗鲈虻慕M合中。
[0129]第13條:根據(jù)第10條所述的方法,其中所述第一組的程序執(zhí)行能力根據(jù)為所述第一組的一部分的計(jì)算節(jié)點(diǎn)的數(shù)量來測量,使得所述初始所需程序執(zhí)行能力為計(jì)算節(jié)點(diǎn)的初始所需數(shù)量,并且使得在所述第二時(shí)間確定的實(shí)際程序執(zhí)行能力為在所述第二時(shí)間可用作所述第一組的一部分的計(jì)算節(jié)點(diǎn)的實(shí)際數(shù)量,其中所述第一組的所述一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)的所述一個(gè)或多個(gè)可用性變化各自包括為所述第一組中不可用部分的一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)中的至少一個(gè)和添加至所述第一組的一個(gè)或多個(gè)新計(jì)算節(jié)點(diǎn)中的至少一個(gè),并且其中對所述第一組的所述確定的單次聚合修改為所述第一組計(jì)算節(jié)點(diǎn)的數(shù)量的所確定的變化。
[0130]第14條:根據(jù)第13條所述的方法,其中所述確定的單次聚合修改將通過指定數(shù)量的一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)來增加所述第一組計(jì)算節(jié)點(diǎn)的數(shù)量,其中所述確定的單次聚合修改為提供有所述歸因的原因的所述指示的所述一個(gè)或多個(gè)可用性變化中的一個(gè),并且其中所述方法還包括至少部分地根據(jù)所述引發(fā)的所確定的單次聚合修改進(jìn)行一個(gè)或多個(gè)進(jìn)一步動(dòng)作,所述動(dòng)作包括開始向所述第一用戶收取一項(xiàng)或多項(xiàng)費(fèi)用。
[0131]第15條:根據(jù)第4條所述的方法,其中提供有所述歸因的原因的所述指示的所述一個(gè)或多個(gè)可用性變化中的一個(gè)包括作為所述一個(gè)可用性變化的原因的至少一部分的所述多個(gè)事件中的至少第一個(gè),并且其中響應(yīng)于所述事件中的至少一個(gè)引起所述一個(gè)可用性變化和所述可用性變化中的至少一個(gè)由所述第一事件引起的請求來提供所述一個(gè)可用性變化的所述歸因的原因的所述指示。
[0132]第16條:根據(jù)第15所述的方法,其中從用戶處接收所述請求,并且其中提供所述一個(gè)可用性變化的所述歸因的原因的所述指示包括產(chǎn)生所述一個(gè)可用性變化的所述歸因的原因的人可讀的解釋并且提供所述產(chǎn)生的人可讀的解釋以顯示給所述用戶。
[0133]第17條:根據(jù)第4條所述的方法,還包括:對于發(fā)生在所述第二時(shí)間之后的一個(gè)或多個(gè)附加時(shí)段中的每個(gè)而言,將一個(gè)或多個(gè)附加所識別事件自動(dòng)歸因?yàn)榘l(fā)生在所述附加時(shí)段期間的可用性變化的原因,并且其中,對于作為發(fā)生在所述一個(gè)或多個(gè)附加時(shí)段中的一個(gè)時(shí)段期間的所述可用性變化中的一個(gè)變化的原因的一個(gè)所述附加所識別事件而言,所述一個(gè)附加所識別事件為發(fā)生在所述第一時(shí)間和所述第二時(shí)間之間的時(shí)段期間的所述可用性變化中的一個(gè)變化的結(jié)果。
[0134]第18條:根據(jù)第4條所述的方法,其中使所述第一組計(jì)算節(jié)點(diǎn)在所述第一時(shí)間可用以各自執(zhí)行所述第一用戶的所述一個(gè)或多個(gè)軟件程序包括自動(dòng)提供所述第一組計(jì)算節(jié)點(diǎn)中的每個(gè),并且包括自動(dòng)引發(fā)所述一個(gè)或多個(gè)軟件程序中的每個(gè)在所述第一組計(jì)算節(jié)點(diǎn)中的每個(gè)上的執(zhí)行。
[0135]第19條:根據(jù)第4條所述的方法,其中所述程序執(zhí)行服務(wù)為遠(yuǎn)離所述第一用戶的收費(fèi)性網(wǎng)絡(luò)訪問服務(wù),其中所述程序執(zhí)行服務(wù)提供以下兩者中的至少一者:用于遠(yuǎn)程計(jì)算系統(tǒng)中以通過一個(gè)或多個(gè)網(wǎng)絡(luò)以編程方式與所述程序執(zhí)行服務(wù)進(jìn)行交互的一個(gè)或多個(gè)應(yīng)用程序編程接口(API)和遠(yuǎn)程用戶通過所述一個(gè)或多個(gè)網(wǎng)絡(luò)來使用的圖形用戶界面,并且其中所述第一用戶至少部分地根據(jù)一個(gè)或多個(gè)所述可用性變化的所述歸因的原因來支付一項(xiàng)或多項(xiàng)費(fèi)用。
[0136]第20條:根據(jù)第4條所述的方法,其中所述程序執(zhí)行服務(wù)采用虛擬化技術(shù)使得所述多個(gè)計(jì)算節(jié)點(diǎn)對于多個(gè)物理計(jì)算系統(tǒng)中的每個(gè)而言包括由所述物理計(jì)算系統(tǒng)提供的各自能夠執(zhí)行至少一個(gè)程序的多個(gè)虛擬機(jī),其中所述第一組計(jì)算節(jié)點(diǎn)為裝載虛擬機(jī),并且其中所述第一用戶的所述一個(gè)或多個(gè)程序?yàn)樘摂M機(jī)映像的一部分。
[0137]第21條:一種計(jì)算機(jī)可讀介質(zhì),其內(nèi)容通過實(shí)施一種方法來配置計(jì)算系統(tǒng)以確定提供給用戶的程序執(zhí)行能力的動(dòng)態(tài)修改的因果律,所述方法包括:
[0138]在所述配置計(jì)算系統(tǒng)的控制下,在第一時(shí)間接收與第一用戶相關(guān)的第一組多個(gè)計(jì)算節(jié)點(diǎn)的指示,以提供用于代表所述第一用戶來執(zhí)行一個(gè)或多個(gè)軟件程序的初始程序執(zhí)行能力;
[0139]自動(dòng)識別發(fā)生在所述第一時(shí)間和隨后的第二時(shí)間之間并且各自具有所述第一組的程序執(zhí)行能力的相關(guān)所需修改的多個(gè)獨(dú)立事件;
[0140]在所述第二時(shí)間自動(dòng)確定所述第一用戶可從所述第一組計(jì)算節(jié)點(diǎn)中獲得的實(shí)際程序執(zhí)行能力,至少部分地根據(jù)所述第一組的一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)的一個(gè)或多個(gè)可用性變化,所述第二時(shí)間處的實(shí)際程序執(zhí)行能力不同于在所述第一時(shí)間提供的初始程序執(zhí)行能力;
[0141]將一個(gè)或多個(gè)原因自動(dòng)歸因于所述第一組的所述確定的可用性變化中的每個(gè),歸因于所述可用性變化中的至少一個(gè)的所述一個(gè)或多個(gè)原因?yàn)槎鄠€(gè)所述所識別的獨(dú)立事件的組合;以及
[0142]提供所述至少一個(gè)可用性變化中一個(gè)或多個(gè)的所述所歸因的一個(gè)或多個(gè)原因的指示。
[0143]第22條:根據(jù)第21條所述的計(jì)算機(jī)可讀介質(zhì),其中所述配置計(jì)算系統(tǒng)為提供多個(gè)計(jì)算節(jié)點(diǎn)的程序執(zhí)行服務(wù)的一部分,所述多個(gè)計(jì)算節(jié)點(diǎn)可被配置來執(zhí)行所述程序執(zhí)行服務(wù)的用戶的程序,其中所述第一組的多個(gè)計(jì)算節(jié)點(diǎn)為所述多個(gè)計(jì)算節(jié)點(diǎn)的子集,其中接收所述第一組的指示包括在所述第一時(shí)間之前從所述第一用戶處接收所述初始程序執(zhí)行能力的請求,并且在所述第一時(shí)間將所述第一組計(jì)算節(jié)點(diǎn)與所述第一用戶自動(dòng)關(guān)聯(lián)以用于將所述初始程序執(zhí)行能力提供給所述第一用戶,其中所述第一用戶在所述第一時(shí)間之前還指示一個(gè)或多個(gè)能力修改觸發(fā)以用于隨后引發(fā)對所述第一組的程序執(zhí)行能力的自動(dòng)修改,并且其中所述多個(gè)獨(dú)立事件包括經(jīng)確定被滿足的所述能力修改觸發(fā)器中的至少一個(gè)且包括由所述第一用戶動(dòng)態(tài)指定的至少一個(gè)能力修改指令。
[0144]第23條:根據(jù)第22條所述的計(jì)算機(jī)可讀介質(zhì),其中每個(gè)所述多個(gè)獨(dú)立事件的所述程序執(zhí)行能力的所述所需修改為經(jīng)請求的修改,其中所述方法還包括通過聚合至少一個(gè)被滿足的能力修改觸發(fā)器的經(jīng)請求的修改和來自所述第一用戶的所述至少一個(gè)能力修改指令的經(jīng)請求的修改來自動(dòng)確定待做出以提高所述第一組的程序執(zhí)行能力的單次聚合修改,并且在所述第二時(shí)間之前引發(fā)所述確定的單次聚合修改,其中所述確定的單次聚合修改為所述至少一個(gè)可用性變化之一,并且其中被歸因?yàn)樗龃_定的單次聚合修改的所述一個(gè)或多個(gè)原因的所述多個(gè)獨(dú)立事件的組合包括所述至少一個(gè)被滿足的能力修改觸發(fā)器和來自所述第一用戶的至少一個(gè)能力修改指令。
[0145]第24條:根據(jù)第21條所述的計(jì)算機(jī)可讀介質(zhì),其中所述計(jì)算機(jī)可讀介質(zhì)為以下兩者中的至少一者:儲存所述內(nèi)容的計(jì)算系統(tǒng)的存儲器和包括包含所述內(nèi)容的所產(chǎn)生的存儲數(shù)據(jù)信號的數(shù)據(jù)傳輸介質(zhì),并且其中所述內(nèi)容為在執(zhí)行時(shí)會使所述計(jì)算系統(tǒng)實(shí)施所述方法的指令。
[0146]第25條:一種被配置來確定用戶的程序執(zhí)行能力的動(dòng)態(tài)修改的因果律的計(jì)算系統(tǒng),包括:
[0147]一個(gè)或多個(gè)處理器;和
[0148]系統(tǒng)管理器模塊,在由所述一個(gè)或多個(gè)處理器中的至少一個(gè)執(zhí)行時(shí),針對所述多個(gè)用戶中的每個(gè),其被配置來通過以下方式管理網(wǎng)絡(luò)訪問服務(wù)的多個(gè)用戶的程序執(zhí)行能力:
[0149]確定待提供用于代表所述用戶來執(zhí)行一個(gè)或多個(gè)軟件程序的初始程序執(zhí)行能力,并且確定用于隨后引發(fā)對向所述用戶提供的所述程序執(zhí)行能力的自動(dòng)修改的一個(gè)或多個(gè)能力修改觸發(fā)器;
[0150]在第一時(shí)間將一組多個(gè)可用計(jì)算節(jié)點(diǎn)與所述用戶自動(dòng)關(guān)聯(lián),以用于將所述初始所需程序執(zhí)行能力提供給所述用戶;以及
[0151]在所述第一時(shí)間之后,自動(dòng)識別發(fā)生在所述第一時(shí)間和隨后的第二時(shí)間之間并且各自具有所述組的所述程序執(zhí)行能力的相關(guān)所需修改的多個(gè)獨(dú)立事件,所述多個(gè)事件包括經(jīng)確定被滿足的所述能力修改觸發(fā)器中的至少一個(gè);
[0152]自動(dòng)確定所述組的一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)的一個(gè)或多個(gè)可用性變化,所述可用性變化影響由所述組提供的所述程序執(zhí)行能力;
[0153]將一個(gè)或多個(gè)原因自動(dòng)歸因于所述組的所述確定的可用性變化中的每個(gè),歸因于所述可用性變化中的至少一個(gè)的所述一個(gè)或多個(gè)原因?yàn)槎鄠€(gè)所述所識別的獨(dú)立事件的組合,并且歸因于所述可用性變化中的至少另一個(gè)的所述一個(gè)或多個(gè)原因?yàn)樗鏊R別的獨(dú)立事件中的單個(gè)事件;并且提供所述組的所述確定的可用性變化中的一個(gè)或多個(gè)的所述所歸因的一個(gè)或多個(gè)原因的指示。
[0154]第26條:根據(jù)第25條所述的計(jì)算系統(tǒng),其中所述多個(gè)用戶之一的所述多個(gè)獨(dú)立事件還包括由所述一個(gè)用戶動(dòng)態(tài)指定的至少一個(gè)能力修改指令,其中所述系統(tǒng)管理器模塊還被配置來通過聚合所述至少一個(gè)被滿足的能力修改觸發(fā)器的所需修改和由所述一個(gè)用戶指定的所述至少一個(gè)能力修改指令的所需修改以自動(dòng)確定待做出以提高所述一個(gè)用戶的所述組的所述程序執(zhí)行能力的單次聚合修改,并且在所述第二時(shí)間之前引發(fā)對所述一個(gè)用戶的所述組的所述確定的單次聚合修改,其中所述確定的單次聚合修改為所述一個(gè)用戶的所述至少一個(gè)可用性變化之一,并且其中被歸因?yàn)樗龃_定的單次聚合修改的所述一個(gè)或多個(gè)原因的所述多個(gè)獨(dú)立事件的組合包括所述至少一個(gè)被滿足的能力修改觸發(fā)器和由所述一個(gè)用戶指定的所述至少一個(gè)能力修改指令。
[0155]第27條:根據(jù)第26條所述的計(jì)算系統(tǒng),其中所述一個(gè)用戶的所述確定的能力修改觸發(fā)器由所述一個(gè)用戶指定,其中所述網(wǎng)絡(luò)訪問服務(wù)為提供多個(gè)計(jì)算節(jié)點(diǎn)的程序執(zhí)行服務(wù),所述多個(gè)計(jì)算節(jié)點(diǎn)可被配置來執(zhí)行所述程序執(zhí)行服務(wù)的遠(yuǎn)程用戶的程序,并且其中所述多個(gè)用戶中的至少一個(gè)的每個(gè)的所述組的所述多個(gè)計(jì)算節(jié)點(diǎn)為所述多個(gè)計(jì)算節(jié)點(diǎn)的子集。
[0156]第28條:根據(jù)第25條所述的計(jì)算系統(tǒng),其中所述系統(tǒng)管理器組件包括由所述計(jì)算系統(tǒng)執(zhí)行的軟件指令。
[0157]第29條:根據(jù)第25條所述的計(jì)算系統(tǒng),其中針對所述多個(gè)用戶中的每個(gè),所述系統(tǒng)管理器組件由用于通過以下方式來管理所述網(wǎng)絡(luò)訪問服務(wù)的多個(gè)用戶的程序執(zhí)行能力的裝置組成:
[0158]確定待提供用于代表所述用戶來執(zhí)行一個(gè)或多個(gè)軟件程序的初始程序執(zhí)行能力,并且確定用于隨后引發(fā)對向所述用戶提供的所述程序執(zhí)行能力的自動(dòng)修改的一個(gè)或多個(gè)能力修改觸發(fā)器;
[0159]在第一時(shí)間將一組多個(gè)可用計(jì)算節(jié)點(diǎn)與所述用戶自動(dòng)關(guān)聯(lián),以用于將所述初始所需程序執(zhí)行能力提供給所述用戶;以及
[0160]在所述第一時(shí)間之后,自動(dòng)識別發(fā)生在所述第一時(shí)間和隨后的第二時(shí)間之間并且各自具有所述組的所述程序執(zhí)行能力的相關(guān)所需修改的多個(gè)獨(dú)立事件,所述多個(gè)事件包括經(jīng)確定被滿足的所述能力修改觸發(fā)器中的至少一個(gè);
[0161]自動(dòng)確定所述組的一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)的一個(gè)或多個(gè)可用性變化,所述可用性變化影響由所述組提供的所述程序執(zhí)行能力;
[0162]將一個(gè)或多個(gè)原因自動(dòng)歸因于所述組的所述確定的可用性變化中的每個(gè),歸因于所述可用性變化中的至少一個(gè)的所述一個(gè)或多個(gè)原因?yàn)槎鄠€(gè)所述所識別的獨(dú)立事件的組合,并且歸因于所述可用性變化中的至少另一個(gè)的所述一個(gè)或多個(gè)原因?yàn)樗鏊R別的獨(dú)立事件中的單個(gè)事件;并且提供所述組的所述確定的可用性變化中的一個(gè)或多個(gè)的所述所歸因的一個(gè)或多個(gè)原因的指示。
[0163]第30條:一種用于程序執(zhí)行服務(wù)的配置計(jì)算系統(tǒng)中以動(dòng)態(tài)修改用戶的程序執(zhí)行能力的方法,所述方法包括:
[0164]在所述程序執(zhí)行服務(wù)的所述配置計(jì)算系統(tǒng)的控制下,所述程序執(zhí)行服務(wù)提供可被配置來執(zhí)行多個(gè)遠(yuǎn)程用戶的程序的多個(gè)計(jì)算節(jié)點(diǎn),并且針對多個(gè)所述用戶中的每個(gè),
[0165]從以下用戶處接收信息,所述用戶指定用于執(zhí)行所述用戶的指示程序的計(jì)算節(jié)點(diǎn)的初始所需數(shù)量并且指定用于隨后引發(fā)對所述所需計(jì)算節(jié)點(diǎn)數(shù)量的自動(dòng)修改的一個(gè)或多個(gè)數(shù)量修改觸發(fā)器,所述數(shù)量修改觸發(fā)器中的每個(gè)均包括用于確定所述數(shù)量修改觸發(fā)器是否被滿足的一個(gè)或多個(gè)標(biāo)準(zhǔn),并且如果所述數(shù)量修改觸發(fā)器是被滿足的,則包括指定的計(jì)算節(jié)點(diǎn)數(shù)量變化;
[0166]自動(dòng)確定用于執(zhí)行所述用戶的所述指示程序的一組所述多個(gè)計(jì)算節(jié)點(diǎn)中的多個(gè),所述組的所述多個(gè)計(jì)算節(jié)點(diǎn)具有所述初始所需計(jì)算節(jié)點(diǎn)數(shù)量,并且在第一時(shí)間提供所述多個(gè)計(jì)算節(jié)點(diǎn)以供所述用戶使用;
[0167]響應(yīng)于來自所述用戶的一個(gè)或多個(gè)指令,引發(fā)所述指示程序的復(fù)本在所述組計(jì)算節(jié)點(diǎn)中的每個(gè)上的執(zhí)行,并且將所述初始所需計(jì)算節(jié)點(diǎn)數(shù)量指定為被記錄為所述用戶在所述第一時(shí)間可使用的正式的計(jì)算節(jié)點(diǎn)數(shù)量;以及
[0168]在從所述第一時(shí)間至隨后的第二時(shí)間的一段時(shí)間期間,通過以下方式來自動(dòng)管理所述組計(jì)算節(jié)點(diǎn):
[0169]在所述時(shí)段期間,自動(dòng)監(jiān)測所述組計(jì)算節(jié)點(diǎn)以通過所述計(jì)算節(jié)點(diǎn)的操作來確定性能特性,并且根據(jù)所述確定的性能特性來自動(dòng)確定由所述用戶指定的所述數(shù)量修改觸發(fā)器中的至少一個(gè)被滿足;
[0170]在所述時(shí)段期間,接收指示由所述用戶動(dòng)態(tài)指定的所述組計(jì)算節(jié)點(diǎn)的用戶指示的計(jì)算節(jié)點(diǎn)數(shù)量變化的至少一個(gè)指令;
[0171]在所述第二時(shí)間自動(dòng)確定經(jīng)修改的所需計(jì)算節(jié)點(diǎn)數(shù)量,至少部分地根據(jù)來自所述至少一個(gè)被滿足的數(shù)量修改觸發(fā)器的所述指定的計(jì)算節(jié)點(diǎn)數(shù)量變化以及所述用戶指示的計(jì)算節(jié)點(diǎn)數(shù)量變化,所述經(jīng)修改的所需計(jì)算節(jié)點(diǎn)數(shù)量包括自所述第一時(shí)間對所述所需計(jì)算節(jié)點(diǎn)數(shù)量的變化;
[0172]在所述第二時(shí)間自動(dòng)確定實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量,所述數(shù)量反映了在所述第二時(shí)間實(shí)際上可用以執(zhí)行所述用戶的程序的所述組計(jì)算節(jié)點(diǎn)的數(shù)量;
[0173]在所述第二時(shí)間,將所述用戶的所述正式的計(jì)算節(jié)點(diǎn)數(shù)量與所述經(jīng)修改的所需計(jì)算節(jié)點(diǎn)數(shù)量自動(dòng)協(xié)調(diào),所述協(xié)調(diào)包括通過采取動(dòng)作來自動(dòng)修改作為所述組的一部分的所述計(jì)算節(jié)點(diǎn)的數(shù)量,以將所述確定的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量改變?yōu)樗鼋?jīng)修改的所需計(jì)算節(jié)點(diǎn)數(shù)量;以及
[0174]提供所述組計(jì)算節(jié)點(diǎn)的所述經(jīng)修改的數(shù)量以供所述用戶使用,并且將所述經(jīng)修改的所需計(jì)算節(jié)點(diǎn)數(shù)量指定為所述用戶在所述第二時(shí)間可使用的正式的計(jì)算節(jié)點(diǎn)數(shù)量。
[0175]第31條:根據(jù)第30條所述的方法,其中針對所述多個(gè)用戶之一,至少部分地根據(jù)在從所述第一時(shí)間至所述第二時(shí)間的時(shí)段期間的變得不可用的所述一個(gè)用戶的所述組計(jì)算節(jié)點(diǎn)中的一個(gè)或多個(gè),在所述第二時(shí)間確定的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量小于所述第一時(shí)間處的正式的計(jì)算節(jié)點(diǎn)數(shù)量,其中在所述時(shí)段期間自動(dòng)監(jiān)測所述一個(gè)用戶的所述組計(jì)算節(jié)點(diǎn)包括反復(fù)確定所述一個(gè)用戶的當(dāng)前的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量,并且更新所述一個(gè)用戶的所述正式的計(jì)算節(jié)點(diǎn)數(shù)量以使所述更新的正式的計(jì)算節(jié)點(diǎn)數(shù)量與所述確定的當(dāng)前的實(shí)際計(jì)算節(jié)點(diǎn)數(shù)量一致,其中所述一個(gè)用戶的所述至少一個(gè)被滿足的數(shù)量修改觸發(fā)器為以下觸發(fā)器,其指定以根據(jù)所述一個(gè)或多個(gè)不可用計(jì)算節(jié)點(diǎn)的數(shù)量來增加所述一個(gè)用戶的所述組計(jì)算節(jié)點(diǎn),以便將所述第二時(shí)間處的正式的計(jì)算節(jié)點(diǎn)數(shù)量保持在由所述一個(gè)用戶指定的計(jì)算節(jié)點(diǎn)的初始所需數(shù)量,其中由所述一個(gè)用戶動(dòng)態(tài)指定的所述用戶指示的數(shù)量變化包括至少一個(gè)計(jì)算節(jié)點(diǎn)的計(jì)算節(jié)點(diǎn)初始所需數(shù)量的指示的減少量,其中在所述第二時(shí)間自動(dòng)確定所述一個(gè)用戶的所述經(jīng)修改的所需計(jì)算節(jié)點(diǎn)數(shù)量包括用所述一個(gè)或多個(gè)不可用計(jì)算節(jié)點(diǎn)來至少部分地抵消所述指示的減少量,并且其中所述一個(gè)用戶在所述第二時(shí)間可使用的正式的計(jì)算節(jié)點(diǎn)數(shù)量為由所述一個(gè)用戶指定的計(jì)算節(jié)點(diǎn)初始所需數(shù)量減去由所述一個(gè)用戶指定的所述指示的減少量。
[0176]第32條:根據(jù)第31條所述的方法,其中所述程序執(zhí)行服務(wù)為收費(fèi)性網(wǎng)絡(luò)訪問服務(wù),使得所述多個(gè)用戶各自為在所述第一時(shí)間提供由所述用戶使用的所述多個(gè)計(jì)算節(jié)點(diǎn)支付第一費(fèi)用,并且各自為在所述第二時(shí)間提供由所述用戶使用的所述組計(jì)算節(jié)點(diǎn)的經(jīng)修改的數(shù)量支付不同的第二費(fèi)用,所述第一和第二費(fèi)用各自至少部分地基于所述用戶的所述組計(jì)算節(jié)點(diǎn)的當(dāng)前數(shù)量。
[0177]第33條:一種用于動(dòng)態(tài)修改用戶的程序執(zhí)行能力的計(jì)算機(jī)實(shí)現(xiàn)方法,所述方法包括:
[0178]在被配置來提供由多個(gè)用戶使用的程序執(zhí)行服務(wù)的一個(gè)或多個(gè)計(jì)算系統(tǒng)的控制下,所述程序執(zhí)行服務(wù)具有可被配置來執(zhí)行所述程序執(zhí)行服務(wù)的所述用戶的程序的多個(gè)計(jì)算節(jié)點(diǎn),
[0179]接收指定用于代表所述程序執(zhí)行服務(wù)的第一用戶來執(zhí)行一個(gè)或多個(gè)軟件程序的初始所需程序執(zhí)行能力并且指定用于隨后引發(fā)對所述所需程序執(zhí)行能力的自動(dòng)修改的一個(gè)或多個(gè)能力修改觸發(fā)器的信息,所述能力修改觸發(fā)器中的每個(gè)均包括用于確定所述能力修改觸發(fā)器是否被滿足的一個(gè)或多個(gè)標(biāo)準(zhǔn),并且如果所述能力修改觸發(fā)器是被滿足的,則包括待請求的對所需程序執(zhí)行能力的指定類型的修改;
[0180]自動(dòng)確定用于提供所述第一用戶的所述初始所需程序執(zhí)行能力的第一組所述多個(gè)計(jì)算節(jié)點(diǎn)中的多個(gè),使所述第一組計(jì)算節(jié)點(diǎn)在第一時(shí)間可用以各自執(zhí)行所述第一用戶的一個(gè)或多個(gè)軟件程序,并且將所述初始所需程序執(zhí)行能力指定為被記錄為所述第一用戶在所述第一時(shí)間可使用的正式程序執(zhí)行能力。
[0181]在所述第一時(shí)間之后,監(jiān)測所述第一組計(jì)算節(jié)點(diǎn)以確定關(guān)于執(zhí)行所述一個(gè)或多個(gè)軟件程序的那些計(jì)算節(jié)點(diǎn)的一種或多種類型的性能特性的當(dāng)前值,所述監(jiān)測包括在所述第一時(shí)間之后的隨后的第二時(shí)間確定所述第一用戶可從所述第一組計(jì)算節(jié)點(diǎn)中獲得的實(shí)際程序執(zhí)行能力;
[0182]自動(dòng)確定以根據(jù)發(fā)生在所述第一時(shí)間和所述第二時(shí)間之間的一段時(shí)間期間的多個(gè)事件來修改所述第一用戶的所述所需程序執(zhí)行能力,所述多個(gè)事件至少部分地根據(jù)所述一種或多種性能特性類型的所述確定的當(dāng)前值包括經(jīng)確定被滿足的所述指定的能力修改觸發(fā)器中的至少一個(gè),并且包括由所述第一用戶動(dòng)態(tài)指定的至少一個(gè)能力修改指令,所述至少一個(gè)指定的能力修改觸發(fā)器和所述至少一個(gè)能力修改指令中的每個(gè)指示對所述所需程序執(zhí)行能力的指定修改;以及
[0183]將所述第一用戶可用的所述記錄的正式程序執(zhí)行能力與在所述第二時(shí)間確定的實(shí)際程序執(zhí)行能力和所述經(jīng)修改的所需程序執(zhí)行能力自動(dòng)協(xié)調(diào),協(xié)調(diào)所述記錄的正式程序執(zhí)行能力包括根據(jù)所述確定的實(shí)際程序執(zhí)行能力和所述經(jīng)修改的所需程序執(zhí)行能力來自動(dòng)修改作為所述第一組的一部分的計(jì)算節(jié)點(diǎn),使得所述經(jīng)修改的計(jì)算節(jié)點(diǎn)可用于提供所述經(jīng)修改的所需程序執(zhí)行能力,并且使得所述記錄的正式程序執(zhí)行能力被更新以反映所述提供的經(jīng)修改的所需程序執(zhí)行能力。
[0184]第34條:根據(jù)第33條所述的方法,其中所述第一組的程序執(zhí)行能力根據(jù)作為所述第一組的一部分的計(jì)算節(jié)點(diǎn)的數(shù)量來測量,使得所述初始所需程序執(zhí)行能力為計(jì)算節(jié)點(diǎn)的初始所需數(shù)量,在所述第二時(shí)間確定的實(shí)際程序執(zhí)行能力為在所述第二時(shí)間可用作所述第一組的一部分的計(jì)算節(jié)點(diǎn)的實(shí)際數(shù)量,修改所述所需程序執(zhí)行能力的自動(dòng)確定包括將所述經(jīng)修改的所需程序執(zhí)行能力確定為所述第一組計(jì)算節(jié)點(diǎn)的經(jīng)修改的所需數(shù)量,并且自動(dòng)修改作為所述第一組的一部分的計(jì)算節(jié)點(diǎn)包括將作為所述第一組的一部分的計(jì)算節(jié)點(diǎn)的實(shí)際數(shù)量改變?yōu)樗鼋?jīng)修改的所需數(shù)量。
[0185]第35條:根據(jù)第34條所述的方法,其中對所述至少一個(gè)指定的能力修改觸發(fā)器和所述至少一個(gè)能力修改指令中的每個(gè)的所述所需程序執(zhí)行能力的指定修改反映了所述第一組計(jì)算節(jié)點(diǎn)的所需數(shù)量的指示的數(shù)量變化,并且其中確定所述第一組的所述經(jīng)修改的所需程序執(zhí)行能力包括聚合所述至少一個(gè)指定的能力修改觸發(fā)器和所述至少一個(gè)能力修改指令的所述指示的數(shù)量變化,并且根據(jù)所述聚合數(shù)量變化來修改計(jì)算節(jié)點(diǎn)的初始所需數(shù)量。
[0186]第36條:根據(jù)第34條所述的方法,其中當(dāng)前值通過所述監(jiān)測確定的所述第一組計(jì)算節(jié)點(diǎn)的所述一種或多種類型的性能特性包括可用作所述第一組的一部分的計(jì)算節(jié)點(diǎn)的實(shí)際數(shù)量,其中所述監(jiān)測包括在所述第一和第二時(shí)間之間的時(shí)段期間的多個(gè)時(shí)間中的每個(gè)時(shí)間確定計(jì)算節(jié)點(diǎn)的當(dāng)前實(shí)際數(shù)量,并且其中協(xié)調(diào)所述記錄的正式程序執(zhí)行能力還包括將所述第一組計(jì)算節(jié)點(diǎn)的所述經(jīng)修改的所需數(shù)量指定為所述第一用戶在所述第二時(shí)間可使用的當(dāng)前正式程序執(zhí)行能力。
[0187]第37條:根據(jù)第33條所述的方法,其中所述第一組的程序執(zhí)行能力根據(jù)可從作為所述第一組的一部分的計(jì)算節(jié)點(diǎn)中獲得的多種類型的計(jì)算資源中的每一種來測量,并且其中自動(dòng)修改作為所述第一組的一部分的計(jì)算節(jié)點(diǎn)包括改變所述多種類型的計(jì)算資源中至少一種的總量,所述計(jì)算資源在所述計(jì)算節(jié)點(diǎn)的自動(dòng)修改之后可從作為所述第一組的一部分的計(jì)算節(jié)點(diǎn)中獲得。
[0188]第38條:根據(jù)第33條所述的方法,其中所述至少一個(gè)指定的能力修改觸發(fā)器中的每個(gè)的一個(gè)或多個(gè)標(biāo)準(zhǔn)基于所述一種或多種性能特性類型中至少一種的一個(gè)或多個(gè)給定值,并且其中所述方法還包括至少部分地根據(jù)所述至少一個(gè)指定的能力修改觸發(fā)器中的每個(gè)的一個(gè)或多個(gè)給定值與所述一種或多種性能特性類型的確定的當(dāng)前值之間的匹配情況來自動(dòng)確定所述至少一個(gè)指定的能力修改觸發(fā)器被滿足。
[0189]第39條:根據(jù)第38條所述的方法,其中所述至少一種性能特性類型對應(yīng)于所述第一組計(jì)算節(jié)點(diǎn)上的計(jì)算負(fù)荷,其中所述至少一個(gè)指定的能力修改觸發(fā)器被滿足的確定基于所述第一組計(jì)算節(jié)點(diǎn)上處于暫時(shí)增加狀態(tài)的計(jì)算負(fù)荷,其中自動(dòng)修改作為所述第一組的一部分的計(jì)算節(jié)點(diǎn)包括暫時(shí)增加可從所述第一組計(jì)算節(jié)點(diǎn)中獲得的實(shí)際程序執(zhí)行能力以便容納所述暫時(shí)增加狀態(tài)的計(jì)算負(fù)荷,并且其中所述方法還包括在所述實(shí)際程序執(zhí)行能力的暫時(shí)增加之后的隨后的第三時(shí)間自動(dòng)確定以降低所述第一組計(jì)算節(jié)點(diǎn)的暫時(shí)增加的實(shí)際程序執(zhí)行能力,從而反映所述計(jì)算負(fù)荷的暫時(shí)增加狀態(tài)的結(jié)束。
[0190]第40條:根據(jù)第38條所述的方法,其中所述至少一個(gè)性能特性類型包括可用作所述第一組的一部分的計(jì)算節(jié)點(diǎn)的實(shí)際數(shù)量,其中所述至少一個(gè)指定的能力修改觸發(fā)器被滿足的確定基于所述第一組計(jì)算節(jié)點(diǎn)的實(shí)際數(shù)量,所述實(shí)際數(shù)量已偏離計(jì)算節(jié)點(diǎn)的指定所需量,并且其中自動(dòng)修改作為所述第一組的一部分的計(jì)算節(jié)點(diǎn)包括所述第一組計(jì)算節(jié)點(diǎn)的已偏離的實(shí)際數(shù)量返回至計(jì)算節(jié)點(diǎn)的指定所需量。
[0191]第41條:根據(jù)第38條所述的方法,其中所述至少一個(gè)指定的能力修改觸發(fā)器之一的一個(gè)或多個(gè)標(biāo)準(zhǔn)基于以下中的一個(gè)或多個(gè):指示性能特性類型的確定的當(dāng)前值的閾值、指示性能特性類型的確定的當(dāng)前值隨時(shí)間變化的度量和多種性能特性類型的確定的當(dāng)前值的邏輯組合。
[0192]第42條:根據(jù)第33條所述的方法,其中所述多個(gè)事件還包括其中一個(gè)或多個(gè)標(biāo)準(zhǔn)基于一個(gè)或多個(gè)指定時(shí)間的被觸發(fā)的指定的能力修改觸發(fā)器之一,并且其中所述方法還包括至少部分地根據(jù)符合所述一個(gè)或多個(gè)指定時(shí)間的當(dāng)前時(shí)間來自動(dòng)確定所述一個(gè)指定的能力修改觸發(fā)器被滿足。
[0193]第43條:根據(jù)第33條所述的方法,其中所述多個(gè)事件還包括其中一個(gè)或多個(gè)標(biāo)準(zhǔn)基于由歷史數(shù)據(jù)確定的一種或多種模式的被觸發(fā)的指定的能力修改觸發(fā)器之一,并且其中所述方法還包括至少部分地根據(jù)與所述一種或多種模式中的至少一個(gè)相對應(yīng)的一種或多種性能特性類型的確定的當(dāng)前值來自動(dòng)確定所述一個(gè)指定的能力修改觸發(fā)器被滿足。
[0194]第44條:根據(jù)第33條所述的方法,其中所述多個(gè)事件還包括其中一個(gè)或多個(gè)標(biāo)準(zhǔn)基于將由在所述第一組計(jì)算節(jié)點(diǎn)上執(zhí)行的所述一個(gè)或多個(gè)軟件程序完成的工作量的一個(gè)或多個(gè)指示的被觸發(fā)的指定的能力修改觸發(fā)器之一,并且其中所述方法還包括至少部分地根據(jù)所獲得的關(guān)于將由所述一個(gè)或多個(gè)軟件程序完成的實(shí)際工作量的信息來自動(dòng)確定所述一個(gè)指定的能力修改觸發(fā)器被滿足。
[0195]第45條:根據(jù)第33條所述的方法,其中確定所述第一組的所述經(jīng)修改的所需程序執(zhí)行能力包括聚合對所述所需程序執(zhí)行能力的指示的修改,所述修改由所述至少一個(gè)指定的能力修改觸發(fā)器和所述至少一個(gè)能力修改指令中的每個(gè)指定,并且根據(jù)對所述所需程序執(zhí)行能力的聚合的指示修改來指定所述確定的經(jīng)修改的所需程序執(zhí)行能力。
[0196]第46條:根據(jù)第45條所述的方法,其中聚合對所述所需程序執(zhí)行能力的指示修改包括以下中的至少一個(gè):累積所述指示修改、用所述指示修改中的至少另一個(gè)修改來抵消所述指示修改中的至少一個(gè)、根據(jù)一個(gè)或多個(gè)選擇標(biāo)準(zhǔn)選擇所述指示修改中的一個(gè)并且采用與所述指示修改中的一個(gè)或多個(gè)相關(guān)的一個(gè)或多個(gè)優(yōu)先級。
[0197]第47條:根據(jù)第33條所述的方法,其中由所述第一用戶動(dòng)態(tài)指定并且包括在所述多個(gè)事件中的至少一個(gè)能力修改指令包括由所述第一用戶指定的單個(gè)能力修改指令,其中由所述第一用戶指定的能力修改指令優(yōu)先于經(jīng)確定被滿足的指定的能力修改觸發(fā)器,并且其中確定所述第一組的所述經(jīng)修改的所需程序執(zhí)行能力包括選擇由所述單個(gè)能力修改指令指定的對所述所需程序執(zhí)行能力的指示修改以用于代替所述至少一個(gè)指定的能力修改觸發(fā)器的指示修改。
[0198]第48條:根據(jù)第33條所述的方法,還包括所述第一用戶接收多個(gè)不同地理位置的說明,根據(jù)位于所述地理位置的所述第一組計(jì)算節(jié)點(diǎn)中的一個(gè)或多個(gè),所述地理位置各自需包括所述第一組計(jì)算節(jié)點(diǎn)的程序執(zhí)行能力的指示子集,并且其中自動(dòng)修改作為所述第一組的一部分的計(jì)算節(jié)點(diǎn)還根據(jù)所述接收的說明來進(jìn)行,使得所述經(jīng)修改的計(jì)算節(jié)點(diǎn)被修改以包括位于所述多個(gè)地理位置中每個(gè)位置處的第一組計(jì)算節(jié)點(diǎn)的程序執(zhí)行能力的指示子集。
[0199]第49條:根據(jù)第33條所述的方法,其中自動(dòng)修改作為所述第一組的一部分的計(jì)算節(jié)點(diǎn)包括用一個(gè)或多個(gè)其它計(jì)算節(jié)點(diǎn)來代替所述第一組計(jì)算節(jié)點(diǎn)中的一個(gè)或多個(gè),所述一個(gè)或多個(gè)其它計(jì)算節(jié)點(diǎn)各自具有與所述一個(gè)或多個(gè)替代的計(jì)算節(jié)點(diǎn)不同的量的可用程序執(zhí)行能力。
[0200]第50條:根據(jù)第33條所述的方法,其中使所述第一組計(jì)算節(jié)點(diǎn)在所述第一時(shí)間可用以各自執(zhí)行所述第一用戶的所述一個(gè)或多個(gè)軟件程序包括自動(dòng)提供所述第一組計(jì)算節(jié)點(diǎn)中的每個(gè),并且包括自動(dòng)引發(fā)所述一個(gè)或多個(gè)軟件程序中的每個(gè)在所述第一組計(jì)算節(jié)點(diǎn)中的每個(gè)上的執(zhí)行。
[0201 ] 第51條:根據(jù)第33條所述的方法,其中所述程序執(zhí)行服務(wù)為遠(yuǎn)離所述第一用戶的收費(fèi)性網(wǎng)絡(luò)訪問服務(wù),其中所述程序執(zhí)行服務(wù)提供以下兩者中的至少一者:用于遠(yuǎn)程計(jì)算系統(tǒng)中以通過一個(gè)或多個(gè)網(wǎng)絡(luò)以編程方式與所述程序執(zhí)行服務(wù)進(jìn)行交互的一個(gè)或多個(gè)應(yīng)用程序編程接口(API)和遠(yuǎn)程用戶通過所述一個(gè)或多個(gè)網(wǎng)絡(luò)來使用的圖形用戶界面,并且其中作為所述自動(dòng)協(xié)調(diào)的一部分,所述第一用戶為自動(dòng)修改作為所述第一組的一部分的計(jì)算節(jié)點(diǎn)支付一項(xiàng)或多項(xiàng)費(fèi)用。
[0202]第52條:根據(jù)第33條所述的方法,其中所述程序執(zhí)行服務(wù)采用虛擬化技術(shù)使得所述多個(gè)計(jì)算節(jié)點(diǎn)對于多個(gè)物理計(jì)算系統(tǒng)中的每個(gè)而言包括由所述物理計(jì)算系統(tǒng)提供的各自能夠執(zhí)行至少一個(gè)程序的多個(gè)虛擬機(jī),其中所述第一組計(jì)算節(jié)點(diǎn)為裝載虛擬機(jī),并且其中所述第一用戶的所述一個(gè)或多個(gè)程序?yàn)樘摂M機(jī)映像的一部分。
[0203]第53條:一種計(jì)算機(jī)可讀介質(zhì),其內(nèi)容通過實(shí)施一種方法來配置計(jì)算系統(tǒng)以動(dòng)態(tài)修改用戶的程序執(zhí)行能力,所述方法包括:
[0204]在所述配置計(jì)算系統(tǒng)的控制下,在第一時(shí)間接收與第一用戶相關(guān)的第一組多個(gè)計(jì)算節(jié)點(diǎn)的指示,以提供用于代表所述第一用戶來執(zhí)行一個(gè)或多個(gè)軟件程序的所需程序執(zhí)行能力;
[0205]在所述第一時(shí)間之后的隨后的第二時(shí)間自動(dòng)確定所述第一用戶可從所述第一組計(jì)算節(jié)點(diǎn)中獲得的實(shí)際程序執(zhí)行能力,至少部分地根據(jù)所述第一組的多個(gè)計(jì)算節(jié)點(diǎn)中的一個(gè)或多個(gè)的一個(gè)或多個(gè)可用性變化,所述第二時(shí)間處的實(shí)際程序執(zhí)行能力不同于在所述第一時(shí)間提供給所述第一用戶的所需程序執(zhí)行能力;
[0206]根據(jù)各自發(fā)生在所述第一時(shí)間之后并且各自指定所述所需程序執(zhí)行能力的指示修改的多個(gè)獨(dú)立事件,在所述第二時(shí)間自動(dòng)確定提供給所述第一用戶的經(jīng)修改的所需程序執(zhí)行能力,所述第二時(shí)間處的經(jīng)修改的所需程序執(zhí)行能力基于對所述多個(gè)獨(dú)立事件的指定的指示修改的聚合并且不同于在所述第一時(shí)間提供的指示的所需程序執(zhí)行能力;以及
[0207]在所述第二時(shí)間自動(dòng)修改作為所述第一組的一部分的計(jì)算節(jié)點(diǎn),以便將所述第二時(shí)間處的經(jīng)修改的所需程序執(zhí)行能力與所述第二時(shí)間處的確定的實(shí)際程序執(zhí)行能力協(xié)調(diào),所述經(jīng)修改的計(jì)算節(jié)點(diǎn)用于將所述經(jīng)修改的所需程序執(zhí)行能力提供給所述第一用戶。
[0208]第54條:根據(jù)第53條所述的計(jì)算機(jī)可讀介質(zhì),其中所述配置計(jì)算系統(tǒng)為提供多個(gè)計(jì)算節(jié)點(diǎn)的程序執(zhí)行服務(wù)的一部分,所述多個(gè)計(jì)算節(jié)點(diǎn)可被配置來執(zhí)行所述程序執(zhí)行服務(wù)的用戶的程序,其中所述第一組的多個(gè)計(jì)算節(jié)點(diǎn)為所述多個(gè)計(jì)算節(jié)點(diǎn)的子集,并且響應(yīng)于在所述第一時(shí)間之前從所述第一用戶處接收的所述所需程序執(zhí)行能力的請求,通過所述程序執(zhí)行服務(wù)在所述第一時(shí)間與所述第一用戶自動(dòng)相關(guān),其中所述第一用戶還指示用于隨后引發(fā)對所述所需程序執(zhí)行能力的自動(dòng)修改的一個(gè)或多個(gè)能力修改觸發(fā)器,并且其中所述確定的經(jīng)修改的所需程序執(zhí)行能力基于其的多個(gè)獨(dú)立事件包括經(jīng)確定被滿足的所述能力修改觸發(fā)器中的至少一個(gè)并且包括由所述第一用戶動(dòng)態(tài)指定的至少一個(gè)能力修改指令。
[0209]第55條:根據(jù)第54條所述的計(jì)算機(jī)可讀介質(zhì),其中所述一個(gè)或多個(gè)軟件程序在所述第一組的多個(gè)計(jì)算節(jié)點(diǎn)上執(zhí)行,以支持在并非所述第一組的一部分的至少一個(gè)計(jì)算系統(tǒng)上執(zhí)行的至少另一個(gè)軟件程序,并且其中經(jīng)確定被滿足的所述至少一個(gè)能力修改觸發(fā)器中的一個(gè)或多個(gè)各自具有基于所獲得的關(guān)于所述至少另一個(gè)軟件程序的執(zhí)行的狀態(tài)信息的一個(gè)或多個(gè)標(biāo)準(zhǔn)。
[0210]第56條:根據(jù)第54條所述的計(jì)算機(jī)可讀介質(zhì),其中所述程序執(zhí)行服務(wù)將在所述第一時(shí)間提供給所述第一用戶的指示的所需程序執(zhí)行能力記錄為所述第一用戶可在所述第一時(shí)間使用的初始正式程序執(zhí)行能力,其中所述方法還包括:從所述第一時(shí)間至所述第二時(shí)間的一段時(shí)間期間監(jiān)測所述第一組計(jì)算節(jié)點(diǎn)以識別對所述第一組的一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)的一個(gè)或多個(gè)可用性變化,并且更新所述第一用戶可用的所述程序執(zhí)行服務(wù)的記錄的正式程序執(zhí)行能力以便反映所述一個(gè)或多個(gè)可用性變化,其中所述第一用戶可用的所述程序執(zhí)行服務(wù)的記錄的正式程序執(zhí)行能力未通過在所述第二時(shí)間自動(dòng)確定所述經(jīng)修改的所需程序執(zhí)行能力進(jìn)行更新,并且其中還在所述第二時(shí)間進(jìn)行修改作為所述第一組的一部分的計(jì)算節(jié)點(diǎn)以便將所述第二時(shí)間處的記錄的正式程序執(zhí)行能力與所述第二時(shí)間處的經(jīng)修改的所需程序執(zhí)行能力協(xié)調(diào),協(xié)調(diào)所述記錄的正式程序執(zhí)行能力包括將所述第二時(shí)間處的經(jīng)修改的所需程序執(zhí)行能力確定為所述第一用戶可用的所述程序執(zhí)行服務(wù)的進(jìn)一步更新的記錄的正式程序執(zhí)行能力。
[0211]第57條:根據(jù)第53條所述的計(jì)算機(jī)可讀介質(zhì),其中所述計(jì)算機(jī)可讀介質(zhì)為以下兩者中的至少一者:儲存所述內(nèi)容的計(jì)算系統(tǒng)的存儲器和包括包含所述內(nèi)容的所產(chǎn)生的存儲數(shù)據(jù)信號的數(shù)據(jù)傳輸介質(zhì),并且其中所述內(nèi)容為在執(zhí)行時(shí)會使所述計(jì)算系統(tǒng)實(shí)施所述方法的指令。
[0212]第58條:一種被配置來動(dòng)態(tài)修改用戶的程序執(zhí)行能力的計(jì)算系統(tǒng),包括:
[0213]一個(gè)或多個(gè)處理器;和
[0214]系統(tǒng)管理器模塊,在由所述一個(gè)或多個(gè)處理器中的至少一個(gè)執(zhí)行時(shí),針對所述多個(gè)用戶中的每個(gè),其被配置來通過以下方式管理網(wǎng)絡(luò)訪問服務(wù)的多個(gè)用戶的程序執(zhí)行能力:
[0215]確定用于代表所述用戶來執(zhí)行一個(gè)或多個(gè)軟件程序的所需程序執(zhí)行能力,并且確定用于隨后引發(fā)對所述用戶的所述所需程序執(zhí)行能力的自動(dòng)修改的一個(gè)或多個(gè)能力修改觸發(fā)器;
[0216]在第一時(shí)間將一組多個(gè)可用計(jì)算節(jié)點(diǎn)與所述用戶自動(dòng)關(guān)聯(lián),以用于將所述確定的所需程序執(zhí)行能力提供給所述用戶;以及
[0217]在所述第一時(shí)間之后,在所述第一時(shí)間之后的隨后的第二時(shí)間自動(dòng)確定所述用戶可從所述組計(jì)算節(jié)點(diǎn)中獲得的實(shí)際程序執(zhí)行能力,所述第二時(shí)間處的實(shí)際程序執(zhí)行能力不同于在所述第一時(shí)間提供給所述用戶的所需程序執(zhí)行能力;
[0218]根據(jù)各自發(fā)生在所述第一時(shí)間之后并且各自具有所述所需程序執(zhí)行能力的相關(guān)修改的多個(gè)獨(dú)立事件,在所述第二時(shí)間自動(dòng)確定提供給所述用戶的經(jīng)修改的所需程序執(zhí)行能力,所述多個(gè)獨(dú)立事件包括經(jīng)確定被滿足的所述能力修改觸發(fā)器中的至少一個(gè)并且包括由所述用戶動(dòng)態(tài)指定的至少一個(gè)能力修改指令,所述第二時(shí)間處的經(jīng)修改的所需程序執(zhí)行能力基于對所述多個(gè)獨(dú)立事件的相關(guān)修改的聚合;以及
[0219]在所述第二時(shí)間自動(dòng)修改作為所述組的一部分的計(jì)算節(jié)點(diǎn),以便將所述第二時(shí)間處的經(jīng)修改的所需程序執(zhí)行能力與所述第二時(shí)間處的確定的實(shí)際程序執(zhí)行能力協(xié)調(diào),所述經(jīng)修改的計(jì)算節(jié)點(diǎn)用于將所述經(jīng)修改的所需程序執(zhí)行能力提供給所述用戶。
[0220]第59條:根據(jù)第58條所述的計(jì)算系統(tǒng),其中所述多個(gè)用戶之一的確定的所需程序執(zhí)行能力由所述一個(gè)用戶指示并且被確定為經(jīng)記錄為所述一個(gè)用戶在所述第一時(shí)間可使用的初始正式程序執(zhí)行能力,其中自動(dòng)確定所述一個(gè)用戶在所述第二時(shí)間可使用的實(shí)際程序執(zhí)行能力至少部分地基于在從所述第一時(shí)間至所述第二時(shí)間的一段時(shí)間期間監(jiān)測所述一個(gè)用戶的所述組計(jì)算節(jié)點(diǎn)來進(jìn)行以便識別一個(gè)或多個(gè)變化,監(jiān)測所述計(jì)算節(jié)點(diǎn)包括更新所述一個(gè)用戶可用的記錄的正式程序執(zhí)行能力以反映所述一個(gè)或多個(gè)變化,其中所述一個(gè)用戶可用的記錄的正式程序執(zhí)行能力未通過自動(dòng)確定所述第二時(shí)間處的經(jīng)修改的所需程序執(zhí)行能力進(jìn)行更新,并且其中還在所述第二時(shí)間修改作為所述組的一部分的計(jì)算節(jié)點(diǎn)以便將所述第二時(shí)間處的記錄的正式程序執(zhí)行能力與所述第二時(shí)間處的經(jīng)修改的所需程序執(zhí)行能力協(xié)調(diào),協(xié)調(diào)所述記錄的正式程序執(zhí)行能力包括將所述第二時(shí)間處的經(jīng)修改的所需程序執(zhí)行能力確定為所述第一用戶可用的進(jìn)一步更新的記錄的正式程序執(zhí)行能力。
[0221]第60條:根據(jù)第59條所述的計(jì)算系統(tǒng),其中所述一個(gè)用戶的所述確定的能力修改觸發(fā)器由所述一個(gè)用戶指定,其中所述網(wǎng)絡(luò)訪問服務(wù)為提供多個(gè)計(jì)算節(jié)點(diǎn)的程序執(zhí)行服務(wù),所述多個(gè)計(jì)算節(jié)點(diǎn)可被配置來執(zhí)行所述程序執(zhí)行服務(wù)的遠(yuǎn)程用戶的程序,并且其中所述多個(gè)用戶中的至少一個(gè)的每個(gè)的所述組的所述多個(gè)計(jì)算節(jié)點(diǎn)為所述多個(gè)計(jì)算節(jié)點(diǎn)的子集。
[0222]第61條:根據(jù)第58條所述的計(jì)算系統(tǒng),其中所述系統(tǒng)管理器模塊包括由所述計(jì)算系統(tǒng)執(zhí)行的軟件指令。
[0223]第62條:根據(jù)第58條所述的計(jì)算系統(tǒng),其中針對所述多個(gè)用戶中的每個(gè),所述系統(tǒng)管理器模塊由用于通過以下方式來管理網(wǎng)絡(luò)訪問服務(wù)的多個(gè)用戶的程序執(zhí)行能力的裝置組成:
[0224]確定用于代表所述用戶來執(zhí)行一個(gè)或多個(gè)軟件程序的所需程序執(zhí)行能力,并且確定用于隨后引發(fā)對所述用戶的所述所需程序執(zhí)行能力的自動(dòng)修改的一個(gè)或多個(gè)能力修改觸發(fā)器;
[0225]在第一時(shí)間將一組多個(gè)可用計(jì)算節(jié)點(diǎn)與所述用戶自動(dòng)關(guān)聯(lián),以用于將所述確定的所需程序執(zhí)行能力提供給所述用戶;以及
[0226]在所述第一時(shí)間之后,在所述第一時(shí)間之后的隨后的第二時(shí)間自動(dòng)確定所述用戶可從所述組計(jì)算節(jié)點(diǎn)中獲得的實(shí)際程序執(zhí)行能力,所述第二時(shí)間處的實(shí)際程序執(zhí)行能力不同于在所述第一時(shí)間提供給所述用戶的所需程序執(zhí)行能力;
[0227]根據(jù)各自發(fā)生在所述第一時(shí)間之后并且各自具有所述所需程序執(zhí)行能力的相關(guān)修改的多個(gè)獨(dú)立事件,在所述第二時(shí)間自動(dòng)確定提供給所述用戶的經(jīng)修改的所需程序執(zhí)行能力,所述多個(gè)獨(dú)立事件包括經(jīng)確定被滿足的所述能力修改觸發(fā)器中的至少一個(gè)并且包括由所述用戶動(dòng)態(tài)指定的至少一個(gè)能力修改指令,所述第二時(shí)間處的經(jīng)修改的所需程序執(zhí)行能力基于對所述多個(gè)獨(dú)立事件的相關(guān)修改的聚合;以及
[0228]在所述第二時(shí)間自動(dòng)修改作為所述組的一部分的計(jì)算節(jié)點(diǎn),以便將所述第二時(shí)間處的經(jīng)修改的所需程序執(zhí)行能力與所述第二時(shí)間處的確定的實(shí)際程序執(zhí)行能力協(xié)調(diào),所述經(jīng)修改的計(jì)算節(jié)點(diǎn)用于將所述經(jīng)修改的所需程序執(zhí)行能力提供給所述用戶。
[0229]根據(jù)前述內(nèi)容,應(yīng)當(dāng)理解到,盡管出于說明目的在本文中描述了具體實(shí)施方案,但可在不脫離本發(fā)明的精神和范圍的情況下做出各種修改。因此,本發(fā)明僅受所附權(quán)利要求及本文所提及要求的限制。另外,雖然本發(fā)明的某些方面在下文以某些權(quán)利要求的形式示出,但發(fā)明人以任何可用權(quán)利要求的形式考慮到本發(fā)明的各個(gè)方面。例如,雖然只有本發(fā)明的某些方面目前可被提及為體現(xiàn)于計(jì)算機(jī)可讀介質(zhì)中,其它方面可同樣得到體現(xiàn)。
【權(quán)利要求】
1.一種計(jì)算機(jī)實(shí)現(xiàn)的方法,包括: 通過被配置來提供程序執(zhí)行服務(wù)的一個(gè)或多個(gè)計(jì)算系統(tǒng)提供第一組多個(gè)計(jì)算節(jié)點(diǎn),所述第一組多個(gè)計(jì)算節(jié)點(diǎn)提供第一時(shí)間的程序執(zhí)行能力以執(zhí)行用戶的一個(gè)或多個(gè)軟件程序; 通過配置的所述一個(gè)或多個(gè)計(jì)算系統(tǒng)識別多個(gè)事件,每個(gè)事件能夠?qū)е滤龅谝唤M多個(gè)計(jì)算節(jié)點(diǎn)提供的程序執(zhí)行能力的修改,其中所述多個(gè)事件發(fā)生在當(dāng)所述第一組多個(gè)計(jì)算節(jié)點(diǎn)執(zhí)行所述一個(gè)或多個(gè)軟件程序時(shí)的第一時(shí)間與隨后的第二時(shí)間之間; 通過配置的所述一個(gè)或多個(gè)計(jì)算系統(tǒng)在所述第二時(shí)間處或所述第二時(shí)間之后,接收對與所述第一組中的計(jì)算節(jié)點(diǎn)在所述第二時(shí)間能夠提供給用戶的實(shí)際程序執(zhí)行能力有關(guān)的信息的請求,所述第二時(shí)間的實(shí)際程序執(zhí)行能力至少部分基于所述第一組中的一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)在所述第一時(shí)間與所述第二時(shí)間之間的可用性改變而與在所述第一時(shí)間提供的程序執(zhí)行能力有所不同;以及 通過配置的所述一個(gè)或多個(gè)計(jì)算系統(tǒng)響應(yīng)于所述請求提供對識別出的所述多個(gè)事件中的幾個(gè)事件的組合的指示,所述組合被歸因?yàn)樗隹捎眯愿淖兊脑颉?br> 2.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中對信息的所述請求是從用戶接收的,并且其中提供對識別出的所述幾個(gè)事件的組合的指示包括生成對所述可用性改變的所歸因原因的人可讀說明,并提供所生成的人可讀說明以向用戶顯示。
3.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中對信息的所述請求包括對所述可用性改變的指示以及關(guān)于哪些事件能夠被歸因?yàn)樗隹捎眯愿淖兊脑虻牟樵儭?br> 4.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中對信息的所述請求指定識別出的所述幾個(gè)事件中的一個(gè)或多個(gè)事件,并且包括與所指定的識別出的所述一個(gè)或多個(gè)事件導(dǎo)致哪些可用性改變有關(guān)的查詢。
5.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中識別出的所述多個(gè)事件包括在所述第一時(shí)間與所述第二時(shí)間之間由用戶指定的至少一個(gè)能力修改請求,用于對所述第一組多個(gè)計(jì)算節(jié)點(diǎn)提供的程序執(zhí)行能力進(jìn)行指定的修改,其中識別出的所述幾個(gè)事件包括指定的所述至少一個(gè)能力修改請求中的一個(gè)或多個(gè)能力修改請求。
6.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,還包括在第一時(shí)間處或在第一時(shí)間之前,從用戶接收指定了一個(gè)或多個(gè)限定的能力修改觸發(fā)器的配置信息,所述一個(gè)或多個(gè)限定的能力修改觸發(fā)器用于在隨后發(fā)生指定條件時(shí)發(fā)起對所述第一組多個(gè)計(jì)算節(jié)點(diǎn)提供的程序執(zhí)行能力的自動(dòng)修改,其中識別出的所述幾個(gè)事件包括確定至少一個(gè)所述限定的能力修改觸發(fā)器被滿足。
7.根據(jù)權(quán)利要求6所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中經(jīng)由用戶與所述程序執(zhí)行服務(wù)提供的圖形用戶界面之間的一個(gè)或多個(gè)交互來接收所述配置信息。
8.根據(jù)權(quán)利要求6所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中所述程序執(zhí)行服務(wù)提供由程序執(zhí)行服務(wù)的客戶端使用的應(yīng)用程序編程接口 API,其中從由用戶控制的執(zhí)行程序經(jīng)由API接收來自用戶的所述配置信息。
9.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中基于所述第一組中的部分計(jì)算節(jié)點(diǎn)的數(shù)量來測量所述第一組的程序執(zhí)行能力,使得在所述第一時(shí)間提供的程序執(zhí)行能力是計(jì)算節(jié)點(diǎn)的第一數(shù)量,在所述第二時(shí)間的實(shí)際程序執(zhí)行能力是計(jì)算節(jié)點(diǎn)的不同的第二能力,其中所述第一時(shí)間與所述第二時(shí)間之間的可用性改變包括所述第一組中的一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)變?yōu)椴豢捎没蛞粋€(gè)或多個(gè)附加計(jì)算節(jié)點(diǎn)被添加到所述第一組。
10.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,還包括針對所述第二時(shí)間之后的附加時(shí)段,將在所述附加時(shí)段發(fā)生的附加事件識別為在所述附加時(shí)段期間的附加可用性改變的原因。
11.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中所述用戶是程序執(zhí)行服務(wù)的多個(gè)用戶之一,其中程序執(zhí)行服務(wù)提供配置為執(zhí)行所述多個(gè)用戶的程序的幾個(gè)計(jì)算節(jié)點(diǎn),其中所述第一組多個(gè)計(jì)算節(jié)點(diǎn)是所述幾個(gè)計(jì)算節(jié)點(diǎn)的子集。
12.—種計(jì)算系統(tǒng),包括: 一個(gè)或多個(gè)處理器;以及 一個(gè)或多個(gè)模塊,當(dāng)通過所述一個(gè)或多個(gè)處理器中的至少一個(gè)處理器執(zhí)行所述一個(gè)或多個(gè)模塊時(shí),將所述至少一個(gè)處理器配置為: 將一組多個(gè)計(jì)算節(jié)點(diǎn)與用戶相關(guān)聯(lián),以用于在第一時(shí)間向用戶提供初始程序執(zhí)行能力; 識別多個(gè)事件,每個(gè)事件與由所述一組多個(gè)計(jì)算節(jié)點(diǎn)提供的程序執(zhí)行能力的指定修改相關(guān)聯(lián),其中當(dāng)所述一組多個(gè)計(jì)算節(jié)點(diǎn)執(zhí)行一個(gè)或多個(gè)軟件程序時(shí),在所述第一時(shí)間與隨后的第二時(shí)間之間發(fā)生所述多個(gè)事件; 在所述第二時(shí)間處或在所述第二時(shí)間之后,接收對與所述一組多個(gè)計(jì)算節(jié)點(diǎn)在所述第二時(shí)間提供給用戶的第二程序執(zhí)行能力有關(guān)的信息的請求,所述第二程序執(zhí)行能力至少部分基于所述一組多個(gè)計(jì)算節(jié)點(diǎn)中的一個(gè)或多個(gè)計(jì)算節(jié)點(diǎn)在所述第一時(shí)間與所述第二時(shí)間之間的可用性改變而與所述第一程序執(zhí)行能力有所不同;以及 至少部分基于所述請求提供對識別出的所述多個(gè)事件中的幾個(gè)事件的組合的指示,所述組合被確定為所述可用性改變的原因。
13.根據(jù)權(quán)利要求12所述的計(jì)算系統(tǒng),其中接收的所述請求包括對所述可用性改變的指示以及關(guān)于哪些事件能夠被歸因?yàn)橹付ǖ目捎眯愿淖兊脑虻牟樵儭?br> 14.根據(jù)權(quán)利要求12所述的計(jì)算系統(tǒng),其中接收的所述請求指定識別出的所述幾個(gè)事件中的一個(gè)或多個(gè)事件,并且包括對指定的所述一個(gè)或多個(gè)事件導(dǎo)致哪些可用性改變的查詢。
15.根據(jù)權(quán)利要求12所述的計(jì)算系統(tǒng),其中識別出的所述幾個(gè)事件包括通過所述一組多個(gè)計(jì)算節(jié)點(diǎn)提供給用戶的程序執(zhí)行能力的一個(gè)或多個(gè)自動(dòng)修改,其中所述第一或多個(gè)自動(dòng)修改中的至少一個(gè)自動(dòng)修改至少部分基于確定滿足了用戶先前指定的一個(gè)或多個(gè)能力修改標(biāo)準(zhǔn)。
【文檔編號】G06F9/50GK104331333SQ201410646174
【公開日】2015年2月4日 申請日期:2010年9月27日 優(yōu)先權(quán)日:2009年9月29日
【發(fā)明者】阿歷克斯·馬克林諾夫斯基, 布雷克·梅科, 茨蘭吉布·伯拉格海因, 克里斯托夫·R·科馬萊迪, 喬弗里·S·派爾, 約翰·W·海因特曼, 撒米特·洛海亞, 陳靚, 扎科里·S·穆斯格雷夫 申請人:亞馬遜技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
泽州县| 阿瓦提县| 武夷山市| 平泉县| 织金县| 莱阳市| 陵水| 靖安县| 类乌齐县| 衡阳市| 灵武市| 铁岭县| 南城县| 喀喇| 安平县| 牡丹江市| 上虞市| 古交市| 黄浦区| 庆元县| 边坝县| 大冶市| 称多县| 靖边县| 香河县| 清苑县| 平阳县| 腾冲县| 西安市| 三台县| 安化县| 漾濞| 永泰县| 眉山市| 九寨沟县| 岳池县| 鹤峰县| 洛南县| 和田市| 澄城县| 惠水县|