CN102511041A - Attributing causality to program execution capacity modifications and dynamically modifying program execution capacity - Google Patents

Attributing causality to program execution capacity modifications and dynamically modifying program execution capacity Download PDF

Info

Publication number
CN102511041A
CN102511041A CN2010800417861A CN201080041786A CN102511041A CN 102511041 A CN102511041 A CN 102511041A CN 2010800417861 A CN2010800417861 A CN 2010800417861A CN 201080041786 A CN201080041786 A CN 201080041786A CN 102511041 A CN102511041 A CN 102511041A
Authority
CN
China
Prior art keywords
user
executive capability
computing node
program
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2010800417861A
Other languages
Chinese (zh)
Other versions
CN102511041B (en
Inventor
阿历克斯·马克林诺夫斯基
布雷克·梅科
茨兰吉布·伯拉格海因
克里斯托夫·R·科马莱迪
乔弗里·S·派尔
约翰·W·海因特曼
撒米特·洛海亚
陈靓
扎科里·S·穆斯格雷夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Amazon Technologies Inc
Original Assignee
Amazon Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US12/569,744 external-priority patent/US8689225B2/en
Priority claimed from US12/569,723 external-priority patent/US8352609B2/en
Application filed by Amazon Technologies Inc filed Critical Amazon Technologies Inc
Priority to CN201410646174.5A priority Critical patent/CN104331333B/en
Priority to CN201410648530.7A priority patent/CN104331334B/en
Publication of CN102511041A publication Critical patent/CN102511041A/en
Application granted granted Critical
Publication of CN102511041B publication Critical patent/CN102511041B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/508Monitor

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)

Abstract

Techniques are described for managing program execution capacity, such as for a group of computing nodes that are provided for executing one or more programs for a user. In some situations, dynamic program execution capacity modifications for a computing node group that is in use may be performed periodically or otherwise in a recurrent manner, such as to aggregate multiple modifications that are requested or otherwise determined to be made during a period of time. The techniques may in some situations be used in conjunction with a fee-based program execution service that executes multiple programs on behalf of multiple users of the service.

Description

Law of causality is revised owing to the program executive capability and on-the-fly modified the program executive capability
Background technology
Many companies and other mechanism operate with the computer network of supporting its operation many computing systems are interconnected; Wherein for example said computing system colocated (for example; Part as localized network) or on the contrary be positioned at a plurality of different geographical (for example, connecting) via one or more special uses or public go-between.For example, the data center that the holds a large amount of interconnection computing systems nothing to be surprised at that become, such as by the operation of single mechanism and represent single mechanism the private data center and by as the physical operation of enterprise so that the shared data center of computational resource to be provided to client.The operator at some shared data centers provides access to netwoks, authority and safe installation to the hardware that each client had, and the operator of other public data center then provides " service (full service) comprehensively " facility of the hardware resource that comprises that also its client can use.Yet, along with the scale at typical data center and scope increase, provide, the task of domination and managing physical computational resource become complicated day by day.
The appearance of the Intel Virtualization Technology of commercial hardware provides some benefits about the managing large scale computational resource to a plurality of users with different demands, thereby makes various computational resources effectively and safely to be shared by a plurality of users.For example; Can make the single physical computing machine between a plurality of users, shared through one or more virtual machines (being provided by the single physical computing machine) are provided to each user such as those Intel Virtualization Technologies that provide by VMWare, XEN, Linux ' s KVM (" kernel level virtual machine ") or User-Mode Linux; Wherein every this virtual machine is the software simulation as the Different Logic computing system; The illusion that this logical calculated system provides to the user is that they are the unique operator and the keeper of given hardware computational resource, and application isolation and safety also are provided between each virtual machine simultaneously.
The accompanying drawing summary
Figure 1A and Figure 1B be illustrate to program carry out service a plurality of users can with the network chart of the program executive capability interactive exemplary of managing.
Fig. 2 A and Fig. 2 B illustrate the program executive capability of one group of a plurality of computing node of user are managed, for example also to on-the-fly modify the instance of available programs executive capability in every way in each time.
Fig. 3 is the block diagram that the exemplary of the computing system that is used to manage the program executive capability that provides to a plurality of users is shown.
Fig. 4 shows the process flow diagram that program is carried out the exemplary of service system manager programs.
Fig. 5 shows the process flow diagram of the exemplary of recursive facility coordinator.
Fig. 6 shows the process flow diagram that ability is revised the exemplary of attribution program.
Fig. 7 shows the process flow diagram that program is carried out the exemplary of service ability maintenance manager program.
Embodiment
The technology that the program executive capability of the program that is used to carry out one or more users is managed has been described.In at least some embodiments, the program executive capability of being managed comprises the one group of one or more computing node that supplies the user to be used to carry out one or more programs.In addition, can on-the-fly modify during use and user-dependent this set of calculated node, so that the amount of the program executive capability that leading subscriber can obtain from this set of calculated node.To (for example having various forms with being modified in each embodiment of user-dependent this set of calculated node; To revise the quantity of computing node in this group; For example through dynamically adding and/or the deletion computing node); And in each embodiment, can cause in every way (for example, based on by the dynamic instruction of user's appointment, based on the trigger of consumer premise justice satisfy the confirming automatically of situation, based on the automation mechanized operation of the service that this set of calculated node is provided etc.).Below comprise other details that on-the-fly modifies about the program executive capability that can from a set of calculated node, obtain.In addition; In at least some embodiments; These technology can combine to represent a plurality of clients of this service or program that other users carry out a plurality of programs to carry out service (" PES ") to use; Carry out service such as the access to netwoks program, it provides a plurality of computing nodes (a plurality of physical computing systems and/or the virtual machine that for example, in one or more physical computing system, provide) of the program that is used to carry out the long-distance user.In these technology some or all also can carry out service system manager module and/or program and carry out the embodiment of service ability maintenance manager module and implement automatically through program, as described in greater detail below.
As previously mentioned, in each embodiment, on-the-fly modifying of carrying out can have various forms and can cause in every way to a set of calculated node of one or more programs of being used to carry out the user.As an instance; The program executive capability of this set of calculated node can be at least in part through measuring for the quantity of a part of computing node of this group; And can (for example revise through the computing node quantity that changes this group; Improving the program executive capability, and reduce the program executive capability) through reducing computing node quantity through increasing computing node quantity.This type of computing node quantity is revised the some or all of computing nodes that can be used in (for example) this group and is provided and (for example maybe can obtain identical or similar quantity Calculation resource; Amount of ram, hard drive space, CPU performance period, the network bandwidth etc.) situation in, make the given percentage change of computing node quantity corresponding to the total computational resource of this group and the identical or similar percentage change of program executive capability.In other embodiments; In this set of calculated node some or all can one or more important way aspect the amount of its obtainable computational resource different (for example; If use two kinds or the configuration of more kinds of dissimilar computing node; If each computing node all is independent of other computing node configuration etc.) or otherwise different aspect the type of its program executive capability that provides (for example; According to the type of specialized hardware, software program etc.), but the program executive capability of this group on-the-fly modify really can be at least in part based on the quantity of revising this set of calculated node, or on the contrary can be (for example based on alternate manner; With one type computing node configuration change is another kind of type), discuss in more detail like other place.
In addition; In at least some embodiments and situation; The program executive capability of one group of one or more computing node can be different from the mode of the quantity of computing node and measure and revise; The total amount (for example, amount of ram, hard drive space, CPU performance period, the network bandwidth etc.) of the computational resource of one or more types that for example provide based on this group.In addition; In at least some embodiments; Measuring and specifying in the program executive capability of a set of calculated node and can consider other factors; Such as the geographic position of some or all of computing nodes, between the some or all of computing node mutual relationship (for example, by maximum geographic distance at the most or at least the minimal geographical separating distance, by maximum network time-delay at the most or at least the minimal network time-delay separate, be separated into two or more independently data center or other computing node set that can not lose efficacy simultaneously etc.), the availability of specialized hardware ability and/or software capability etc.Below comprise other details about measurement and designated program executive capability.
PES or other system that one set of calculated node of one or more programs of being used to carry out the user is managed can confirm automatically that how and when in every way this computing node group being carried out the program executive capability on-the-fly modifies.For example; In at least some embodiments and situation; PES or other system can direct mode carry out the program executive capability modification of some type; And the program executive capability of other type revise can regularly carry out in other words conj.or perhaps with mode repeatedly carry out (for example, so as to postpone and be aggregated in a period of time (for example beginning before revising) from carrying out the one or many polymerization to be made through request or repeatedly modification of otherwise confirming.If a plurality of program executive capability of polymerization are revised determined value in a period of time, then the information about polymerization modification determined value can be used for improving in every way the enforcement that the program executive capability is revised.For example; If the program executive capability of confirming for twice corresponding to the modification of opposite types (is for example revised; To increase and to reduce computing node quantity, increase and the available total internal memory of minimizing etc.); Then twice modification can be carried out polymerization in every way, for example select partially or completely to cancel out each other through warp, or opposite to selecting the higher priority in twice pending modification to replace another time modification.In addition; If program executive capability that twice or more times are confirmed corresponding to the modification of similar or complementary types (is for example revised; So that computing node quantity increases specified amount, make available total internal memory increase specified amount etc. comprehensively comprehensively); Then those modification polymerizations likewise in every way of confirming (for example; The modification of confirming with the single of selecting to meet some specified value, such as maximum modification, minimal modifications, have the modification of limit priority, the modification of at first confirming, the modification confirmed at last etc.; To accumulate various definite modifications and to use the index word of accumulating; Deng).Below comprise about confirming how and when to make other details that each class method executive capability is revised.
In addition; A set of calculated node of representative of consumer being carried out one or more programs when PES or other system dynamically carries out the program executive capability when revising, and PES or other system can further carry out law of causality information or other attribution of responsibility of various operations with program executive capability modification that will be specific.Attribution of responsibility can comprise the particular event that (for example) identification has taken place in the relevant period; Wherein each incident can cause that all the program executive capability on-the-fly modifies, and with one in these incidents or many owing to during this period the program executive capability of carrying out afterwards in on-the-fly modifying some or all.For example; In at least some embodiments and situation; Some program executive capability on-the-fly modify separately and can (for example be caused by single particular event; If this set of calculated node failure becomes unavailable in other words conj.or perhaps, then system starts to this group immediately automatically provides alternative computing node, and the computing node unavailability becomes and causes that directly system's auto-action is to provide the individual event that substitutes computing node simultaneously).In at least some embodiments and situation; Other program executive capability on-the-fly modifies the combination that is attributable to a plurality of incidents separately; Each part in these incidents all helps or has the ability of helping (for example to revise; If a plurality of independent events need in each comfortable a period of time or indicate the computing node quantity of this group to increase; And when this period finishes, to increase the quantity of single computing node, each independent event becomes and causes indirectly that jointly the follow-up auto-action of system is to increase a plurality of incidents of computing node quantity these incidents simultaneously through polymerization).
The attribution of responsibility that the specific program executive capability of carrying out with user-dependent computing node group is on-the-fly modified can have special benefit under following situation; For example revise at least some program executive capability and when the user charges (for example, if PES or other system for since provide this group each computing node, program executive capability each other tolerance and/or based on other according to charging system to the consumption user charge).Under this type of situation; The user can receive and check about on-the-fly modifying the information of corresponding expense with the specific program executive capability; And can receive and check relevant attribution of responsibility information, so that the user can confirm reason and appropriateness that those program executive capability on-the-fly modify.In at least some these type of embodiments, attribution of responsibility information can people's readable format produces so that show to the user, so that the user can understand the explanation why each auto-action is taked by PES included in people's readable information or other system.In other embodiments, also can use this type of attribution of responsibility information by various alternate manners (comprising PES or other system) through starting other operation automatically.In addition; In at least some embodiments; Can produce and/or use attribution of responsibility information in response to all kinds of inquiries that receive from user or other source, these inquiries are such as being to cause that indication takes place one group of one or more computing node availability specific program executive capability is revised or the request of the reason of other variation and/or about which (repeatedly) program executive capability is revised or (a plurality of) change in availability of other computing node group is caused by the incident of one or more indications request about discerning which (a plurality of) incident.Below comprise other details about the attribution of responsibility information of confirming to on-the-fly modify with the service routine executive capability.
Under various situation, being used for the said technology that automatic supervisory routine executive capability on-the-fly modifies can provide various benefits.For example; On-the-fly modify to take all factors into consideration through request or definite program executive capability through polymerization is a plurality of; Perhaps, PES or other system can optimize how to carry out the polymerization modification; And with the minimize variations repeatedly of computing node, this can make the some or all of computing nodes that carry out extra variation temporarily unavailable in a period of time.In addition; But user's predefine is based on all kinds of triggers of the Performance Characteristics of a set of calculated node; Simultaneously when certain triggers is satisfied; Automatically improving or reduce the program executive capability according to circumstances (for example, improves the program executive capability of a set of calculated node with passive (reactively), thereby satisfies the temporary increase of the calculated load of computing node group; Initiatively (proactively) improves or reduces the program executive capability of a set of calculated node; Thereby the anticipated demand and/or the satisfied anticipated demand that is about to occur that has the program executive capability now that are about to occur that satisfy other program executive capability lack, and for example basis is about the time dependent trend of the historical data of the repeated use pattern of particular performance characteristics and/or instruction program executive capability; Deng).Perhaps; The user can hope that the program executive capability with a set of calculated node (for example remains near specified level or its; The required constant of the appointment of computing node); And can carry out various modifications automatically the available programs executive capability is remained on this specified level (for example, returning to this appointment aequum) to this set of calculated node will depart from the actual computation number of nodes of specifying aequum.For example the different duplicates of the execution of each in this set of calculated node same program (for example; With alternative form) as the total calculating load in this group; And during the workload that the quantity of revising computing node is handled by each computing node with management; Can use this type of technology; In other words conj.or perhaps these technology being used for each computing node of one group does not carry out in the situation of different duplicates of same program (for example, if the different subclass of this set of calculated node are carried out the duplicate of distinct program separately, for example so that some computing node is carried out application server programs and make other computing node carry out relevant database server program separately; If some in these computing nodes or all such as the different piece of implementing single program with distributed way; Deng).In addition; When group is added the additional calculations node; PES or other system also can randomly take other action in some situation at least; The computing node that is for example added to provide prepares to carry out one or more programs, or on the computing node that is added, further causes one or more program implementation automatically.
As previously mentioned, but user's predefine all kinds of triggers relevant with the program executive capability that on-the-fly modifies many set of calculated node, and the corresponding program executive capability robotization that those triggers can be used for causing user's computing node group subsequently on-the-fly modifies.As an instance; The trigger of the specific aequum of definable appointment computing node or the required total amount of one or more computational resources; For example it can be used for corresponding computing node group is remained on required computing node quantity or required computational resource total amount automatically, or is used to change the computing node quantity or the computational resource total amount (if satisfying specified value) of appointment on the contrary.In other situation; Definable is specified the trigger specific absolute or that change relatively of the computing node quantity or the total amount of one or more computational resources; If for example the Performance Characteristics of one or more indications of computing node group reaches assign thresholds or perhaps satisfies specified value; Then it can be triggered and (for example, remain in the specified scope of set period; The expression particular tendency, such as the appointment variable quantity in the set period, or such as specific " acceleration (acceleration) " or rate of change; Meet or corresponding to one or more designated modes the historical data of the repeated use pattern of representation program executive capability (for example from); Satisfy other combination of the appointment logical OR value of multiple Performance Characteristics, for example can use logical operator (such as AND, NOT, OR etc.) and/or otherwise with its combination; Deng).In other embodiment and situation; Predefined trigger can otherwise be satisfied according to the information of the Performance Characteristics that does not belong to the computing node group (for example, based on the current time that meets one or more fixed times (for the part of the standard of certain triggers or all); Be based on the status information of one or more programs of carrying out on the current computing node group of measuring with the mode that is different from Performance Characteristics, such as the current calculated load of representing as workload known in other words conj.or perhaps by (for example) or that expectation is accomplished by one or more programs through arrangement; Performance Characteristics or other status information based on one or more other executive routines of not carrying out by current computing node group; If mutual these programs of supporting in other words conj.or perhaps of for example current computing node group and other executive routine; So that when the calculated load on other executive routine increases or reduces, for example improve the program executive capability of current computing node group; Deng).This type of Performance Characteristics can based on the one or more any measurable attribute in this set of calculated node or with corresponding other yardstick of the operation of these nodes; Comprise following nonexcludability inventory item: the absolute or relative use amount of one or more computational resources of single computing node (for example, the percentage amounts of employed free memory or cpu cycle utilization factor, the employed network bandwidth absolute magnitude etc.); Definitely or relatively total use amount of one or more computational resources of all these set of calculated nodes; In response to measuring from absolute or relative time delay (latency) or other delay (delay) in the communication of outside computing system; Absolute or the relative inefficacy amount of computing node in accomplishing one or more required actions; Deng.In addition; In at least some embodiments and situation; The situation that satisfies of trigger is not that the specific program executive capability that the direct appointment of this trigger will be taken place when being satisfied is revised; But can make appointing system or module obtain notice, and this system or module can be asked to carry out specific program executive capability and revised that (for example, unaltered predefined ability is revised; The ability of for example dynamically confirming when notifying based on condition is at that time revised; Deng).In addition; In some embodiments; PES or other system can carry out various operations to monitor a set of calculated node; So that confirm the some or all of Performance Characteristicses of the trigger relevant with this group, or can be otherwise from the Performance Characteristics of another source this type of monitoring of acquisition (for example, from the third party software of monitoring said computing node, from the computing node execution to monitor this computing node and randomly to report the software etc. of monitoring information).In addition; In some embodiments; PES or other system can have the system definition trigger that the initiator executive capability on-the-fly modifies when satisfying the indication trigger criteria of trigger, or can under particular cases, otherwise confirm the computing node group is made the variation of some type automatically.
Specify the specific absolute or variation relatively of the computing node quantity or the total amount of one or more computational resources when the trigger of definition; And when confirming to satisfy one or more specified value of trigger of definition automatically based on the present case of corresponding computing node group, PES or other system can determine whether automatically that with how the program executive capability of trigger being carried out appointment revises.For example; Can carry out the designated program executive capability of some type immediately (for example revises; Stop using the request of one or more computing nodes, specified the request of the trigger that is used for implementing immediately etc. based on the user); Be deferred to the polymerization period when finishing and can the designated program executive capability of other type be revised, a part of revising with the repeatedly program executive capability that it is regarded as the polymerization that request is confirmed in other words conj.or perhaps during this period.Similarly; The type that for example on-the-fly modifies based on the program executive capability, based on from the user immediately or the explicit request of postpone implementing etc.; Can confirm by the program executive capability of user's dynamic requests revise (for example, via GUI, the perhaps graphic user interface of PES or other system; Through user program via the API of API or PES or other system of definition; Deng) to carry out immediately and/or temporary delay and polymerization in a similar fashion.In addition, when confirming how to manage the combination of definite repeatedly program executive capability modification, in some cases, different priority can be relevant with the different modifications of confirming.If so; For example for (for example giving the priority different with the trigger that is satisfied; User's request of dynamic appointment higher or lower priority) or other user instruction, the dissimilar warp of giving different priorities are confirmed (for example to revise; For for request that the reduction program executive capability of giving higher priority is compared in the request that improves the program executive capability) etc., this type of priority can be assessed in every way.Below comprise about using other details of user-defined trigger and definite Performance Characteristics.
In addition; In at least some embodiments; Based on a plurality of attributes of following the trail of and using corresponding computing node group; In other words conj.or perhaps based on separately all with this group in the relevant controllable parameter of one or more computing nodes, PES or other system can manage regularly the definite program executive capability modification of the repeatedly warp of polymerization repeatedly in other words conj.or perhaps.As an instance; With the computing node quantity of computing node group as with the corresponding yardstick of program executive capability of this computing node group; PES or other system can keep and use at least three kinds of tolerance that are mutually related to this computing node group; Be described below: the required computing node quantity of computing node group; For example when starting this computing node group, the associated user can carry out initial setting to it, and this quantity can be asked to revise according to the user who satisfies situation and/or dynamically appointment of trigger; The actual computation number of nodes of current available computing node in this group (for example, through confirming) to monitoring continuously or repeatedly of this set of calculated node is next; Computing node quantity (for example, confirm, and randomly upgrade through monitoring continuously or repeatedly frequently) with the offical record of current available computing node in this group as causing one or many program executive capability the last time and on-the-fly modify time.The a plurality of attributes of this type of of said computing node group (for example can be used for quantity that (for example) measure actual quantity continuously or times without number and upgrade offical record thus in every way; Based on this set of calculated node is monitored); And being used for regular the trial upgrades the quantity of nearest offical record to meet current requirement (for example, when considering how and whether will confirm that modification is made up to the warp of repeatedly polymerization).
As previously mentioned, PES or other system can further carry out law of causality information or other attribution of responsibility of various operations so that the specific program executive capability of making is on-the-fly modified.For example; As previously mentioned; The traceable corresponding incident of request that on-the-fly modifies with the program executive capability computing node group; The dynamic instruction and the predefined trigger that comprise the user's appointment that is received through confirming automatically to be satisfied, and the action of being taked automatically by PES or other system in some embodiments is (for example, based on the monitoring of carrying out; If for example confirm that computing node is frozen or perhaps be not useable for carrying out required activity, close or perhaps stop computing node is used as the part of its current computing node group automatically).Similarly, the actual change of the program executive capability of pursuitmeter operator node group likewise, such as with event and/or the corresponding variation of other capacity variation (for example, computing node lost efficacy the disabled example that becomes in other words conj.or perhaps).As an instance, can the variety of event relevant information be stored in first database table, and can with about the various information storage of capacity variation or other change in availability in second database table.If the relation between identification particular event and the specific change in availability (for example; Particular event causes specific change in availability to take place immediately), then can be through identical pass knot relevant identifier is tied with preserve the corresponding pass of following the trail of between said incident and the change in availability about the out of Memory of this incident and this change in availability.Can cause specific change in availability alone or in combination but law of causality not in other situation owing to individual event in a plurality of incidents; Can be with single pass knot relevant identifier with storing about each the out of Memory in said change in availability and those incidents, and can preserve (if they similarly can alone or in combination owing to those identical a plurality of incidents) together with out of Memory about one or more other change in availability.Therefore; If a plurality of incidents of for example given computing node group occur in during the single polymerization period and the variation of one or more program executive capability occurs in during this identical polymerization period or (for example be right after generation thereafter; Part as the Coordinating Activity that when this polymerization period finishes, carries out); And if those incidents are all not directly owing in said one or more capacity variation any one, then the combination of all these a plurality of incidents all is attributable to each in said one or more capacity variation.Below comprise further details (comprising B) with reference to Fig. 2 about this law of causality attribution.
In addition; In a similar fashion; A plurality of this type of is required, actual and formal attributes can be followed the trail of and be used for and corresponding one or more other controllable parameters of the program executive capability of computing node group, such as required first group, the cpu cycle overall average utilization factor of actual and positive formula weight, required second group, the network bandwidth overall average utilization factor of actual and positive formula weight etc.In addition; When following the trail of simultaneously and during the corresponding a plurality of parameter of the program executive capability of use and computing node group; PES or other system can attempt managing all parameters; For example revising the computing node group, so that obtain required cpu cycle overall average utilization factor and required network bandwidth overall average utilization factor simultaneously.As another instance; Computing node quantity and specified geographic location that a plurality of parameters of computing node group can comprise each computing node in this group are (for example; Between this set of calculated node of first data center 15% and 20% between; Remaining this set of calculated node is positioned at one or more other data centers), PES or other system attempt managing simultaneously the computing node quantity and the computing node geographic position of this group simultaneously.Below comprise about using a plurality of attributes to follow the trail of and manage other details of one or more program executive capability parameters.
In addition, in each embodiment, PES or other system can make the user visit computing node in every way.For example; In some embodiments; Can at least some of the computing node that can obtain from the PES that is used for executive routine be distributed to one or more users,, make among those users each can preferentially use those computing nodes with respect to other users so that those users can preferentially use.In this embodiment, these users' priority access can be based on each user of those computing nodes (for example to be similar to the mode of renting) that can proprietary or exclusive use set period.In addition; In some embodiments; When the user who for example is not assigned with these computing nodes when computing node uses and/or when the user who is assigned computing node makes clearly that the distribution calculation node can have been used by other users, distribute to one or more users and can be used as excessive program executive capability sometimes with in the computing node of proprietary or preferential use at least some and supply other users to use.Like this; At least some program executive capability of distributing to first group of user can be used for (for example on the basis of non-assurance) sometimes and represent other users (for example to come temporary transient executive routine; This program executive capability is used for other purpose if desired; Preferential or reservation such as one or more other users is used, and then makes the right to use of excessive program executive capability to be cancelled).In addition; In some embodiments; PES can comprise the on-demand computing node, its can be used for satisfying user's executive routine dynamic reception request (for example, when those users ask, the indication future time, the indication period in future in execution such as a period of time); Make and to carry out the indicated one or more programs of this request, when its prerequisite is near the computing node of execution when the time of being asked (or) that is enough to satisfy request available (but do not guarantee can satisfied this request).In addition, in some embodiments, this that (or predetermined) carries out immediately asks to be satisfied and to represent each user successfully to cause after one or more program implementation as required; Can guarantee to continue to use the on-demand computing node up to certain time in the future; Such as each certain user-selected time, certain time that randomly receives some restriction, (for example; Should guarantee that PES can not occupy the purposes of other purpose earlier, but not guarantee that the computing node of executive routine can lose efficacy).In some embodiments; Being used to provide as required, the computing node of variable program executive capability can be different from the computing node that is used to that the computing node of proprietary program executive capability is provided and/or is used to provide excessive program executive capability; Therefore if be not used for providing some of computing node of variable program executive capability as required; Then in some embodiments, these nodes can be used for providing excessive program executive capability, up to receiving variable program executive capability request as required; And in other embodiments, these nodes possibly not be used in provides excessive program executive capability.In other embodiments, the program executive capability of single type only can be provided, and/or the program executive capability of other type can be provided.
Figure 1A illustrates the network chart that the program that the computing node that can be used for providing the program of program executive capability to carry out a plurality of users is managed is carried out the instance of service.For the purpose of describing property, some instances and embodiment have below been described, wherein provide and manage the program executive capability of particular type with ad hoc fashion.In addition; In in following instance and embodiment some, the program executive capability that is provided by a set of calculated node can ad hoc fashion the quantity of computing node (for example, based on) measures; Can ad hoc fashion (for example; Required through following the trail of, actual and formal attribute is with respect to the purposes of one or more program executive capability yardsticks) manage, can through the associated user in every way (for example, based on the predefine trigger and/or the dynamic purposes of designated order) control; Can ad hoc fashion (for example make amendment; Revise through being aggregated at least some program executive capability of confirming in a period of time and postponing, when this period finishes, carry out the corresponding polymerization of one or many then and revise, for example to revise the quantity of computing node in a group) etc.Provide these instances to be used to the purpose of describing property and for the sake of brevity and with its simplification, and be to be understood that technology of the present invention can be used in various other situation, and following some that only described in these situation.
In the instance of Figure 1A; Each user's (not shown) is used for each client computing system 130 to carry out alternately with the PES that provides entity 105 to provide by program execution service through network 100; Some functions of PES are provided in this instance through the illustrated embodiment of program execution service system manager (" PESSM ") module 110 simultaneously, and the illustrated embodiment that other function is carried out service ability maintenance manager (" PESCMM ") module 115 through program is provided in this instance.PESSM module 110 can for example help the specific user to dispose to be ready to use in to carry out many set of calculated node of these users' program, is included as these groups and specifies initial required computing node quantity and appointment to be used for subsequently computing node quantity being made the trigger that on-the-fly modifies automatically.In this example; PES makes each computing node 120 can be used for carrying out user's program; But in other embodiments; At least some that are used at least some computing nodes of organizing can otherwise provide (for example, can provide such as outside computing system 140 through user and/or third party, but managed by PES).In addition, PESCMM module 115 can help continuously or monitor computing node group in use repeatedly, and randomly trial replaces losing efficacy or perhaps the disabled any computing node that becomes, so that the program executive capability is remained on before definite level.
Network 100 can for example be the disclosed accesses network of linked network, and it possibly operated by different each side (such as the Internet).In other embodiments, network 100 can be private, such as non-the superuser completely or partially enterprise network or the campus network of inaccessible.In other embodiments, network 100 can comprise internet accessible and/or can be through one or more private of access to the Internet.In illustrated embodiment, PESSM module 110 can be included in the software instruction of carrying out on one or more computing system (not shown) separately with PESCMM module 115.In addition; Module 110 and 115 and each computing node 120 in every way (such as at the individual data center) or provide with the distributed way of the various computing systems that use each diverse geographic location place on the contrary in other words conj.or perhaps with the mode of the computing system that uses one group of colocated.
In some embodiments, illustrated computing node 120 can be included in a plurality of physical computing systems and/or a plurality of virtual machine (as describing in more detail with reference to Figure 1B) that provides in the one or more physical computing system.Each computing node 120 all has a certain amount of computational resource that can be used for carrying out one or more programs; (for example) so that the program executive capability of specified quantitative to be provided; For example said program executive capability can for example be passed through the combination of one or more processing poweies (for example, number of processing units and/or size), memory capacity, storage volume, network bandwidth capacity etc. and measure.In some embodiments; PES supplier 105 can provide pre-configured computing node; Wherein each pre-configured computing node all has the resource that representative of consumer is come executive routine that can be used for of equal similar quantity in other words conj.or perhaps; And in other embodiments, PES supplier 105 can provide the selection of various various computing nodes, and the user can therefrom select to represent this user to come executive routine; For example wherein every selection all has computational resource (for example, the size of processing unit, speed and/or the type of different amounts and/or type; Number of processing units; Amount of ram and/or memory space; Platform configuration is such as 32 or 64; Deng).
In this illustrated embodiment, program is carried out the function that service is provided for managing the many groups of one or more computing nodes 120 of each among a plurality of users.Discuss in more detail like other place, said each user can carry out bringing into use many set of calculated node to come the request of representative of consumer executive routine with appointment alternately with PESSM module 110.In each embodiment, can be when representative of consumer be carried out the request of one or more programs on a set of calculated node and/or specify this type of resource one or more when subscribing the service of using PES (for example when user's first registers and/or) At All Other Times.In some embodiments; PESSM module 110 can provide to one or more users and subscribe and/or registration service; The relevant information of the one or more programs that make the user to specify to carry out with representative of consumer (for example; The program of one or more programs, source code, addressable point etc.), account (for example, user name, charge information etc.), Terms of Use etc.In some embodiments; Carry out alternately with after reservation and/or registering the service of obtaining user and PESSM module 110; Can be to this user issue and the one or more identifiers (for example, key, token, user name etc.) that will combine the executive routine of representative of consumer use relevant with this user.In other embodiments, can provide and PESSM module 110 (not shown) different module, to carry out reservation and/or the relevant various operations of registration service with PES.
After the user receives the request of using one or more computing nodes; PESSM1 module 110 can determine whether to exist the computing node 120 (it has the available resources that satisfy described request) of sufficient amount; And if so, but PESSM1 module 110 representative of consumer begin to carry out one or more programs of described request on an amount of computing node.In the situation of consumer premise request of the one or more programs of execution on one group of one or more computing node in future; PESSM module 110 can attempt keeping immediately an amount of computing node to carry out one or more programs at one or more future times; And/or can postpone said computing node is used for time (for example, such as when said one or more future times take place) the just decision of execution up to after a while.In illustrated embodiment, if PESSM module 110 can not ask the Distribution Calculation node to the user, then described request possibly lose efficacy, and calling program can't be carried out.In these situation, the user can submit failed request once more to, to carry out after a while.As previously mentioned; In some embodiments; For example (for example according to the type of the quantity of used computing node, used computing node, the duration of using computing node, specific operation that computing node carries out; Data transmit and/or store) etc., can collect the various expenses relevant to the user with using PES.
Providing one group of one or more computing node to be used for to manage said computing node group in every way after representative of consumer carries out one or more programs.For example, as previously mentioned, PESCMM module 115 can be monitored this set of calculated node, for example to confirm the Performance Characteristics of some or all of computing nodes, comprises the actual computation number of nodes or other tolerance of the practical programs executive capability that provided by this set of calculated node.If (for example) one or more computing nodes lost efficacy and became unavailable in other words conj.or perhaps; Then can change the practical programs executive capability of this group; And at least some embodiments; Module 115 can be carried out various operations and kept said computing node group program executive capability (for example, substituting computing node to replace disabled computing node through adding to this group) in these cases.In addition; Module 115 can be used the information of the actual computation number of nodes of confirming about the warp of said computing node group, with for example when detecting the actual computation number of nodes and change, wait the computing node quantity of the offical record that upgrades said computing node group termly.
In addition, PESSM module 110 also can help to manage in every way said computing node group.For example, as previously mentioned, the user relevant with this group can have the one or more quantity of previous appointment and revise triggers, the type (if satisfying each specified value) of the computing node number change that its appointment will be made to this group.In addition, at least some embodiments, the user relevant with this group can dynamically specify the operation to its correlation computations groups of nodes to change in each time, comprises the number change to this set of calculated node.Part as the said computing node group of management; The required computing node quantity of module 110 traceable said computing node groups, and regularly the computing node quantity of the offical record of said computing node group and the required computing node quantity of said computing node group are coordinated.For example according to the user instruction that satisfies situation and/or one or more dynamic appointments of the predefine trigger of one or more user's appointments, this regular coordination can comprise the modification through request of following the trail of and be aggregated in the computing node quantity that takes place during the polymerization period.When this period finished, module 110 can determine whether to revise with the computing node quantity of how to carry out polymerization then, and can revise according to the computing node quantity of polymerization and upgrade required computing node quantity.Then; Module 110 can pass through to start the computing node quantity modification of polymerization, and the computing node quantity of renewal offical record coordinates with computing node quantity offical record required with the new required computing node quantity that coupling will be caused by the computing node quantity modification of polymerization.In addition;, is different from when finishing period this in situation of computing node quantity of offical record at current actual computation number of nodes; Also can coordinate with computing node quantity offical record required according to the actual computation number of nodes; Make the computing node quantity that begins polymerization revise, current actual computation number of nodes is updated to current required computing node quantity.Module 110 also can be times without number, such as each during through set period, carry out this type of regular Coordinating Activity when having asked the computing node number change of minimum etc. at every turn.
In addition, PESSM module 110 can be carried out other activity, changes to follow the trail of to event of specific calculation groups of nodes and specific program executive capability.At least some program executive capability change informations can with cause by module 110 to on-the-fly modify corresponding as the program executive capability of the part of Coordinating Activity regularly or repeatedly; And randomly also can comprise in some cases in the monitoring of being undertaken by PESCMM module 115 program executive capability change information (for example; With become in other words conj.or perhaps corresponding to inefficacy disabled computing node or institute's change detected of other type of the program executive capability of computing node group).Module 110 also can be for example according to carry out regularly or other repeatedly Coordinating Activity carry out confirming automatically in each time (or on the contrary At All Other Times), with law of causality that certain capabilities is changed or other attribution of responsibility in particular event.
Though the above-mentioned exemplary to providing the PES of types of functionality to describe Figure 1A to each user is to be understood that to have various other embodiments.For example; In at least some embodiments; The not use part of single computing node 120 (for example; The not use of untapped processing unit clock period, internal memory part etc.) can supply one or more users to use, make the user that wins one or more programs can with the resource of one or more other users' the single computing node of those procedure sharing.In addition, though carry out service and the program executive capability has been described some embodiments, be to be understood that said technology can be used for managing the right to use of the calculating related resource of each other set of calculated node or other type to program.The nonexcludability inventory item of the instance of the calculating related resource of other type that can use for a plurality of users through management can comprise following content: persistent data storage capacity (for example, at non-volatile memory device, on hard disk drive); Ephemeral data storage capacity (for example, in volatile memory, on RAM); Message queueing and/or transmission capacity; The communication capacity of other type (for example, network socket, virtual communication circuit etc.); The data base administration ability; Proprietary bandwidth or other network related resource; The input media ability; The output unit ability; Cpu cycle or other instruction executive capability; Deng.
Figure 1B shows and wherein can adopt the one or more data centers that comprise a plurality of physical computing system to provide program to carry out the embodiment of service.Specifically, Figure 1B illustrates PESSM module 180 that program wherein carries out service and PESCMM module 160 to adopt each computing system at said one or more data centers place to come the network chart of exemplary of one or more program implementation of Management Representative user.Illustrated example comprises the data center 170 that PES uses, and data center 1 70 is connected to the Internet 196 of data center 170 outsides.In this example, the Internet 196 provides the right of the various outside computing systems of visit, such as via the computing system 190 of private 194 and the computing system 192 that can directly visit.Private 194 for example can be from the outside non-franchise computing system of private 194 enterprise network of inaccessible completely or partially.Computing system 192 can comprise the family expenses computing system that for example is connected directly to the Internet (for example, via phone or cable modem, digital subscriber line (" DSL ") etc.).In addition, show one or more other data centers 198 that are connected to data center 170 via the Internet 196, for example data center 198 can further be used by PES at least some embodiments.
Exemplary data center 170 comprises many physical host computing system 175, physical computing system 182, the PESSM module 180 of PES and the PESCMM module 160 of PES.In this example; Host computing system 175 provides a plurality of virtual machines separately; And manager component (for example to have the virtual machine (" VM ") of managing those virtual machines; Supervisory routine or other virtual machine monitor), for example shown to host computing system 175a with a plurality of virtual machine 177a and VM manager component 179a.Other host computing system 175b can likewise comprise this class component; For the sake of brevity; Not shown here those other assemblies, and some or all of computing system 182 can randomly have one or more these type of virtual machines and/or VM manager component (not shown) equally.In the virtual machine that is provided by host computing system each all can be used as different computing nodes and is used for PES; For example so that the first virtual machine computing node on the host computing system becomes the part of first user's the first computing node group, and make the second virtual machine computing node on the said same host computing system become the part of second user's the second computing node group.Perhaps, in other embodiments, some in the physical host computing system at said data center place or all any virtual machine possibly is not provided, the for example opposite computing node of directly carrying out one or more programs as the final consumption user who represents PES.In addition; In some embodiments, each computing system 175 and 1 82 all can have different ability, can have different relevant usage charges; (for example can support dissimilar user programs; The software image example of the virtual machine of different size, or have dissimilar resource criterion and/or computational resource utilization rate is such as the program of I/O and the storage access and the network usage of different mode) etc.If so, then can be according to one or more these type of factors to specific user and/or its program divide into groups (for example automatically), these factors also can be used as constraint condition and/or the preference of selecting computing system to carry out specific program.Exemplary data center 170 also comprises the internal network 172 that can comprise a plurality of interconnection device (not shown) (such as converter, edge router and core router), and the computing system 175 and 182, PESCMM module 160 and the PESSM module 180 that are connected to internal network 172.Each host computing system 175 all can be provided with other computing system 182 in every way, comprises through it being grouped in the frame of sharing shared base plate or other connected medium.In addition, can adopt one or more computing system (not shown) to come each in execution module 160 and 180.
At least some that illustrated PESSM module 180 and PESCMM module 160 are implemented in the said technology are so that management executive routine on the many set of calculated node that adopts computing system 175 and 182 to provide is described like other place in more detail.When selecting the specific calculation node to carry out one or more program of user; In some embodiments; The PESSM module can be through beginning to carry out those programs with VM manager component or other manager component of controlling the program implementation of said selected computing node alternately, perhaps can be on selected computing node direct executive routine.The user of PES can use various computing systems, and such as computing system 190 or 192, or the computing system that one of other data center 198 locates is to carry out with PESSM module 180 alternately.
Be to be understood that the data center of Figure 1B only is provided for illustrative purpose, and can otherwise provide program to carry out service and other software executing service in other embodiments.For example, can adopt outside one or more other computing systems of data center 170 on the contrary, PESSM module 180 and/or PESCMM module 160 are provided such as the computing system at computing system 190,192 or data center 198 places.
Fig. 2 A shows the instance of the technology that one group of example calculation node of the one or more programs that are provided for carrying out example user is managed, such as the technology that can be implemented automatically by the embodiment of PESSM module and/or PESCMM module.Specifically; In this example; Specific user (hereinafter to be referred as user UUU and not shown in Fig. 2 A) has brought into use one group of a plurality of computing node to carry out the duplicate of indicated program separately to represent this user; For example to be used as the request that service was received that computing node is handled to be provided by said executive routine that substitutes (for example, so that balance should be served the calculated load in the whole a plurality of computing nodes that should organize).Shown in timeline coordinate diagram 210, the user has asked the computing node group is provided in time T 1, and specifies initial required computing node quantity 215a for 8 computing nodes of this group.Information 250 is to each user-defined trigger indication, and the user specifies to the computing node group when initial request for example.In addition; Timeline coordinate diagram 205 shows about will being used for the computing node group and will being used for confirming the information of two kinds of example types of the Performance Characteristics whether trigger 250 is satisfied by tracking, and said information comprises the CPU overall average utilization factor 205a of computing node group and the network bandwidth overall average utilization factor 205b of computing node group in this example.
Incident E1 when asking corresponding time T 1 with the user who is received who begins to provide the computing node group, exemplary PES (not shown) starts the computing node group that comprises eight computing nodes at first according to initial required computing node quantity to the user.The computing node quantity 225 of the offical record of computing node group likewise is set to eight computing nodes in addition.Yet; Shown in timeline coordinate diagram 210; Said eight computing nodes are in fact not available immediately; Because need a period of time that these computing nodes are provided and make its part that can be used as the computing node group, comprise making on program duplicate each in these computing nodes and carry out through PES or user.Specifically, behind the initial time after elapsed time T1, the program executive capability of the computing node group C1 255 that changes, this variation finishes when whenabouts T2 when time T 1, and with available eight computing nodes in preceding four corresponding.Therefore, follow the trail of the actual computation number of nodes 220 that is used for the computing node group and increase to 4 from 0 in the said time.In addition, simultaneously or shortly after that, timeline coordinate diagram 205 shows, begins to follow the trail of the Performance Characteristics of CPU overall average utilization factor 205a and network bandwidth overall average utilization factor 205b according to the operation of available computing node in this group.
In this example, PES (or other third party system) monitors this set of calculated node with roughly continuous mode, the feasible information that keeps Performance Characteristics 205a and 205b and actual computation number of nodes 220 with up-to-date mode.Yet; In this example; Only regularly the computing node quantity of computing node group is carried out on-the-fly modifying of some type at least; For example with the modification through request of some type at least of polymerization during the polymerization period 260, and when the polymerization period between the computing node quantity 215,220 and 225 of required, reality and offical record finishes respectively, to carry out Coordinating Activity.Therefore, during the first polymerization period 260a, the computing node quantity amount of computing node group is outer to change 255.For example, after the variation C1 that preceding four computing nodes can be used, the follow-up variation C2 that when whenabouts T3, finishes is corresponding with three additional calculations nodes of a part that can be used as the computing node group.
Yet; In this example; For example because the hardware problem that the initial computing node of selecting exists (or on the contrary in other situation and since when time T 1 only 7 computing nodes can be used in the computing node group, wherein in case the 8th computing node is available subsequently; Just with its dynamic interpolation), the 8th computing node of initial request can not be in time available.Therefore; Showing incident E2 265 occurs in and changes after the C2 (when whenabouts T4) soon; Wherein PES stops original the 8th computing node (if desired) (for example, if it is frozen under the intermediateness), and begins to provide the 8th alternative computing node.As discussing in more detail with reference to Fig. 2 B; In this example; PES has caused the variation C10a when adding the corresponding time T 1 of the 8th initial computing node; But this variation C10a fails through adding and available the 8th computing node of reality accomplished, and therefore changes C10a and in the actual computation number of nodes 220 of timeline coordinate diagram 210, embodies, also not otherwise shown in Fig. 2 A.On the contrary, in this example, incident E2 is divided into simultaneously or approaching simultaneous two different events E2a and E2b (not illustrating separately).Specifically; In this example; The PES record incident E2a when failing the corresponding time T 4 of the 8th computing node of correct initialization (for example in fixed time limit), and the variation C10b (not shown) of PES when causing time T 4 automatically is to stop failing correct initialized the 8th initial computing node.In addition, in this example, the individual case E2b when the actual termination itself that the 8th initial computing node takes place owing to incident E2a is regarded as time T 4, the automatic initiation of individual case E2b provides the 8th alternative computing node immediately.In this type of link incident that itself can being regarded as as a result of making that the variation of the incident of winning causes causes another kind of second incident that changes and the mutual relationship of respective change result between track of events and respective change result various benefits can be provided, discuss in more detail like other place.Subsequently, when the time T 4, and the variation C3 255 that when time T 5, finishes makes the actual computation number of nodes become eight from seven according to incident E2b, because the 8th alternative computing node can be used as the part of computing node group.
After eight computing nodes of computing node group are operated the part of polymerization period 260a with the mode of expection; At whenabouts T7; The another kind of C4 255 of variation takes place in actual computation number of nodes 220, and this variation impels by one in the inefficacy or perhaps the disabled computing node that becomes.Corresponding event E3 265 and variation C4 take place approximately simultaneously, and wherein PES stops unavailable computing node (if desired), and randomly begins to provide alternative computing node automatically.Specifically, to be similar to the mode of being discussed to incident E2 before this, incident E3 is divided into simultaneously or approaching simultaneous two different events E3a and E3b (not illustrating separately) in this example.Therefore, PES writes down and incident E3a when detecting the corresponding time T 7 of the disabled computing node that become in this example, and the activity of PES when causing time T 7 automatically for example changes C4 directly to cause to stop unavailable computing node.In addition; In this example; The termination itself that unavailable computing node takes place owing to incident E3a is regarded as and when whenabouts T7, causes the individual case E3b that substitutes computing node to provide immediately automatically; But in other embodiment and situation, any this providing on the contrary that substitutes computing node will be postponed up to the Coordinating Activity H1 that when polymerization period 260a finishes, carries out.Subsequently, in this example, change C5 255 and when whenabouts T9, finish, this variation returns to eight with the actual computation number of nodes, and this is directly caused by incident E3b, because said alternative computing node can be used as the part of computing node group.In this example; The temporary transient computing node quantity 225 of not upgrading offical record is with corresponding to changing C4 and C5; Do not upgrade with corresponding to previous variation C1-C3 yet; But in other embodiments, the computing node quantity 225 of renewable offical record changes to reflect some or all of this type of, for example continuously or times without number the computing node quantity 225 of offical record is remained in the state consistent with the actual computation number of nodes that is upgraded 220.In this example, other computing node ability change in availability or incident taking place in all the other times of polymerization period 260a, comprises that the trigger 250 of all appointments is not satisfied, and do not receive the user instruction of dynamic appointment.Therefore, during time T 11 when said period 260a finishes, considered first group of Coordinating Activity H1, but need not any activity, because the computing node quantity 215,220 and 225 of current required, reality and offical record is all mated at eight computing node places respectively.If during polymerization period 260a, replace the variation C5 (shown in this instance) of unavailable computing node; Then after this polymerization period; This variation can be caused as the part of Coordinating Activity H1 on the contrary; So that replace the unavailable computing node (for example, being combined in any other dynamic change in availability of asking or causing during the polymerization period 260a) at place of said time.
Yet, during the second polymerization period 260b, other incident has taken place.Specifically; When incident E5 265 at first occurs in whenabouts T16; Thereby it is corresponding with automatically confirming of making of PES; Promptly through improving CPU overall average utilization factor 205a trigger TR-1250a is satisfied, such as in the timeline coordinate diagram 205 through first black on the CPU overall average utilization factor 205a line oval diagram.For 12 through the request whole required computing node quantity 215c for (perhaps regardless of current required computing node quantity; The required computing node quantity that can ask to be upgraded is set to 12), the situation that satisfies of trigger TR-1 has caused the request with 4 computing nodes of required computing node quantity 215 increases.Similarly; After passing through other extra time; When next incident E6 265 occurs in whenabouts T18; Thereby with confirm that trigger TR-N 250c is satisfied is corresponding through improving network bandwidth overall average utilization factor 205b, such as in the timeline coordinate diagram 205 through the black on the network bandwidth overall average utilization factor 205b line oval diagram.For ten through the request whole required computing node quantity 215d for (perhaps regardless of current required computing node quantity; The required computing node quantity that can ask to be upgraded is set to ten), the situation that satisfies of trigger TR-N has caused the request with 2 computing nodes of required computing node quantity 215 increases.After through short extra time; When incident E4 265 occurs in whenabouts T19; Wherein for 11 through the request whole required computing node quantity 215b for (perhaps regardless of current required computing node quantity; The required computing node quantity that can ask to be upgraded is set to 11), the user relevant with the computing node group provides the dynamic specified request that required computing node quantity 215 is increased by 3 computing nodes.Can be for example according to noticing that CPU overall average utilization factor 205a is that the user that total calculating load on higher, the computing node group is increasing etc. makes this request.
At last, soon, when extra variation C6 occurred in whenabouts T20, this variation impelled by one in the inefficacy or perhaps disabled this set of calculated node that becomes before polymerization period 260b finishes.Corresponding event E9 and variation C6 take place approximately simultaneously, and wherein PES stops unavailable computing node (if desired).In this example; Yet PES begins to provide alternative computing node immediately; But decision is waited for up to the second group of Coordinating Activity H2 that is about to carry out and (for example being begun during in time T 21; Provide according to a small amount of time remaining before the time T 21, according to this type of delay that substitutes computing node etc.; Said delay is the default-action of the disabled any computing node that becomes in use) because possible be the quantity that will reduce computing node in the computing node group according to those Coordinating Activities, and need not said alternative computing node.In other embodiments, PES can begin to provide alternative computing node (for example, to be based on and not postpone substituting of unavailable computing node in any case on the contrary immediately; Based on not postponing the substituting of unavailable computing node (because required computing node quantity possibly increase as the part of Coordinating Activity H2 but not reduce) in this case; Based on substitute (because other factors was paid to eight computing nodes before time T 3 after a while such as the user) that does not postpone unavailable computing node in this case; Deng).Specifically, to be similar to the mode of being discussed to incident E2 and E3 before this, incident E9 is divided into simultaneously or approaching simultaneous two different events E9a and E9b (not illustrating separately).Therefore, PES writes down and incident E9a when detecting the corresponding time T 20 of the disabled computing node that become in this example, and the activity of PES when causing time T 20 automatically for example changes C6 directly to cause to stop unavailable computing node.In addition; In this example; Individual case E9b when the termination itself that unavailable computing node takes place owing to incident E9a is regarded as whenabouts T20; This incident causes the additional calculations node that will organize and is used as the request that substitutes computing node, for example required computing node quantity 215 is remained on the requirement 215a of eight computing nodes.In this example; Come the request of processing events E9b with the mode that is similar to incident E4-E6; This request is postponed up to will be at the Coordinating Activity H2 that when pre-polymerization period 260b finishes, carries out, but in other embodiment and situation, can begin alternative this of computing node on the contrary immediately provides.In addition; In this example; Not being similar to before this to changing computing node quantity 225 that mode that C4 and C5 describe upgrades offical record with corresponding to variation C6, but in other embodiments, the computing node quantity 225 of renewable offical record is to reflect this type of variation.
Therefore, when the second polymerization period 260b finishes, beginning Coordinating Activity H2, and can cause on-the-fly modifying in this case to the computing node group.Specifically; PES in this example will with incident E4, E5, E6 and E9b various through the request required computing node quantity 215b, 215c, 215d and 215a corresponding through the request the modification polymerizations; And decision is revised the dynamic quantity that eight previous required computing node quantity 215a make polymerization; The dynamic quantity of polymerization is simultaneously revised (has for example increased by four additional calculations nodes in this example; Based on the maximal value that adopts in the quantity of request is revised) so that corresponding to 12 current required computing node quantity 215e that upgraded.In other embodiments; Can otherwise come to confirm the dynamic quantity modification of polymerization; For example revise so that (for example keep previous required computing node quantity 215a according to incident E9b with the dynamic quantity of selective polymerization; Thereby cause increasing a computing node from current actual computation number of nodes), the minimum value in revising with the quantity that adopts incident E4-E6 (for example, thereby cause increasing by two computing nodes) from current required computing node quantity through request; The mean value of revising with the quantity through request that adopts incident E4-E6 (for example; Thereby cause increasing by three computing nodes from current required computing node quantity), the polymerization value of revising with the quantity that adopts incident E4-E6 (for example, thereby cause increasing by nine computing nodes) from current required computing node quantity through request; The limit priority of revising with the quantity through request that adopts incident E4-E6 (for example; Thereby cause increasing by three computing nodes from current required computing node quantity, its prerequisite is that the trigger of for example comparing incident E5 and E6 satisfies situation, and the user instruction of E4 is regarded as has higher priority); The modification of the modification of request for the first time or last request in revising with the quantity that adopts incident E4-E6 (for example, thereby cause increasing by four or three computing nodes respectively) etc. from current required computing node quantity through request.The user instruction incident is compared trigger and (is for example satisfied in some embodiments and the situation that incident has higher priority therein; If user instruction can cover any on-the-fly modifying through request of satisfying incident from trigger all the time); PES can prevent that also other trigger from satisfying incident and occurring in during the polymerization period that receives after the user instruction incident, for example occurs in any trigger that receives after the user instruction to incident E4 and satisfies incident to ignore (or never definite) in this example.In addition, in this example, when Coordinating Activity H2, the computing node quantity 220 of current reality and offical record is different respectively with eight computing node places at seven with 225.Therefore; Part as Coordinating Activity H2; PES begins to the computing node group five additional calculations nodes to be provided; Seven current actual computation number of nodes being increased to 12 new required computing node quantity of upgrading, and the computing node quantity 225 of further upgrading offical record is to meet 12 new required computing node quantity of upgrading.Therefore; In this example; The ability change in availability of 5 computing nodes is caused by following mode indirectly: replace according to incident E9b owing to change the C7 disabled computing node that becomes, and increase and revise corresponding 4 additional calculations nodes from the determined polymerization quantity of incident E4, E5 and E6.
During trimerization period 260c, other incident and computing node ability change in availability further take place.Specifically; Changing C7 finishes when whenabouts T22; Wherein current available computing node quantity has increased by five to 12 computing nodes altogether, and with five additional calculations nodes that reflect that its availability begins when the time T 21, and actual computation number of nodes 220 is updated thus.Shown in timeline coordinate diagram 205, CPU overall average utilization factor 205a and network bandwidth overall average utilization factor 205b all reduce after changing C7, and wherein CPU overall average utilization factor 205a descends rapidly.Specifically; In this example; CPU overall average utilization factor 205a finally is brought down below the threshold value with the specified value of trigger 250b corresponding 20%; Thereby cause incident E8 that (comprise and confirm that trigger TR-3 250b is satisfied) takes place, such as in the timeline coordinate diagram 205 through second black on the CPU overall average utilization factor 205a line oval diagram.For ten through the request whole required computing node quantity 215f for (perhaps regardless of current required computing node quantity; The required computing node quantity that can ask to be upgraded is set to ten), the situation that satisfies of trigger has caused the request that required computing node quantity 215 is reduced 2 computing nodes.
At last, before polymerization period 260c finished, when extra variation C8 occurred in whenabouts T28, this variation impelled by one in the inefficacy or perhaps disabled this set of calculated node that becomes.Corresponding event E10 and variation C8 take place approximately simultaneously, and wherein PES stops unavailable computing node (if desired).To be similar to the mode that changes C6; PES selects to wait for up to the 3rd group of Coordinating Activity H3 during in time T 31 in this example, but not begin to substitute unavailable computing node immediately (for example, because incident E8 makes maybe or likelyly be; After this requirement of computing node can reduce in the computing node group); PES can begin to provide alternative computing node on the contrary immediately, specifically but in other embodiments; To be similar to incident E2, E3 and the described mode of E9 of being directed against before this, incident E10 is divided into simultaneously or approaching simultaneous two different events E10a and E10b (not illustrating separately) in this example.Therefore, in this example, PES record and incident E10a when detecting the corresponding time T 28 of the disabled computing node that become, and the activity of PES when causing time T 28 automatically for example changes C8 directly to cause to stop unavailable computing node.In addition; In this example; Individual case E10b when the termination itself that unavailable computing node takes place owing to incident E10a is regarded as whenabouts T28; This incident causes the additional calculations node that will organize and is used as the request that substitutes computing node, for example required computing node quantity 215 is remained on the requirement 215e of 12 computing nodes.In this example; Come the request of processing events E10b with the mode that is similar to incident E9b; This request is postponed up to will be at the Coordinating Activity H3 that when pre-polymerization period 260c finishes, carries out, but in other embodiment and situation, can begin alternative this of computing node on the contrary immediately provides.In addition; In this example; Not being similar to before this to changing computing node quantity 225 that the described mode of C4-C6 upgrades offical record with corresponding to changing C8, but in other embodiments, the computing node quantity 225 of renewable offical record is to reflect this type of variation.
Therefore, when trimerization period 260c finishes, beginning Coordinating Activity H3, and can cause the computing node group to change.Specifically; PES in this example will with the corresponding modification polymerization of incident (being merely incident E8 and E10b in this example) that occurs in during the period 260b through request; And decision is revised the dynamic quantity that 12 previous required computing node quantity 215e make polymerization; Said modification has reduced by two computing nodes in this example, so that corresponding to ten current required computing node quantity 215g that upgraded.In addition, when Coordinating Activity H3, the computing node quantity 220 of current reality and offical record is different respectively with 12 computing node places at 11 with 225.Therefore; Part as Coordinating Activity H3; PES causes 12 current formal computing node quantity according to the current actual computation node capacity of 11 computing nodes and changes; To reach ten current required actual computation number of nodes; From the computing node group, remove (for example, randomly after accomplishing the some or all of actions begun, terminating in executive routine on the computing node that has removed, and so that this computing node can supply other users to use in the future) so that will have one of computing node now.Therefore, in this example, when time T 31, will have the ability change in availability that one of computing node removes now and cause by following mode indirectly: stop a set of calculated node, and request reduce and corresponding 2 computing nodes of incident E8 about incident E10b.PES further upgrades the computing node quantity 225 of offical record to meet ten new required computing node quantity of upgrading.After time T 31 soon; The final C9 that changes finishes when whenabouts T32, and wherein current available computing node quantity has reduced one to ten computing nodes altogether, begins the computing node that from the computing node group, removes when being reflected in time T 31; And actual computation number of nodes 220 is updated thus; In other embodiments, when said variation is made in decision, change C9 and can occur in time T 31 basically immediately; For example its prerequisite be immediately will be to be removed computing node from other activity of computing node group, withdraw from, even when the computing node that has removed is temporarily carried out and can be used for proceeding to operate.
In addition, though shown in this example Coordinating Activity H1, H2 and H3 occur in single time point, be to be understood that in fact some or all of Coordinating Activities can occur in a period of time, and can have other effect of lasting a period of time.For example, at least some embodiments, the some or all of variations to the program executive capability of computing node group that caused by PES can produce the incident that possibly not allow at least some other types or the interim lockup period of variation.The program executive capability that can cause the PES-indication of this locking changes for example can comprise that the program executive capability that the part as Coordinating Activity causes (for example increases and/or reduces; Add new computing node, remove existing computing node etc.); And/or in response to PES decision (for example, computing node lost efficacy, received user instruction, user's appointment trigger satisfy situation etc.) and the program executive capability that causes immediately changes.This type of locking can have various types of duration that (for example, result or generation until appointment have for example become available up to the computing node that is added; The duration of appointment, become available average or expeced time such as the computing node that is added; Deng), and the type of the variation that can cause according to PES in some embodiments and different.Between this type of lockup period; Possibly not allow the incident or the variation of some type at least; For example do not allow the trigger of user's appointment during this Lockout Duration to be satisfied (or satisfy situation through ignoring any this type of trigger), and/or do not allow during this Lockout Duration, to accept user instruction (or through ignoring any this type of user instruction).In addition, in some embodiments, the user relevant with the computing node group can likewise specify with similar mode cooling cycle of operating locking cooling cycle, such as being right after locking or occurring in cooling cycle of fixed time amount At All Other Times on the contrary.As locking, during cooling, possibly not allow the incident or the variation of some type at least, for example be satisfied (or satisfy situation through ignoring any this type of trigger) with the trigger that does not allow user's appointment during cooling.Be to be understood that in other embodiments, user and/or PES can otherwise control the modification to the computing node group.
Therefore, like this, PES operation offers user's program executive capability with management by a set of calculated node, comprises according to various situation this computing node group is made variously on-the-fly modifying.Be to be understood that the incident shown in Fig. 2 A only is provided for carrying out schematic purpose with changing, and the said actual event of PES, variation operate in other maybe be different in other embodiment and the situation.
Fig. 2 B shows the instance of the technology that is used for cause-effect relationship information is on-the-fly modified owing to the computing node quantity of being discussed with reference to Fig. 2 A before this automatically, such as the technology that can be carried out automatically by the embodiment of PESSM module.Specifically; Fig. 2 B shows two instance database list data structure of some information corresponding in the information shown in storage and Fig. 2 A; Wherein the example table 280 of Fig. 2 B stores the relevant various information of example calculation node capacity change in availability that take place with the example calculation groups of nodes (being called " the 1st group " among Fig. 2 B) of Fig. 2 A, and the example table 290 of Fig. 2 B stores the relevant various information of exemplary event that take place with the example calculation groups of nodes (the 1st group) of Fig. 2 A.
Example table 280 comprises separately corresponding to each row or 285a-285k one of among the exemplary variations C1-C10 that is discussed with reference to Fig. 2 A, wherein shows each hurdle or the row 280a-280x of each row.Specifically; In this example; Each row comprises unique identifier (" ID ") 280a, the indication 280d of the type 280c that changes with the ID 280b that changes corresponding suitable computing node group, program executive capability, the expected results that the program executive capability changes, about the start and end time 280f and the 280g of the various details 280e that change, variation, change in other words conj.or perhaps with change relevant polymerization period 280h (in this example for being based on the mentioned polymerization period of Coordinating Activity that the polymerization period carries out when finishing), ID 280x and optional various out of Memory are tied in variations-incident pass.As an illustrative examples, row 285a changes the variation of C1 corresponding to the 1st group computing node quantity corresponding to the 1st group variation C1, and this variation relates to be increased by 4 computing nodes and finishing during in time T 02 during the polymerization period H1.Other row comprises similar information.
Example table 290 comprises separately corresponding to reference to each row or 295a-295m one of among the described exemplary event E1-E10 of Fig. 2 A, wherein shows each hurdle or the row 290a-290x of each row.Specifically; In this example; Each row comprise unique identifier (" ID ") 290a, with the type 290c of the ID 290b of the corresponding suitable computing node of incident, incident, about the time 290e of the information 290d of Event origin, incident, generation incident in other words conj.or perhaps with incident relevant polymerization period 290f (Coordinating Activity that carries out when referring to that in this example being based on the polymerization period finishes), variation-incident pass tie ID 290x and optional various out of Memory (for example, relevant specific user) with the user instruction that is received.As an illustrative examples, row 295h is corresponding to the 1st group incident E4, the user instruction that this incident E4 is received during corresponding to the time T 19 during polymerization period H2, and the required computing node quantity that this instruction request is the 1st group increases by 3 computing nodes.Other row comprises similar information.
In the instance of Fig. 2 B, table 280 and 290 variation-incident close knot id information 280x and 290x reflected by attribution change with reflection and incident between the cause-effect relationship information of relation.Specifically, in this example, share common value with 290x if the hand-manipulating of needle in the table 280 and 290 closes knot id information 280x to variation-incident, then its reflected between corresponding event and the variation by the cause-effect relationship of attribution.As an instance, such as before this with reference to Fig. 2 A discussion, incident E3b is corresponding to providing the alternative computing node that becomes disabled computing node, said computing node can be directly owing to corresponding to the variation C5 that thus computing node is added into this group.Therefore, going 295e (corresponding to incident E3b) and row 285g (corresponding to changing C5) shares common pass knot identifier.
On the contrary, with the corresponding variation of five computing nodes of the interpolation that during Coordinating Activity H2, begins C7 do not have can be directly owing to the individual event of this variation.Specifically, incident E4, E5 and E6 ask the 1st group is on-the-fly modified separately, and these on-the-fly modify through polymerization and are used for impelling add five computing nodes to changing C7 four jointly.Thereby row 295f-295h (corresponding to incident E4-E6) and row 285i (corresponding to changing C7) all share common pass knot identifier.In addition, in the instance of Fig. 2 A, be added one of five computing nodes as a part that changes C7, begin alternative computing node simultaneously corresponding to incident E9b for the substitute node of disabled computing node because variation C6 becomes.Therefore, go 295j (corresponding to incident E9b) with row 285i (corresponding to changing C7) also share identical common pass knot identifier.In other embodiments; If through providing four additional calculations nodes corresponding to incident E4-E6 in incident E9b, to begin to provide alternative computing node individually; For example to replace unavailable computing node immediately; Then the respective change of said alternative computing node will finish to take place before at period 260b and the Coordinating Activity that carries out thus H2, and will in table 280, illustrate individually with the said extra variation of sharing different corresponding pass knot identifiers with incident E9b.In addition; Though five computing nodes that add to changing C7 with the mode of polymerization shown in the single file of table 280; But in other embodiments, each computing node that is added all can represent in the independent row 285 of table 280, and if so; It shares identical pass knot identifier N7 separately, and this pass knot identifier N7 changes the unique capable 285i of C7 to polymerization at present and illustrates.
In addition; In this example; In table 280, followed the trail of variation; These change not only corresponding to based on the on-the-fly modifying of the computing node quantity of dynamic subscriber's instruction and/or user's trigger of being satisfied, and also the accident based on computing node quantity changes (for example, becoming unavailable in other words conj.or perhaps because computing node loses efficacy).This type of variation detects based on monitoring; And be illustrated as the incident (alternative computing node for example is provided) that triggers extra variation; But in other embodiments, can otherwise handle, for example not follow the trail of this type of variation and/or the replacement activity of system start-up is not regarded as incident it.In addition; Though the variation in the table 280 and 290-incident is closed knot information not to can be directly owing to one or more corresponding event (for example; Cause the incident of those variations immediately) variation with can be indirectly (for example owing to one or more corresponding event; For example during Coordinating Activity, condense together and cause the incident of those variations jointly) variation distinguish, but in other embodiments, can follow up this type of information.
As previously mentioned, the attribution of responsibility that the specific program executive capability of computing node group is on-the-fly modified can provide various benefits, comprises to the user relevant with the computing node group explanation that why can change is provided.Also can produce and/or use this type of attribution of responsibility information in response to all kinds of inquiries that receive from user or other source, these inquiries are such as being that indication takes place for the availability that causes one group of one or more computing node specific program executive capability is revised or the request of the reason of other variation and/or about which (repeatedly) program executive capability is revised or (a plurality of) change in availability of other computing node group is caused by the incident of one or more indications request about discerning which (a plurality of) incident.Discuss with reference to Fig. 2 B, the pass knot information shown in the table 280 and 290 provides a kind of mechanism that is used to follow the trail of and provide attribution of responsibility information.For example, among Fig. 2 A with change for 5 computing nodes of the corresponding interpolation of C7, the user possibly wonder and added 5 computing nodes why (for example, particularly according to the user instruction of the incident E4 that adds 3 computing nodes).Through adopting the pass knot information shown in Fig. 2 B, PES or other system can be easy to generate automatically the readable explanation of people.For example, in response to about with user's request of the reason of four computing nodes of the corresponding interpolation of the variation C1 of Fig. 2 A, PES or other system can for example indicate following content: " the incident E01 when changing C01 by time T 1 directly causes.Incident E01 is to begin to provide the request of one group of 8 computing node from user UUU ".This information can produce like this: through adopt among the capable 285a corresponding to the pass knot information 280x that changes C1 with in the Identification Lists 290 corresponding to the capable 295a of incident E1; And with required mode from row 285a and 295a, extract and formatted message (for example, with ask based on the user or the form of previous User Preferences, with based on the form of PES default value etc.).Similarly, in response to about carrying out user instruction E1 to begin to provide user's request of eight computing nodes of this group, PES or other system can for example indicate following content: " the incident E01 during time T 1 directly causes variation C01, C02 and C03.Change C01 for adding 4 computing nodes, it begins when time T 1 and when time T 2, finishes.Change C02 for adding 3 computing nodes, it begins when time T 1 and when time T 3, finishes.Change C03 for adding 1 computing node, it is when time T 1, but end ".As another instance; In response to about with user's request of the reason of five computing nodes of the corresponding interpolation of the variation C7 of Fig. 2 A, PES or other system can for example indicate following content: " changing C07 is caused by the incident E05, E06, E04 and the E09b that occur in during the period T11 to T21 indirectly.Incident E05 is the request based on 4 additional calculations nodes that satisfy situation of trigger TR-1.Incident E06 is the request based on 2 additional calculations nodes that satisfy situation of trigger TR-N.Incident E04 is for providing the request of 3 additional calculations nodes of dynamic instruction based on the user from user UUU.Incident E09b is the request based on 1 alternative computing node of the automatic termination of unavailable computing node in this group ".As to the replenishing or substituting of this type of text string, attribution of responsibility information can also various other forms such as automatic form (for example, with form, chart etc.) and is produced with regular or other predetermined way.Be to be understood that in other embodiments, this type of attribution of responsibility information can various alternate manners produces and uses.
Be to be understood that, only be provided for carrying out schematic purpose about the information of incident shown in Fig. 2 B and variation, and for stored information, the storage of this type of information can be carried out by various alternate manners in other embodiments.In addition; In other embodiments; PES can store the information about various other types of user and computing node group, for example to provide storage about user-defined trigger, about the performance measurement information of monitoring, about the add list of the information of user account etc.
In addition, the previous examples of Fig. 2 A and 2B is provided for carrying out schematic purpose, and other embodiment can be different from these instances in every way.For example; Though in these instances, the program executive capability is measured and revised according to the quantity of computing node, for example its prerequisite is that various available computing nodes (for example are regarded as equivalence; Computational resource with equivalence); But other embodiment can be provided, and wherein various available computing nodes can be have different qualities (for example different processing poweies, amount of ram, platform specification etc.) dissimilar, and/or wherein come the tracing program executive capability with the mode that is different from computing node quantity.In some these type of embodiments; Various requests can comprise the indication of the computing node of one or more particular types; Said computing node is used for being selected to carry out many set of calculated node of the program relevant with described request, and those requests only can realize on the computing node of corresponding specified type.
In addition, at least some embodiments, PES or other system also can carry out the activity as other type of the part of many set of calculated of management node.For example; As previously mentioned; PES or other system can determine from the computing node group, to add or remove computing node in each time, and each time comprises as follows: during the Coordinating Activity that when the polymerization period finishes, carries out (in response at one or more triggers that are satisfied during the said period and/or the user instruction that during the said period, receives); In response to through specifying or confirming and have the user instruction of immediate effect or any time that trigger satisfies situation; In response to the automatic movable of PES or other system for example to replace the computing node and/or the termination of losing efficacy and to remove any time of the forbidden computing node of current operation; Deng.In at least some embodiments, PES or other system also can consider other factors when definite time of confirming that at least some these type of computing node groups revise.For example; (for example will be responsible for using in the situation of given quantity Calculation node the user to the given period; Collected the expense of X computing node in next hour), this type of information can be used for confirming the time about the modification of some type at least of computing node group.If the quantity of computing node was reduced to and is lower than X during PES or the decision of other system will be organized; Then PES or other system can determine in fact computing node quantity is reduced to be lower than X before; Wait when finishing near given period or given period (for example, to the user collect the charges hour finish the time).Similarly; If a set of calculated node (was for example losing efficacy when carrying out new Coordinating Activity; When approaching will the end) through a period of time between the computing node quantity modification polymerization period of request; Then PES or other system can determine the number of nodes of actual node quantity with the offical record of choosing wantonly upgraded; Reflecting said inefficacy, but need not to begin immediately to add alternative computing node-like this, if confirmed that polymerization is revised and can the computing node quantity of this group be reduced one or more computing nodes through the computing node quantity of request during Coordinating Activity; The computing node that then lost efficacy can be used as this category node of a minimizing, and the execution computing node that nonterminal should be organized.
In some embodiments, PES or other system can manage the repeatedly dissimilar modification that the computing node group is carried out simultaneously.As an instance; Can adopt the computing node of single position that the computing node group is managed in current required computing node quantity; But the user can determine to specify for the computing node group yardstick of second type, makes that the required subclass of the appointment of computing node is positioned at the different second places in this group.If so; PES or other system can operate to satisfy the expectation value of second yardstick through variety of way; Variety of way comprises through in the group that any new computing node progressively is added into second place place and from the group of primary importance, progressively remove any existing computing node up to the expectation value that realizes second yardstick, and the existing computing node that perhaps stops immediately in the group at primary importance place substitutes computing node and is added in the group at second place place making.This type of progressively adds and/or any way that removes in the mode that can other place discusses in more detail triggers, and comprises replacing unavailable computing node, revising computing node quantity etc. in response to the trigger of the user instruction of dynamically appointment and/or user's appointment of being satisfied.In addition; Though computing node quantity and position are balanced simultaneously in this example; But can carry out the variation (for example, for example changing into second type from first type) of various other types in a similar fashion according to the dissimilar computing nodes that will have now with computational resource of different correlated measures.In addition; Though carried out the modification of program executive capability in some instances through changing computing node quantity; But in other embodiments; This type of ability revise and can carry out through the program executive capability that changes one or more computing nodes in this group (second computing node that for example, has a correlation computations resource of one or more types more or less through usefulness replace first computing node, through to a node in the computing node of the part that becomes this group can with the amount of one or more computational resources make amendment etc.).
As previously mentioned, PES can provide and use types of functionality in each embodiment, and these functions can provide in every way.For example; In some embodiments; Can comprise a plurality of computing nodes from the program executive capability that PES obtains; Said computing node is used for representative of consumer and comes executive routine, for example through via one or more networks or can between computing machine, transmit a plurality of physical computers of other exchanges data dielectric interconnect of data.In these computing machines at least some can comprise separately in some embodiments carry out a plurality of programs simultaneously enough calculating related resources (for example; The enough internal memory write, non-volatile memories, cpu cycle or other CPU usage tolerance, the network bandwidth, swapace etc.); And at least some in these computing machines can provide a plurality of virtual machine computing nodes separately in some these type of embodiments, and on behalf of different users, said virtual machine computing node can carry out one or more programs separately.In addition, in each embodiment, on behalf of a plurality of users, PES can carry out each class method.For example, this class method of carrying out of representative of consumer can comprise one or more operating systems, application (for example, server and/or other software application), utility routine, routine library etc.In addition; In at least some embodiments; This class method can comprise executable software image, and such as virtual machine image, it can start loadable in other words conj.or perhaps on one or more virtual machine computing nodes; And can comprise operating system software separately, be used for the software of one or more application programs, and/or configuration information etc.
In at least some embodiments, on one group of one or more computing node, carry out one or more programs through PES and can cause in response to the current executed request of carrying out those programs immediately.Perhaps, said initiation can be carried out request based on the program that receives before this, and this request can be scheduled to keep in the future in other words conj.or perhaps carry out to those programs in the current time.Program is carried out request and can be received in every way; For example directly (for example receive from the user; Carry out other GUI that service provides via interactive console or by program); Perhaps the user's executive routine carried out voluntarily from one or more other programs of automatic initiation or other instance receives (for example, carrying out the API that service provides via program, such as the API that uses the network service).Program is carried out request can comprise the various information that are used to cause one or more program implementation; Indication such as other duplicate of executable program or program to be carried out, the program that is provided for carrying out in other words conj.or perhaps through registration before this; With many program examples of treating to carry out simultaneously (for example; Be expressed as the required instance etc. of instance, minimum and the maximum quantity of single requirement); And preference and/or the requirement (for example, resources allocation, the geography that is used to carry out and/or logical place, other program and/or computing node close on execution, time correlation standard etc.) that are used to carry out various other types of one or more programs.
After reception was used for carrying out the request of one or more program examples in the time of indication, PES can determine one or more computing nodes are used for a group of executive routine instance.In some embodiments, use the decision of computing node (promptly be used in the future and carry out) when described request, to carry out.In other embodiments, the decision that computing node is used for carrying out in the future one or more program examples can be delayed to the time after a while based on information available at that time, such as the execution time in the future.In some embodiments; Which computing node is used for the decision that representative of consumer carries out one or more programs before carrying out request, makes, for example the user subscribe and/or registration with another time before time of using PES and/or the request of carrying out user program.For example; In some these type of embodiments; One or more computing nodes can be relevant with the user in a period of time, makes to represent this user executive routine on relevant computing node in any time during said (such as any time of the request that is received in the software of carrying out said user during said).In addition; In some embodiments; Which computing node is used for making when representative of consumer comes the decision of executive routine can be used for carrying out said user's program at the computational resource of one or more computing nodes and/or one or more computing nodes; For example not to be used at computing node and/or can otherwise be used for executive routine the time, on one or more computing nodes, to carry out the program of one or more pending requests.
The decision that which computing node is used to carry out each program duplicate or instance can be made in every way, comprises being in other words conj.or perhaps of appointment in the request of being based on any preference of program and/or associated user's appointment and/or requirement (for example, hour of log-on etc.).For example, if confirmed to be used for preferred and/or resource requirement (for example, the internal memory and/or the storage of executive routine instance; Cpu type, cycle or other performance metric; Network capacity; Whether standard Platform Type etc.) then can have the enough resources that can be used for satisfying those resource criterion based on computing node with the decision that suitable computing node is used for the executive routine instance at least in part.Be included in the U.S. Patent application No.11/395 that is called the pending trial of " Managing Execution of Programs by Multiple Computing Systems " that submitted on March 31st, 2006 about carrying out to carry out other details of carrying out in the service in program with configurator; In 463, this full patent texts is incorporated this paper into the mode of introducing in view of the above.
In some embodiments, expense can be relevant with the use of PES, but make the PES representative of consumer come executive routine to exchange the payment of this user to one or multinomial expense.For example; In some embodiments; Be used in amount and/or the type that representative of consumer is carried out the program executive capability of one or more programs according to branch; For example be used in one or more, amount of ram in many processing units of the program of carrying out this user, memory space, amount of network resources etc., can collect the charges to this user according to branch.In some embodiments, expense can be based on other factors, such as the various characteristics of the computational resource that is used for executive routine, for example based on CPU ability or performance, Platform Type (for example, 32,64 etc.) etc.In some embodiments, expense can be collected according to various service factors, such as the price of the price of each use service, the price of using each chronomere of calculation services, each used memory space, each imports into and/or the price of the data that spread out of etc.In at least some embodiments, discuss in more detail like hereinafter, expense can be based on various other factorses, such as the various character (for example, carrying out continuity, fault tolerance etc.) about executive routine.In at least some embodiments; The service of various grades, type and/or level that PES supplier can be provided for representing a plurality of users to come executive routine or in the function one or more; And in some these type of embodiments, various expenses can be relevant with the service of various grades, type and/or level.In addition; For example; The function of the particular type that grade can be used for being provided by PES, the expense of for example collecting second grade with the expense of collecting the first estate to the program executive capability function of first quantity first threshold of the appointment of used computing node (for example, up to), to the program executive capability function of second quantity is (for example; The lower price grade) (for example, be higher than used computing node appointment first threshold and up to second threshold value of the appointment of used computing node) etc.Be included in the U.S. Patent application No.11/963 that the name of submitting on Dec 21st, 2007 is called the pending trial of " Providing Configurable Pricing for Execution of Software Images " about carrying out other details of serving relevant various expenses with program; In 331, this full patent texts is incorporated this paper into the mode of introducing in view of the above.
In addition, PES can provide and use the function of various other types in each embodiment, discuss in more detail like other place.
Fig. 3 is the block diagram that the exemplary that is applicable to the system that the technology of many set of calculated node of managing a plurality of users is implemented is shown.Specifically; Fig. 3 shows and is applicable to the server computing system 300 that provides program to carry out at least some functions of service, and program is carried out operable each client computing system 350 of user, the program execution operable computing node 360 of service and other computing system 380 of service.In illustrated embodiment, server computing system 300 has with lower component, and it comprises CPU 305, various I/O parts 310, memory storage 320 and storer 330.Illustrated I/O parts comprise display 311, network connection 312, computer-readable medium drive 313 and other I/O equipment 315 (for example, keyboard, mouse, loudspeaker etc.).In addition, illustrated user's computing system 350 has and the similar parts of the parts of server computing system 300, and it comprises CPU 351, I/O parts 352, memory storage 354 and storer 357.Other computing system 380 and computing node 360 also can comprise separately with reference to some or whole similar parts in the server computing system 300 shown parts, but for the sake of brevity, not shown in this example this base part.
Program is carried out the embodiment of service system manager module 340 and just in storer 330, is carried out; And through network 390 (for example, via the Internet and/or WWW, via the private cellular network etc.) and computing system 350 and 380 and computing node 360 carry out alternately.In this exemplary embodiment, PESSM 340 comprises about management (for example combining to carry out service by the program of PESSM340 management) and carries out the function of each mutual user's (not shown) to the use of a plurality of computing nodes 360 with user's computing system 350.Other computing system 350 and 380 and computing node 360 can be with various softwares as carrying out with the interactive part of PESSM.For example; User's computing system 350 can be in storer 357 executive software with PESSM 340 carry out mutual (for example; Part as Web-browser or private client application program); The user who for example represents those systems with configuration and/or request executive routine in every way on one or more computing nodes 360, and to implement the action of various other types, discuss in more detail like other place.Can with about the various information storage of the function of PESSM module 340 in memory storage 320; Such as the information of revising about the information 322 of the configuration, execution and/or the registration that are used to represent a plurality of users to come executive routine, about the program executive capability of computing node group 324 (for example, about the information of the predefine trigger of user's appointment; About information from the ability modify instruction of user's dynamic appointment; About the information of computing node performance measurement and the out of Memory that whether is satisfied about the trigger of confirming appointment; The currency of required, the reality of each group and the computing node quantity of offical record; Deng); And the information 326 of the cause-effect relationship attribution of revising about the specific program executive capability of specific calculation groups of nodes (for example; At least some incidents that take place through listing and at least some variations of each set of calculated node; And particular event and specific change are connected, for example to be similar to Fig. 2 B and other local mode of being discussed).
PESSM module 340 be received on one group of one or more computing node 360 carry out one or more programs request (or other indication) afterwards; PESSM module 340 is selected one or more computing nodes of this group, and causes the execution of those programs on those computing nodes 360.In addition; PESSM module 340 can further be carried out alternately with computing node 360; With the execution of program on said computing node that stops subsequently being caused, with one or more one or more other computing nodes 360 or the computing systems 380 etc. of moving in the said program.Computing node 360 can have various forms in each embodiment, for example to comprise many physical computing systems and/or many virtual machines of in one or more physical computing system, carrying out.In some embodiments, server computing system 300 and computing node 360 can be the part of the colocated computing system of data center or other group, can otherwise be the computing node of private perhaps.In addition; In some embodiments; PESSM module 340 can be carried out alternately with one or more other computing systems 380; To start or to stop the execution of one or more programs on those computing systems, for example its prerequisite is that computing system 380 is by providing computing node to provide for one or more third party participants that other users use.In some embodiments; PESSM module 340 can be further or the right to use of managing calculating related resource or the service (except that program is carried out service) (for example, persistence or ephemeral data stores service, messenger service, database service etc.) of one or more types on the contrary.
In addition, program is carried out the embodiment of service ability maintenance manager module 345 and just in storer 330, is carried out, and carries out alternately through network 390 and computing node 360 in this embodiment.Specifically; In this exemplary embodiment; PESCMM module 345 comprises the function of carrying out about one or more in the monitoring calculation node 360 or perhaps with it alternately with the use of following the trail of those computing nodes, for example with the current practical programs executive capability of confirming the computing node group and/or confirm and the corresponding current performance characteristic of some or all of computing nodes of computing node group.As previously mentioned, this type of information can be stored on the memory storage 320 and/or other position, and can be used by module 340 and 345 in every way.For example; In some embodiments; If module 345 find computing nodes lost efficacy or perhaps become unavailable (for example; As providing initialization computing node in other words conj.or perhaps with as the part in the process of the part of computing node group, after computing node has been used as the part of computing node group etc.), then module 345 can be taked to move so that unavailable computing node is replaced with new computing node automatically.In other embodiments; Module 345 possibly can not be carried out some or all of monitorings to computing node on the contrary; For example its prerequisite be module 345 obtain from another source on the contrary about the current practical programs executive capability of computing node group and/or with the information of the corresponding current performance characteristic of some or all of computing nodes of computing node group, according to circumstances this information is used to keep the program executive capability of computing node group then.
Be to be understood that, computing system 300,350 and 380 and computing node 360 be merely exemplary, and be not to be intended to limit scope of the present invention.Said computing system and/or node can comprise a plurality of interactive computing systems or equipment on the contrary separately, and said computing system/node can comprise through one or more networks (such as the Internet), be connected to unshowned miscellaneous equipment via the WWW or via private (for example mobile communications network etc.).More generally; Computing node or other computing system can comprise and can carry out mutual and carry out hardware or any combination of software of the function of said type; (for example include but not limited to desktop computer or other computing machine, database server, the network storage equipment and other network equipment, PDA, mobile phone, wireless telephone, pager, electronic organizer, internet equipment, television system; Adopt STB and/or individual/digital video recorder), and various other consumer goods that comprise the suitable communication ability.In addition, the function that is provided by illustrated module 340 and/or 345 can be allocated in other module in some embodiments.Similarly, in some embodiments, it possibly be available maybe some functions of module 340 and/or 345 and/or other additional function can not being provided.
Be to be understood that also though each project is illustrated as in use and is stored in the storer or on the memory storage, these projects or its part can transmit between for the storer of storage administration and data integrity and other memory device.Perhaps, in other embodiments, some in said software module and/or the system or all can in the storer on another equipment, carry out, and communicate with illustrated computing system via communication between the computing machine.In addition; In some embodiments; In said system and/or the module some or all can otherwise implement or provide, these modes with firmware and/or hardware mode, (for example include, but is not limited to one or more special ICs (ASIC), standard integrated circuit, controller such as at least in part; Through carrying out suitable instruction, and comprise microcontroller and/or embedded controller), field programmable gate array (FPGA), CPLD (CPLD) etc.Also can with in said module, system and the data structure some or all (for example; As software instruction or structural data) be stored on the computer-readable medium; Such as hard disk, storer, network, perhaps through suitable driver or the portable medium object that reads via suitable web member.The data-signal that said system, module and data structure also can be used as generation (for example; Part as carrier wave or other analog or digital transmitting signal) goes up transmission at various computer-readable transmission mediums (comprising wireless and wired/cable dielectric); And (for example can take various forms; As the part of single or multichannel analog signals, perhaps as a plurality of discrete digital bags or frame).In other embodiments, this type of computer program also can be taked other form.Therefore, the present invention can implement through other computer system configurations.
Fig. 4 carries out the process flow diagram of the exemplary of service system manager programs 400 for program.Said program can provide in the following manner; For example carry out Figure 1A and Figure 1B PESSM module 110 and 180 separately; And/or the PESSM module 340 of Fig. 3, for example helping the use of leading subscriber to many set of calculated node, and the bookkeeping that carries out other type in some cases.In this illustrated embodiment, program 400 supervisory routines are carried out each use aspect of service, and this program is carried out service the program executive capability of representing a plurality of users to come executive routine is provided.
In illustrated embodiment, said program begins from the picture frame 405 of reception information or request.Said program proceeds to picture frame 410, to confirm whether the request or the information (such as the request from the user) that are received are about causing the execution of one or more programs on a set of calculated node.If; Said program proceeds to picture frame 415; With the information that obtains to carry out about through the program of request; Such as the initial aequum (for example, required computing node quantity) of the program executive capability of computing node group, randomly one or more programs to be carried out and the ability of randomly one or more user's appointments are revised trigger.Like other local discussion; In some embodiments; The user can be from all kinds of computing nodes one or more in select and/or can otherwise specify the required computational resource (for example, processing unit type/amount, amount of ram, platform specification etc.) of various amounts and/or type.In picture frame 420; Said program selects computing node to be used for this group then; And in picture frame 425, begin to make those selected computing nodes can supply the user to use, for example through selected computing node being provided and randomly causing one or more program implementation to be carried out.The required program executive capability of the selected computing node during said program also will be organized is appointed as the initial program executive capability of the offical record of this group.When representing the user to use computing node, can make this user know its availability in every way, or in other embodiments, computing node can be operated by automated manner, and need not the further mutual of user.Said program proceeds to picture frame 430 then, to store the information about the computing node group, comprises the trigger of the Any user appointment of this group.
If confirm not receive the request of the execution that causes a set of calculated node on the contrary at picture frame 410 places, then said program proceeds to picture frame 440 on the contrary, to determine whether the request about the program executive capability of revising existing computing node group that receives.If said program proceeds to picture frame 445, to receive and to store user instruction about the dynamic appointment of the program executive capability of revising indicated existing computing node group.In illustrated embodiment; User instruction can condense together with other the possible program executive capability modification request that occurs in during the pre-polymerization period; And carry out further handling during the Coordinating Activity in next time (for example with reference to picture frame 465-477); But can carry out in other embodiments, the modification request of at least some these type of user's appointments on the contrary immediately.
If confirm not receive the request of the program executive capability of revising a set of calculated node on the contrary at picture frame 440 places; Then said program proceeds to picture frame 460 on the contrary; To determine whether current will carrying out regularly or perhaps Coordinating Activity repeatedly, for example when the polymerization period that the program executive capability modification of this computing node group is asked finishes to the program executive capability of one or more computing node groups.If; Said program proceeds to picture frame 465; With definite current one or more computing node groups (for example, the computing node group that the polymerization period has finished and one or more program executive capability on-the-fly modify by the computing node group of polymerization) of carrying out Coordinating Activity, and in picture frame 467; Select next computing node group, begin from first through confirming.Said program proceeds to picture frame 470 then, carries out the program of ability Coordinating Activity repeatedly with execution, and wherein this program instance will be described with reference to Fig. 5 in more detail.Next said program proceeds to picture frame 475, the program of the activity (in picture frame 470, carrying out) of the cause-effect relationship attribution of carrying out with execution revising about the program executive capability, and wherein this program instance will be described with reference to Fig. 6 in more detail.After picture frame 475, said program proceeds to picture frame 477, and is more through definite computing node groups to determine whether to handle, and if said program is back to picture frame 467, to select next this computing node group through confirming.
If confirm the current program executive capability that is directed against one or more computing node groups does not on the contrary carry out regularly or perhaps Coordinating Activity repeatedly at picture frame 460 places; Then said program proceeds to picture frame 480 on the contrary, randomly to carry out the operation of one or more other indications.One or more in below this generic operation for example can comprise: user's request (providing this type of other program to carry out type) of carrying out about the program of carrying out other type if the program that is provided is carried out service, for example on single computing node, to carry out single program; The program executive capability of user's appointment of not carrying out is immediately revised request (for example, stopping carrying out the user instruction of indicated specific calculation node, if for example this computing node can not normally move); Specify additional flip-flop to revise user's request of the configuration information of indicated computing node group in other words conj.or perhaps; Carry out user's request of Coordinating Activity immediately to indicated computing node group, such as replenishing or alternative (for example, if only when the user asks, just carry out Coordinating Activity) of conduct Coordinating Activity repeatedly; Acquisition about with user's request of the various status informations of user-dependent one or more computing node groups; Manage the request of correlated activation (such as reservation, registration or payment operation) to the user; Deng.
After picture frame 430,445 or 480; If perhaps in picture frame 477, confirm unavailable on the contrary through the additional calculations groups of nodes of confirming; Then said program proceeds to picture frame 485; With information or request according to the information that is received in the picture frame 405 or request or otherwise (for example termly) initiation, randomly carry out Any user charging (or reimbursemen) activity, for example come to collect and/or the collection expense from one or more users to carry out function according to the program that offers these users.Said program also can randomly be carried out regular house-keeping according to circumstances.
After picture frame 485, said program proceeds to picture frame 495, to determine whether and will continue, for example when stopping carrying out the clearly indication of said program.If confirm and will continue that then said program is back to picture frame 405, otherwise, proceed to picture frame 499 and end.Be to be understood that, can in some embodiments and situation, carry out the activity of other type, for example to confirm whether the user is authorized to carry out the specific operation through request, to be directed against collecting payment from the user immediately of some type etc. through requested operation.In addition; Though operating in to be indicated as in the illustrated embodiment with special mode to specific calculation groups of nodes and certain relevant user, user's request and other carry out; But in other embodiments, some or all of this generic operation can for example be applied to a plurality of computing node groups relevant with unique user on the contrary more at large and/or use from a plurality of users relevant with one or more computing node groups.
Fig. 5 is the process flow diagram of the exemplary of recursive facility coordinator 500.Said program can provide in the following manner, for example carries out Figure 1A and Figure 1B PESSM module 110 and 180 separately, and/or the PESSM module 340 of Fig. 3, and the picture frame 470 of the program 400 that for example this program can be from Fig. 4 begins.
In illustrated embodiment, said program starts from picture frame 505, and wherein it has obtained the indication of the current selected computing node group of pending ability Coordinating Activity.In picture frame 515; Said program is retrieved the information about the program executive capability of the offical record of selected computing node group then; For example according to the previous Coordinating Activity that had carried out to selected computing node group (if or should activity be the Coordinating Activity first time that is carried out; Then be the initial program executive capability of the offical record of selected computing node group); And/or according to the subsequent modification (for example, as describing in more detail) that can be undertaken by PES ability maintenance manager module registration formula program recorded executive capability with reference to Fig. 7.Said program proceeds to picture frame 520 and 525 then, to confirm the current reality and the current required program executive capability of selected computing node group respectively.Confirm that current practical programs executive capability can comprise the information that for example retrieval is stored as a part of monitoring selected computing node group by PES ability maintenance manager module before this; But in other embodiments; Said program 500 can dynamically be confirmed current virtual rating (for example, through dynamic requests PES ability maintenance manager module or other monitoring source this information being provided).
Confirm in picture frame 525 that current required program executive capability can comprise and for example retrieve following information; About with the information of any ability modify instruction of the corresponding dynamic appointment that has received from the associated user to selected computing node group during the pre-polymerization period of Coordinating Activity (for example; As before this with reference to 445 discussion of picture frame of Fig. 4), and about previous in the information of the trigger of the Any user appointment that during the pre-polymerization period, had been confirmed as the selected computing node group that is satisfied.Perhaps; In some embodiments; The determined Performance Characteristics information that said program can be retrieved selected computing node group on the contrary (for example; The information that stores as a part of monitoring selected computing node group by PES ability maintenance manager module before this; Or the information that dynamically obtains through asking PES ability maintenance manager module or other monitoring source that this information is provided), so that the current trigger of the Any user appointment of selected computing node group that determines whether is satisfied at present and/or during working as the pre-polymerization period, is being satisfied before this.After the various information of retrieval; Current required program executive capability can revise to confirm (discussing in more detail like other place) through the one or more program executive capability through request of polymerization; So that after the ability of making any this type of polymerization is revised, confirm the required program executive capability of gained.
After picture frame 525; Said program proceeds to picture frame 530; With the actual change of confirming to make selected computing node group, so that coordinate the current reality of selected computing node group, the program executive capability of required and offical record, for example so that current formal ability is adjusted into current required ability.Said program proceeds to picture frame 535 then; Will being appointed as the program executive capability of the current offical record that is upgraded of selected computing node group, and further causing the program executive capability of confirming in the picture frame 530 and revise by the current required program executive capability that modified selected computing node group provides.After picture frame 535, said program proceeds to picture frame 599 and returns.
Fig. 6 revises the process flow diagram of the exemplary of attribution program 600 for ability.Said program can provide in the following manner, for example carries out Figure 1A and Figure 1B PESSM module 110 and 1 80 separately, and/or the PESSM module 340 of Fig. 3, and the picture frame 475 of the program 400 that for example this program can be from Fig. 4 begins.
In illustrated embodiment, said program starts from picture frame 605, and wherein it has obtained the indication that pending ability is revised the current selected computing node group of attribution activity.In picture frame 625, said program is discerned the information about the program executive capability change in availability that since the previous time (such as the previous Coordinating Activity that carries out to selected computing node group), has taken place then.Discern the information that said change information can comprise that for example retrieval is stored as a part of monitoring selected computing node group by PES ability maintenance manager module before this; But in other embodiments; Said program 600 can dynamically be confirmed this information (for example, through dynamic requests PES ability maintenance manager module or other monitoring source this information being provided).
After picture frame 625, said program proceeds to picture frame 630, determining whether that any this type of ability change in availability takes place, otherwise, proceed to picture frame 699.Otherwise said program proceeds to picture frame 635, revises the information of request event about the program executive capability that since the previous time (such as the previous Coordinating Activity that carries out to selected computing node group), has taken place with identification.Discern said event information for example can comprise retrieval before this by the PES system manager module as the information that provides the part of function to store to selected computing node group, for example discuss in more detail with reference to Fig. 4 and Fig. 5.In picture frame 640; For example according to the type of incident (for example replace unavailable computing node the automated system operation, specify the user instruction that is received that makes an immediate response accordingly etc.), said program confirms directly to cause any incident in institute's identification incident of corresponding change in availability then.
After picture frame 640, said program proceeds to picture frame 645, and the next change in availability to select to be discerned in the picture frame 625 begins from first.In picture frame 650, said program confirms then whether this variation can be directly owing to one of individual case of confirming in the picture frame 640, if be the reason of selected ability change in availability with this logout.Otherwise, said program in picture frame 650 with the reason attribution of selected ability change in availability by in the picture frame 640 undetermined other the combination of identification incident.In picture frame 660, said program determines whether to exist more multipotency power change in availability then, if be back to picture frame 645 to select next this ability change in availability.Otherwise said program proceeds to picture frame 699 and returns.
Fig. 7 carries out the process flow diagram of the exemplary of service ability maintenance manager program 700 for program.Said program can provide in the following manner; For example carry out Figure 1A and Figure 1B PESCMM module 115 and 160 separately; And/or the PESCMM module 345 of Fig. 3, for example to help many set of calculated node of monitor user ', comprise and confirm the practical programs executive capability that can obtain from the computing node group.In this illustrated embodiment, said program 700 combines to provide the program execution service of the program executive capability of representing a plurality of users to come executive routine to operate, but in other embodiments, the some or all of functions of program 700 can be provided otherwise.
In illustrated embodiment; Said program starts from picture frame 705; Wherein received the indication that begins to collect about the information of the computing node of one or more computing node groups (for example continuously mode) in other words conj.or perhaps to repeat; Though not shown here, in some embodiments, other module and/or program dynamically requestor 700 to produce and to provide the specific relevant information information of specific correlation computations groups of nodes (for example about).In picture frame 705, said program is collected the Performance Characteristics information of one or more these type of computing nodes, comprises the indication of the computing node group that those computing nodes are affiliated, for the aggregation information that is used to produce said computing node group later on.Said information can produce in every way; Comprise through (for example asking specific calculation node or correlation module; The relevant VM manager component of virtual machine computing node) provides this information to drag to get this information, with this information push to program 700 (for example termly through this type of computing node and/or associated components; When the incident of some type, make the computing node disabled detected error state of closing or perhaps become such as meeting; Deng), come monitoring network flow and/or single resource utilization through the specific calculation node; Deng.
Said program proceeds to picture frame 710 then; With the polymerization characteristic information of confirming one or more selected computing node groups and this determined information of storage for later use, for example be used for all computing node groups, just collected the computing node group of independent computing node information, ask or the computing node group of nearest uncreated polymerization characteristic information, wherein independent computing node information can be used for the computing node group etc. of each computing node of computing node group.Be to be understood that the polymerization characteristic information can produce in every way, comprise when only partial information can be used for the computing node of this group, estimate disabled independent Performance Characteristics information in other words conj.or perhaps such as inferring.In addition; Collect and/or the particular performance characteristics information of polymerization can be in every way and different; For example collecting the information of some type of all computing node groups in certain embodiments all the time, with according to the specific calculation groups of nodes the specified value of definite trigger collect information of some type etc.In addition, implement though picture frame 705-785 is illustrated as in a continuous manner in this example, be to be understood that, in some embodiments, each picture frame can otherwise be implemented on the contrary.For example, in some embodiments, the information gathering activity of picture frame 705 can carried out on the continuous basis or on approaching continuous basis, but the generation of the aggregation information in picture frame 710 and/or other picture frame only can regularly be carried out.
After picture frame 710; Said program proceeds to picture frame 715; To confirm and to store each the current practical programs executive capability information in one or more computing node groups; For example with one or more other tolerance of the program executive capability of the current quantity that reflects a current available set of calculated node and/or computing node group, and store determined information for later use.Though it is not shown here; But in some embodiments and situation; Said program is the corresponding formal program recorded executive capability of update calculation groups of nodes immediately also; With the determined current practical programs executive capability of reflection computing node group, and in other embodiments, this program can be waited for the program executive capability of when corresponding next group Coordinating Activity, just upgrading offical record.
In picture frame 720; Any ability of any computing node group that said program is randomly confirmed for any computing node group, to be satisfied then (is for example revised trigger; According to collect in the picture frame 705 and/or picture frame 710 in the Performance Characteristics information of polymerization; And/or according to the practical programs executive capability information of confirming in the picture frame 715); But in other embodiments, this trigger satisfies situation and confirms can when the polymerization period finishes, carry out on the contrary (such as with reference to the corresponding Coordinating Activity that discusses in more detail with reference to Fig. 5).If any trigger is satisfied through confirming, the information about this type of trigger that is satisfied of then storing then is for later use.In some embodiments and situation; Certain triggers is satisfied the program executive capability that also can cause the correlation computations groups of nodes immediately and revises; And if so; Then can cause this program executive capability modification activity, and said program also can write down the cause-effect relationship information of this trigger that is satisfied and said program executive capability being revised activity association, for example for using (with reference to the program 600 of figure 6) later on.
In a similar fashion; Any computing node that said program determines whether to cause any computing node group in picture frame 725 is can be used for the computing node group; But this initialization had been lost efficacy or perhaps not completion within set period (for example 10 minutes); If; The illustrated embodiment of said program begins to provide immediately the alternative computing node of any this type of computing node, and said program also can write down the cause-effect relationship information of this initialization computing node unavailability as the reason of the replacement activity that is caused.In other embodiments, this type of replacement activity on the contrary maybe be not be carried out (for example, can ask polymerization together with other of update routine executive capability on the contrary) and/or can be undertaken by the program 400 of Fig. 4 on the contrary with direct mode.In addition, as the part of the replacement activity that causes this type of unavailable computing node, said program also can take action with stop unavailable computing node (for example, if this node still in operation but do not have response).
In a similar fashion; Said program randomly begins to provide immediately in picture frame 730 in the computing node group before this as the part of computing node group but is confirmed as at present and lost efficacy or perhaps the alternative computing node of the disabled any computing node that becomes; And if so, said program also can write down the cause-effect relationship information of this computing node unavailability as the reason of the replacement activity that is caused.In other embodiments; This type of replacement activity possibly (for example not carried out with direct mode on the contrary; Can ask polymerization together with other of update routine executive capability on the contrary) and/or can be undertaken by the program 400 of Fig. 4, and/or can carry out causing automatically the confirming automatically of other type that changes immediately of the program executive capability of specific calculation groups of nodes.In addition, as the part of the replacement activity that causes unavailable computing node, said program also can take action to stop this unavailable computing node (for example, if this node is still moving but do not have response).In addition; Discuss in more detail like other place; When determining whether to carry out replacement activity immediately with reference to picture frame 725 and/or 730; Said program can be considered other factors in some embodiments, such as will to or to period that the associated user collects the charges, carry out influencing the plenty of time of replacement activity before carrying out the Coordinating Activity next time of desirable property etc. until plan.
After picture frame 730, said program proceeds to picture frame 785, randomly to carry out any house-keeping, comprises updated stored information according to circumstances.After picture frame 785, said program proceeds to picture frame 795, to determine whether and will continue, for example when receiving the clearly indication of termination.If confirm and will continue that then said program is back to picture frame 705, otherwise, proceed to picture frame 799 and end.Though be illustrated as in this embodiment through carrying out with the module different module of executive routine 400 with reference to program 700 described comings and goingses; But in other embodiments, the some or all of functions of these two programs can be carried out or otherwise combination by individual module.
Be to be understood that in some embodiments, the function that is provided by said procedure can alternative provide, such as being distributed in more between the multiprogram or being incorporated in the less program.Similarly, in some embodiments, for example when other illustrated program lacked respectively on the contrary or comprises this type of function, perhaps when changing the function quantity that is provided, illustrated program can provide with said function and compare more or less function.In addition,, those skilled in the art will recognize though various operation can be illustrated as in a particular manner (for example serial or parallel) and/or carry out with specific order, in other embodiments, these operations can other the order with otherwise carry out.Those skilled in the art also will recognize, the structuring in a different manner of above-mentioned data structure is such as through making the individual data structure be divided into a plurality of data structures or through making a plurality of data structures merge into the individual data structure.Similarly; In some embodiments; For example when other illustrated data structure lacked respectively on the contrary or comprises this type of information, perhaps when changing stored information content or type, illustrated data structure can store with said information and compare more or less information.
Article 1: a kind of method that is used for configuration computing system that program carries out service with the law of causality that on-the-fly modifies of the program executive capability of confirming to offer the user, said method comprises:
Carry out in said program under the control of the said configuration computing system of serving; Said program is carried out service provides the program that can be configured to carry out a plurality of long-distance users to exchange a plurality of computing nodes of the expense of collecting to said user for; And be directed against each among a plurality of said users
From following user's reception information; Said user specifies initial requirement and the appointment of the computing node of the instruction program that is used to carry out said user to be used for causing subsequently a plurality of quantity of the automatic modification of the quantity that supplies the computing node that said user uses is revised triggers; In the said quantity modification trigger each includes and is used for the one or more standards whether definite said quantity modification trigger is satisfied; And if said quantity revises trigger and be satisfied, then comprise the computing node number change of appointment to be asked;
Automatically confirm to be used for to carry out one group of said a plurality of computing node a plurality of of said user's said instruction program to said user; Said a plurality of computing node has initial required computing node quantity, and provides said a plurality of computing node to use for said user in the very first time;
In response to instruction, cause the execution on duplicate each in said set of calculated node of said instruction program from said user; And
During a period of time of the second time extremely subsequently said very first time, come automatic administrative institute to state the set of calculated node in the following manner:
During the said period; Automatically the said set of calculated node of monitoring is confirmed performance metric with the operation through those computing nodes, and comes to confirm automatically to be satisfied by in the said quantity modification trigger of said user's appointment at least one according to said definite performance metric;
During the said period, receive the one or more number change instruction of dynamic specified request of the number change of the said set of calculated node of each self-indication from said user;
Automatically confirm the actual computation number of nodes in said second time; Said quantity has reflected in fact can be in order to the quantity of the said set of calculated node of the program of carrying out said user in said second time; At least in part according to a plurality of change in availability of the said set of calculated node during the said period; The actual computation number of nodes of confirming in said second time is different from the initial requirement of the computing node at place of the said very first time, and at least some in said a plurality of change in availability have one or the multinomial correlative charges of collecting to said user;
For at least one of said a plurality of change in availability each; With the automatic attribution of single reason of said change in availability, said single former because of revising one of trigger through said at least one quantity of confirming to be satisfied or one of instructing from said one or more number change of said user;
For single reason not automatically for each in another at least in said a plurality of change in availability of attribution; Said another change in availability at least is different from said at least one change in availability; With the combination of multiple possible cause automatically owing to said change in availability; Said multiple possible cause is independently of one another, and comprises through said at least one quantity of confirming to be satisfied and revise one or more in trigger and comprise from said one or more number change instructions of said user at least one; And
Each indication and each the indication of a plurality of reasons combination of institute's attribution in said another change in availability at least of single reason of institute's attribution in said at least one change in availability is provided, so that can the correlative charges of said at least some change in availability be belonged to said user.
Article 2: according to the 1st described method; Wherein to one of said a plurality of users; At least in part according to the increase through request of the quantity of a said user's said set of calculated node; The initial required computing node quantity that the actual computation number of nodes of confirming in said second time was located greater than the said very first time; Said increase through request according to revise through said at least one quantity of confirming to be satisfied among trigger one or more each and from said one or more number change instructions of a said user at least one; Wherein automatically confirm a said user said second time place the actual computation number of nodes comprise through the said one or more quantity that are satisfied of polymerization and revise confirming to wait to make with the single polymerization of said group computing node quantity increasing a said user through the increase of request with from the increase through request of said at least one number change instruction of a said user and revising of triggers; The said definite single polymerization that wherein increases a said user's said group computing node quantity is revised as in said another change in availability at least of said group of a said user; Wherein said one or more quantity of being satisfied is revised trigger and is not any one single reason in said at least one change in availability of said group of a said user by attribution all from said at least one number change instruction of a said user, and each the combination of multiple possible cause in said another change in availability at least of said group of a wherein said user be included in during the said period confirm to the change in availability of a said user's said computing node group and be not all possible causes of the single reason of one of said at least one change in availability by attribution.
Article 3: according to the 2nd described method; Wherein said program is carried out service makes among the said long-distance user each all through one or more networks the instruction from client computing device is provided for network access service; Said at least some change in availability of said group that wherein have a said user of said correlative charges comprise that the one or many of quantity of a said user's said set of calculated node increases, and the second different expense of each additional calculations node payment one or many that provides for a part that the said a plurality of computing nodes that used by a said user were provided in the said very first time pay first expense and increase to said group said one or many quantity as a said user of a wherein said user.
Article 4: a kind of computer implemented method of the law of causality that on-the-fly modifies of the program executive capability that is used to confirm to offer the user, said method comprises:
Under the control of the one or more computing systems that are being configured to provide the program execution service of being used by a plurality of users, said program is carried out to serve to have and can be configured to carry out a plurality of computing nodes that said program is carried out the said user's who serves program,
Reception is used to represent said program to carry out the indication that first user who serves carries out the initial required program executive capability of one or more software programs;
Confirm to be used for to cause subsequently a plurality of abilities of the automatic modification of the program executive capability that offers said first user are revised triggers; In the said ability modification trigger each includes and is used for the one or more standards whether definite said ability modification trigger is satisfied; And if said ability revises trigger and be satisfied, comprise that then the program executive capability of specified type to be asked is revised;
Automatically confirm to be used for to provide first group of said a plurality of computing node a plurality of of said first user's said initial required program executive capability, and make the said first group computing node can be in order to carry out one or more software programs of said first user separately in the very first time;
Automatically discern a plurality of independent events that occur in during a period of time between the said very first time and second time subsequently and can cause the modification of the said program executive capability that said first group a plurality of computing nodes are provided separately, said a plurality of incidents comprise through the ability of the said appointment of confirming to be satisfied revises at least one in the trigger;
Automatically confirm the practical programs executive capability that said first user can obtain in said second time from the said first set of calculated node; According to the one or more change in availability that occur in the said first group one or more computing nodes during the period between the said very first time and said second time, the practical programs executive capability at place of said second time is different from the required program executive capability that offers said first user in the said very first time at least in part;
For in the said change in availability of said first group said one or more computing nodes each; With the one or more automatic attribution in institute's identification incident is the reason of said change in availability; In the said change in availability at least one has reason, and be said former because independently of one another and comprise the combination of the one or more a plurality of incidents in the trigger of revising through the ability of said at least one appointment of confirming to be satisfied; And
Each the indication of reason of said attribution in one or more said change in availability is provided, so that can carry out and the corresponding one or more further actions of the reason of said attribution.
Article 5: according to the 4th described method; Wherein said a plurality of incident also comprises by said first user dynamically specifies with request at least one ability modify instruction to the specified modification of said first group said program executive capability that provides, and is that the combination of a plurality of incidents of the reason of one of said at least one change in availability comprises one or more in the ability modify instruction of said at least one appointment by attribution wherein.
Article 6: according to the 4th described method, in the wherein said change in availability another has the reason for institute's attribution of the individual event in said a plurality of incidents at least, said another change in availability at least is different from said at least one change in availability.
Article 7: according to the 6th described method; Also comprise: confirm automatically said individual event be said another change in availability at least the reason of definite type; Said definite type former be because immediate cause or remote cause, and said individual event is provided is the indication of reason of said definite type of said another change in availability at least.
Article 8: according to the 4th described method; Automatically confirm that wherein said practical programs executive capability comprises definite a plurality of change in availability that taken place; And be that each reason in the said change in availability comprises respectively do for oneself one or more said a plurality of incidents of single reason of one of said a plurality of change in availability of identification wherein, and will be not be all said a plurality of event aggregations of the single reason of one of said a plurality of change in availability part for said a plurality of change in availability combination each other of not having single reason with the automatic attribution of said one or more incidents.
Article 9: according to the 4th described method; Wherein for one of said at least one change in availability; With the automatic attribution of the combination of said a plurality of incidents be the reason of a said change in availability comprise confirm said a plurality of incidents be combined as a said change in availability the reason of definite type; Said definite type former be because immediate cause or remote cause, and wherein provide each the said indication of reason of said attribution in said one or more change in availability to comprise to provide the indication of reason of said definite type of the said change in availability of being combined as of said a plurality of incidents.
Article 10: according to the 4th described method; Wherein said a plurality of independent event is asked the modification to said first group said program executive capability that provides separately, and wherein said method also comprises: confirm automatically and will revise the single polymerization that said first group program executive capability is made said first group said definite single polymerization modification is next through causing through the modification of request and in said second times prior of the said a plurality of incidents of polymerization.
Sub_clause 11: according to the 10th described method; Wherein said a plurality of incident also comprises by said first user dynamically specifies with request at least one ability modify instruction to the specified modification of said first group said program executive capability that provides; Wherein said definite a plurality of abilities are revised triggers and were specified before the said very first time by said first user, and are that the combination of a plurality of incidents of the reason of one of said at least one change in availability comprises one or more in the ability modify instruction of said at least one appointment by attribution wherein.
Article 12: according to the described method of Sub_clause 11, wherein said definite single polymerization is revised as a said change in availability, and it is in the combination of said reason that the ability modify instruction of its said one or more appointments is included in by attribution.
Article 13: according to the 10th described method; Wherein said first group program executive capability basis is measured for the quantity of the computing node of said first a group part; Make the initial requirement that said initial required program executive capability is a computing node; And make that the practical programs executive capability of confirming in said second time is the actual quantity that can be used as the computing node of said first a group part in said second time; Said one or more change in availability of wherein said first group said one or more computing nodes be included as separately in one or more computing nodes of unavailable part in said first group at least one be added at least one in the said first group one or more new computing node, and wherein said first group said definite single polymerization is revised as the determined variation of the quantity of the said first set of calculated node.
Article 14: according to the 13rd described method; The quantity that will increase the said first set of calculated node through one or more computing nodes of specified quantity is revised in wherein said definite single polymerization; Wherein said definite single polymerization is revised as in said one or more change in availability of said indication of the reason that provides said attribution; And wherein said method also comprises at least in part revising according to the determined single polymerization of said initiation carries out one or more further actions, and said action comprises and begins to collect one or multinomial expense to said first user.
Article 15: according to the 4th described method; Wherein provide in said one or more change in availability of said indication of reason of said attribution one comprise as in said a plurality of incidents of at least a portion of the reason of a said change in availability at least first, and wherein cause that in response in the said incident at least one at least one request that is caused by said first incident in a said change in availability and the said change in availability provides the said indication of reason of the said attribution of a said change in availability.
Article 16: according to the 15th described method; Wherein receive described request, and the readable explanation of the people of the reason that the said indication of reason of the said attribution of a said change in availability comprises the said attribution that produces a said change in availability wherein is provided and provides the readable explanation of the people of said generation to be shown to said user from the user.
Article 17: according to the 4th described method; Also comprise: in the one or more additional times that occur in after said second time each; With the automatic attribution of one or more additional institute's identification incident is the reason that occurs in the change in availability during said additional time; And wherein; For for a said additional institute identification incident of the reason of a variation in the said change in availability that occurs in during a period in said one or more additional time, a said additional institute identification incident is the result of a variation in the said change in availability during the period that occurs between the said very first time and said second time.
Article 18: according to the 4th described method; Wherein make the said first set of calculated node can comprise each that provides automatically in the said first set of calculated node in order to said one or more software programs of carrying out said first user separately, and comprise the execution on each each in the said first set of calculated node in the said one or more software programs of automatic initiation in the said very first time.
Article 19: according to the 4th described method; Wherein said program is carried out service and is the charge network access service away from said first user; Wherein said program is carried out service following among both at least one is provided: be used for remote computing system and carry out the graphic user interface that mutual one or more APIs (API) and long-distance user use through said one or more networks to carry out to serve with programming mode and said program through one or more networks, and wherein said first user pays one or multinomial expense according to the reason of the said attribution of one or more said change in availability at least in part.
Article 20: according to the 4th described method; Wherein said program is carried out a plurality of virtual machines that can carry out at least one program separately that service adopts Intel Virtualization Technology to make that said a plurality of computing node comprises to be provided by said physical computing system in a plurality of physical computing system each; The wherein said first set of calculated node is the loading virtual machine, and said one or more programs of wherein said first user are the part of virtual machine image.
Article 21: a kind of computer-readable medium, its content disposes the law of causality that on-the-fly modify of computing system with the program executive capability of confirming to offer the user through implementing a kind of method, and said method comprises:
Under the control of said configuration computing system, in the indication of very first time reception, to be provided for representing said first user to carry out the initial program executive capability of one or more software programs with first user-dependent first group of a plurality of computing node;
Automatically identification occurs between the said very first time and second time subsequently and has a plurality of independent events of the relevant required modification of said first group program executive capability separately;
Automatically confirm the practical programs executive capability that said first user can obtain in said second time from the said first set of calculated node; According to one or more change in availability of said first group one or more computing nodes, the practical programs executive capability at place of said second time is different from the initial program executive capability that provides in the said very first time at least in part;
With one or more reasons automatically owing in said first group said definite change in availability each, owing at least one said one or more former in the said change in availability because the combination of a plurality of said independent events of discerning; And
The indication of one or more reasons of said institute attribution one or more in said at least one change in availability is provided.
Article 22: according to the 21st described computer-readable medium; Wherein said configuration computing system is to provide the program of a plurality of computing nodes to carry out a part of serving; Said a plurality of computing node can be configured to carry out the program that said program is carried out the user of service; Wherein said first group a plurality of computing nodes are the subclass of said a plurality of computing nodes; Wherein receive said first group indication and be included in before the said very first time request that receives said initial program executive capability from said first user; And in the said very first time with the said first set of calculated node and said first user's auto-associating to be used for that said initial program executive capability is offered said first user; Wherein said first user also indicates before the said very first time one or more abilities to revise to trigger being used for the causing automatic modification to said first group program executive capability subsequently, and wherein said a plurality of independent event comprises through the said ability of confirming to be satisfied and revises at least one in the trigger and comprise at least one the ability modify instruction by the dynamic appointment of said first user.
Article 23: according to the 22nd described computer-readable medium; The wherein said required modification that is revised as through request of the said program executive capability of each said a plurality of independent event; What wherein said method comprised also through polymerization that at least one ability that is satisfied revises trigger comes to confirm automatically to wait that through the modification of request with from the modification through request of said at least one ability modify instruction of said first user single polymerization of making to improve said first group program executive capability revises; And causing said definite single polymerization in said second times prior revises; Wherein said definite single polymerization is revised as one of said at least one change in availability, and is that the combination of said a plurality of independent events of said one or more reasons of revising of said definite single polymerization comprises that said at least one ability that is satisfied is revised trigger and from least one ability modify instruction of said first user by attribution wherein.
Article 24: according to the 21st described computer-readable medium; Wherein said computer-readable medium is following among both at least one: store the storer and the data transmission media that comprises the memory data signal that is produced that comprises said content of the computing system of said content, and wherein said content is for making said computing system implement the instruction of said method when carrying out.
Article 25: a kind of computing system of the law of causality that on-the-fly modifies of the program executive capability that is configured to confirm the user comprises:
One or more processors; With
System manager module, when being carried out by in said one or more processors at least one, among said a plurality of users each, it is configured to a plurality of users' of supervising the network access services program executive capability in the following manner:
Confirm to be suppliedly to be used to represent said user to carry out the initial program executive capability of one or more software programs, and one or more abilities of confirming to be used for to cause subsequently the automatic modification of the said program executive capability that the said user of subtend provides are revised triggers;
The very first time with one group of a plurality of available computing node and said user's auto-associating, to be used for that said initial required program executive capability is offered said user; And
After the said very first time; Automatically identification occurs between the said very first time and second time subsequently and has a plurality of independent events of relevant required modification of said group said program executive capability separately, and said a plurality of incidents comprise at least one in the said ability modification trigger of confirming to be satisfied;
Automatically confirm one or more change in availability of one or more computing nodes of said group, said change in availability influence is by said group of said program executive capability that provides;
With one or more reasons automatically owing in said definite change in availability of said group each; Owing at least one said one or more former in the said change in availability because the combination of a plurality of said independent events of discerning, and owing to another said one or more former at least in the said change in availability because the individual event in the said independent event of discerning; And the indication of one or more reasons of the one or more said institute attribution in said definite change in availability of said group is provided.
Article 26: according to the 25th described computing system; Said a plurality of independent events of one of wherein said a plurality of users also comprise at least one the ability modify instruction by a said dynamic appointment of user; Wherein said system manager module also is configured to revise the required modification of trigger and revised to confirm automatically to wait to make with the single polymerization of said group said program executive capability improving a said user by the required modification of said at least one ability modify instruction of said user's appointment through said at least one ability that is satisfied of polymerization; And cause said definite single polymerization modification of said group to a said user in said second times prior; Wherein said definite single polymerization is revised as one of said at least one change in availability of a said user, and is that the combination of said a plurality of independent events of said one or more reasons of revising of said definite single polymerization comprises that said at least one ability that is satisfied is revised trigger and by said at least one ability modify instruction of said user's appointment by attribution wherein.
Article 27: according to the 26th described computing system; Said definite ability of a wherein said user is revised trigger and is specified by a said user; Wherein said network access service is to provide the program of a plurality of computing nodes to carry out service; Said a plurality of computing node can be configured to carry out the program that said program is carried out the long-distance user of service, and at least one each said group the said a plurality of computing nodes among wherein said a plurality of user are the subclass of said a plurality of computing nodes.
Article 28: according to the 25th described computing system, wherein said system administration manager assembly comprises the software instruction of being carried out by said computing system.
Article 29: according to the 25th described computing system, wherein among said a plurality of users each, said system administration manager assembly is made up of the device of a plurality of users' that are used for managing in the following manner said network access service program executive capability:
Confirm to be suppliedly to be used to represent said user to carry out the initial program executive capability of one or more software programs, and one or more abilities of confirming to be used for to cause subsequently the automatic modification of the said program executive capability that the said user of subtend provides are revised triggers;
The very first time with one group of a plurality of available computing node and said user's auto-associating, to be used for that said initial required program executive capability is offered said user; And
After the said very first time; Automatically identification occurs between the said very first time and second time subsequently and has a plurality of independent events of relevant required modification of said group said program executive capability separately, and said a plurality of incidents comprise at least one in the said ability modification trigger of confirming to be satisfied;
Automatically confirm one or more change in availability of one or more computing nodes of said group, said change in availability influence is by said group of said program executive capability that provides;
With one or more reasons automatically owing in said definite change in availability of said group each; Owing at least one said one or more former in the said change in availability because the combination of a plurality of said independent events of discerning, and owing to another said one or more former at least in the said change in availability because the individual event in the said independent event of discerning; And the indication of one or more reasons of the one or more said institute attribution in said definite change in availability of said group is provided.
Article 30: a kind of method that is used for configuration computing system that program carries out service with the program executive capability that on-the-fly modifies the user, said method comprises:
Carry out in said program under the control of said configuration computing system of service, said program is carried out a plurality of computing nodes that service provides the program that can be configured to carry out a plurality of long-distance users, and among a plurality of said users each,
From following user's reception information; Said user specifies initial requirement and the appointment of the computing node of the instruction program that is used to carry out said user to be used for causing subsequently one or more quantity of the automatic modification of said required computing node quantity is revised triggers; In the said quantity modification trigger each includes and is used for the one or more standards whether definite said quantity modification trigger is satisfied; And if said quantity revises trigger and be satisfied, then comprise the computing node number change of appointment;
Automatically confirm to be used for to carry out one group of said a plurality of computing node a plurality of of said user's said instruction program; Said a plurality of computing nodes of said group have said initial required computing node quantity, and provide said a plurality of computing node to use for said user in the very first time;
In response to one or more instructions from said user; Cause the execution on duplicate each in said set of calculated node of said instruction program, and said initial required computing node quantity is appointed as is registered as said user in spendable formal computing node quantity of the said very first time; And
During a period of time of the second time extremely subsequently said very first time, come automatic administrative institute to state the set of calculated node in the following manner:
During the said period; Automatically the said set of calculated node of monitoring is confirmed Performance Characteristics with the operation through said computing node, and comes to confirm automatically to be satisfied by in the said quantity modification trigger of said user's appointment at least one according to said definite Performance Characteristics;
During the said period, receive indication at least one instruction by the computing node number change of user's indication of the said set of calculated node of the dynamic appointment of said user;
Automatically confirm modified required computing node quantity in said second time; According to the computing node number change of the said appointment of revising trigger from said at least one quantity that is satisfied and the computing node number change of said user indication, said modified required computing node quantity comprises the variation to said required computing node quantity from the said very first time at least in part;
Automatically confirm the actual computation number of nodes in said second time, said quantity has reflected in fact can be in order to the quantity of the said set of calculated node of the program of carrying out said user in said second time;
In said second time; Said formal computing node quantity and said modified required computing node quantity automatic synchronization with said user; Said coordination comprises the quantity that is modified for automatically to the said computing node of a part of said group through taking to move, said definite actual computation number of nodes is changed into said modified required computing node quantity; And
Provide the said modified quantity of said set of calculated node to use, and said modified required computing node quantity is appointed as said user in spendable formal computing node quantity of said second time for said user.
Article 31: according to the 30th described method; Wherein to one of said a plurality of users; One or more according to from the become disabled said user of the said very first time during the period of said second time said set of calculated node at least in part; The formal computing node quantity that the actual computation number of nodes of confirming in said second time was located less than the said very first time; The said set of calculated node of wherein during the said period, monitoring a said user automatically comprises the current actual computation number of nodes of confirming a said user repeatedly; And upgrade a said user's said formal computing node quantity so that the formal computing node quantity of said renewal is consistent with said definite current actual computation number of nodes; It is following trigger that said at least one quantity that is satisfied of a wherein said user is revised trigger; It specifies the said set of calculated node that increases a said user with the quantity according to said one or more unavailable computing nodes; So that the formal computing node quantity at place remains on the initial requirement by the computing node of said user's appointment with said second time; The reduction of indication that wherein comprises the initial requirement of computing node of at least one computing node by the number change of the said user indication of a said dynamic appointment of user; Wherein automatically confirm in said second time that a said user's said modified required computing node quantity comprises with said one or more unavailable computing nodes and come to offset at least in part the reduction of said indication, and a wherein said user in spendable formal computing node quantity of said second time for to deduct reduction by the said indication of said user's appointment by the initial requirement of the computing node of said user's appointment.
Article 32: according to the 31st described method; Wherein said program is carried out service and is the charge network access service; Making said a plurality of user respectively do for oneself provides the said a plurality of computing nodes that used by said user to pay first expense in the said very first time; And respectively do for oneself the second different expense of modified quantity payment of the said set of calculated node that is used by said user was provided in said second time, said first and second expenses are separately at least in part based on the current quantity of said user's said set of calculated node.
Article 33: a kind of computer implemented method that is used to on-the-fly modify user's program executive capability, said method comprises:
Under the control of the one or more computing systems that are being configured to provide the program execution service of being used by a plurality of users, said program is carried out to serve to have and can be configured to carry out a plurality of computing nodes that said program is carried out the said user's who serves program,
Initial required program executive capability and the appointment of receive specifying first user who is used to represent said program to carry out service to carry out one or more software programs is used for causing subsequently the information of one or more abilities of the automatic modification of said required program executive capability being revised triggers; In the said ability modification trigger each includes and is used for the one or more standards whether definite said ability modification trigger is satisfied; And if said ability revises trigger and be satisfied, then comprise the modification of the specified type to required program executive capability to be asked;
Automatically confirm to be used for to provide first group of said a plurality of computing node a plurality of of said first user's said initial required program executive capability; Make the said first set of calculated node can be in order to carrying out one or more software programs of said first user separately, and said initial required program executive capability is appointed as is registered as said first user in spendable formal proceedings executive capability of the said very first time in the very first time.
After the said very first time; Monitor the said first set of calculated node to confirm that second time subsequently that said monitoring was included in after the said very first time is confirmed the practical programs executive capability that said first user can obtain from the said first set of calculated node about the currency of the Performance Characteristics of one or more types of those computing nodes of carrying out said one or more software programs;
Automatically confirm to revise said first user's said required program executive capability according to a plurality of incidents that occur in during a period of time between the said very first time and said second time; Said a plurality of incident comprises through the ability of the said appointment confirming to be satisfied according to said definite currency of said one or more Performance Characteristics types at least in part revises at least one in the trigger; And comprise at least one the ability modify instruction by the dynamic appointment of said first user, the ability modification trigger of said at least one appointment and each indication in said at least one ability modify instruction are to the specified modification of said required program executive capability; And
The formal proceedings executive capability of the said record that said first user can be used and practical programs executive capability and the said modified required program executive capability automatic synchronization confirmed in said second time; The formal proceedings executive capability of coordinating said record comprises according to said definite practical programs executive capability and said modified required program executive capability to be modified for automatically the computing node into said first a group part; Make said modified computing node can be used for providing said modified required program executive capability, and make the formal proceedings executive capability of said record be updated to reflect the said modified required program executive capability that provides.
Article 34: according to the 33rd described method; Wherein said first group program executive capability is measured according to the quantity as the computing node of said first a group part; Make the initial requirement that said initial required program executive capability is a computing node; The practical programs executive capability of confirming in said second time is the actual quantity that can be used as the computing node of said first a group part in said second time; That revises said required program executive capability confirms to comprise the modified requirement of said modified required program executive capability being confirmed as the said first set of calculated node automatically, and revises computing node as said first a group part automatically and comprise the actual quantity as the computing node of said first a group part is changed into said modified requirement.
Article 35: according to the 34th described method; Wherein the ability of said at least one appointment is revised the number change of indication that each the specified modification of said required program executive capability in trigger and said at least one ability modify instruction has reflected the requirement of the said first set of calculated node; And confirm that wherein said first group said modified required program executive capability comprises that the ability of said at least one appointment of polymerization revises the number change of the said indication of trigger and said at least one ability modify instruction, and revise the initial requirement of computing node according to said polymerization number change.
Article 36: according to the 34th described method; Wherein currency comprises the actual quantity of the computing node that can be used as said first a group part through the Performance Characteristics of said one or more types of the definite said first set of calculated node of said monitoring; Each time that wherein said monitoring was included in a plurality of times during the period between said first and second times is confirmed the current actual quantity of computing node, and the formal proceedings executive capability of wherein coordinating said record also comprises the said modified requirement of the said first set of calculated node is appointed as said first user in spendable current formal proceedings executive capability of said second time.
Article 37: according to the 33rd described method; In wherein said first group program executive capability basis polytype computational resource that can from the computing node as said first a group part, obtain each is measured; And the computing node of wherein revising automatically as said first a group part comprises at least a total amount in the said polytype computational resource of change, and said computational resource can obtain from the computing node as said first a group part after the automatic modification of said computing node.
Article 38: according to the 33rd described method; The ability of wherein said at least one appointment is revised each one or more standards in the trigger based at least a one or more set-points in said one or more Performance Characteristics types, and wherein said method comprises also that at least in part the match condition of revising between each the currency of confirming of one or more set-points and said one or more Performance Characteristics types in the trigger according to the ability of said at least one appointment to confirm automatically that the ability modification trigger of said at least one appointment is satisfied.
Article 39: according to the 38th described method; Wherein said at least a Performance Characteristics type is corresponding to the calculated load on the said first set of calculated node; The ability of wherein said at least one appointment is revised definite based on the calculated load that is in temporary transient increase state on the said first set of calculated node that trigger is satisfied; Wherein automatically revise computing node as said first a group part comprises that temporary transient increase can obtain from the said first set of calculated node practical programs executive capability so that hold the calculated load of said temporary transient increase state; And wherein said method also is included in the automatic practical programs executive capability of confirming with the temporary transient increase that reduces the said first set of calculated node of temporary transient increase the 3rd time subsequently afterwards of said practical programs executive capability, thereby reflects the end of the temporary transient increase state of said calculated load.
Article 40: according to the 38th described method; Wherein said at least one Performance Characteristics type comprises the actual quantity of the computing node that can be used as said first a group part; The ability of wherein said at least one appointment is revised definite actual quantity based on the said first set of calculated node that trigger is satisfied; Said actual quantity is the appointment aequum of diasporometer operator node, and the computing node of wherein revising as said first a group part automatically comprises that the actual quantity that has departed from of the said first set of calculated node is back to the appointment aequum of computing node.
Article 41: according to the 38th described method, one or more standards that the ability of wherein said at least one appointment is revised one of trigger one or more based in following: the logical combination of the time dependent tolerance of confirming of currency of the threshold value of the currency of confirming of indication performance attribute type, indication performance attribute type and the currency of confirming of multiple performance attribute type.
Article 42: according to the 33rd described method; Wherein said a plurality of incident comprises that also wherein one or more standards revise one of trigger based on the ability of the appointment that is triggered of one or more fixed times, and wherein said method also comprises at least in part and confirms automatically that according to the current time that meets said one or more fixed times the ability modification trigger of a said appointment is satisfied.
Article 43: according to the 33rd described method; Wherein said a plurality of incident comprises that also wherein one or more standards revise one of trigger based on the ability of the appointment that is triggered of one or more patterns of being confirmed by historical data, and wherein said method comprises that also the currency of confirming of at least one corresponding one or more Performance Characteristics type in the basis and said one or more patterns at least in part confirms automatically that the ability of a said appointment revises trigger and be satisfied.
Article 44: according to the 33rd described method; Wherein said a plurality of incident comprises that also wherein one or more standards revise one of trigger based on the ability of the appointment that is triggered of one or more indications of the workload that will be accomplished by the said one or more software programs of on the said first set of calculated node, carrying out, and wherein said method also comprises at least in part according to the information about the real work amount that will be accomplished by said one or more software programs that is obtained and confirms automatically that the ability of a said appointment revises trigger and be satisfied.
Article 45: according to the 33rd described method; Confirm that wherein said first group said modified required program executive capability comprises the modification of polymerization to the indication of said required program executive capability; Said modification revise in trigger and said at least one ability modify instruction by the ability of said at least one appointment each specify, and specify said definite modified required program executive capability according to the indication of the polymerization of said required program executive capability is revised.
Article 46: according to the 45th described method, wherein at least one that comprises in following revised in polymerization to the indication of said required program executive capability: accumulate said indication in revising, revising with said indication at least another revise offset said indication in revising at least one, select the one or more relevant one or more priority in said indication in revising and employing and the said indication modification according to one or more choice criteria.
Article 47: according to the 33rd described method; At least one ability modify instruction of wherein dynamically specifying and being included in said a plurality of incident by said first user comprises the single ability modify instruction by said first user's appointment; Wherein have precedence over through the ability of the appointment confirming to be satisfied and revise trigger, and confirm that wherein said first group said modified required program executive capability comprises that selection revises the indication of revising trigger with the ability that is used to replace said at least one appointment by the indication to said required program executive capability of said single ability modify instruction appointment and revise by the ability modify instruction of said first user's appointment.
Article 48: according to the 33rd described method; Comprise that also said first user receives the explanation of a plurality of diverse geographic locations; One or more according to the said first set of calculated node that is arranged in said geographic position; Said geographic position need comprise the indication subclass of the program executive capability of the said first set of calculated node separately; And the computing node of wherein revising as said first a group part automatically also carries out according to the explanation of said reception, makes said modified computing node be modified the indication subclass with the program executive capability that comprises the first set of calculated node that is arranged in each position, said a plurality of geographic position.
Article 49: according to the 33rd described method; Wherein automatically revising computing node as said first a group part comprises with one or more other computing nodes and replaces one or more in the said first set of calculated node, said one or more other computing nodes to have the available programs executive capability of the amount different with said one or more alternative computing nodes separately.
Article 50: according to the 33rd described method; Wherein make the said first set of calculated node can comprise each that provides automatically in the said first set of calculated node in order to said one or more software programs of carrying out said first user separately, and comprise the execution on each each in the said first set of calculated node in the said one or more software programs of automatic initiation in the said very first time.
Article 51: according to the 33rd described method; Wherein said program is carried out service and is the charge network access service away from said first user; Wherein said program is carried out service following among both at least one is provided: be used for remote computing system and carry out the graphic user interface that mutual one or more APIs (API) and long-distance user use through said one or more networks to carry out to serve with programming mode and said program through one or more networks; And wherein as the part of said automatic synchronization, said first user is computing node payment one or the multinomial expense of revising automatically as said first a group part.
Article 52: according to the 33rd described method; Wherein said program is carried out a plurality of virtual machines that can carry out at least one program separately that service adopts Intel Virtualization Technology to make that said a plurality of computing node comprises to be provided by said physical computing system in a plurality of physical computing system each; The wherein said first set of calculated node is the loading virtual machine, and said one or more programs of wherein said first user are the part of virtual machine image.
Article 53: a kind of computer-readable medium, its content disposes computing system to on-the-fly modify user's program executive capability through implementing a kind of method, and said method comprises:
Under the control of said configuration computing system, in the indication of very first time reception, to be provided for representing said first user to carry out the required program executive capability of one or more software programs with first user-dependent first group of a plurality of computing node;
Second time subsequently after the said very first time is confirmed the practical programs executive capability that said first user can obtain automatically from the said first set of calculated node; According to the one or more one or more change in availability in said first group a plurality of computing nodes, the practical programs executive capability at place of said second time is different from the required program executive capability that offers said first user in the said very first time at least in part;
According to a plurality of independent events that occur in after the said very first time separately and specify the indication of said required program executive capability to revise separately; Automatically confirm to offer said first user's modified required program executive capability in said second time, said second time place modified required program executive capability based on polymerization that the indication of the appointment of said a plurality of independent events is revised and the required program executive capability that is different from the indication that provides in the said very first time; And
Automatically revise computing node in said second time as said first a group part; So that with the practical programs executive capability of the confirming coordination at modified required program executive capability and place of said second time at said second time place, said modified computing node is used for said modified required program executive capability is offered said first user.
Article 54: according to the 53rd described computer-readable medium; Wherein said configuration computing system is to provide the program of a plurality of computing nodes to carry out a part of serving; Said a plurality of computing node can be configured to carry out the program that said program is carried out the user of service; Wherein said first group a plurality of computing nodes are the subclass of said a plurality of computing nodes; And request in response to the said required program executive capability that receives from said first user before the said very first time; It is relevant automatically with said first user in the said very first time to carry out service through said program; Wherein said first user also indicates the one or more abilities that are used for causing subsequently to the automatic modification of said required program executive capability to revise triggers, and wherein said definite modified required program executive capability comprises through the said ability of confirming to be satisfied based on its a plurality of independent events and revises at least one in the trigger and comprise at least one the ability modify instruction by the dynamic appointment of said first user.
Article 55: according to the 54th described computer-readable medium; Wherein said one or more software program is carried out on said first group a plurality of computing nodes; To be supported in not is another software program at least of carrying out at least one computing system of said first a group part, and wherein revises one or more in trigger through said at least one ability of confirming to be satisfied and have separately based on the one or more standards about the status information of the execution of said another software program at least that obtained.
Article 56: according to the 54th described computer-readable medium; Wherein said program is carried out service will be recorded as the initial formal proceedings executive capability that said first user can use in the said very first time in the required program executive capability that the said very first time offers said first user's indication; Wherein said method also comprises: during the said very first time to a period of time of said second time, monitor the said first set of calculated node with the one or more change in availability of identification to said first group one or more computing nodes; And upgrade the formal proceedings executive capability of record that said program that said first user can use carries out service so that reflect said one or more change in availability; Wherein said first user can with said program carry out service the formal proceedings executive capability of record not through confirming automatically that in said second time said modified required program executive capability upgrades; And wherein also said second time make amendment as the computing node of said first a group part in case with said second time place record the formal proceedings executive capability with said second time place modified required program executive capability coordinate, the formal proceedings executive capability of coordinating said record comprise with said second time place modified required program executive capability confirm as the formal proceedings executive capability that said program that said first user can use is carried out the record of the further renewal of serving.
Article 57: according to the 53rd described computer-readable medium; Wherein said computer-readable medium is following among both at least one: store the storer and the data transmission media that comprises the memory data signal that is produced that comprises said content of the computing system of said content, and wherein said content is for making said computing system implement the instruction of said method when carrying out.
Article 58: a kind of computing system that is configured to on-the-fly modify user's program executive capability comprises:
One or more processors; With
System manager module, when being carried out by in said one or more processors at least one, among said a plurality of users each, it is configured to a plurality of users' of supervising the network access services program executive capability in the following manner:
Confirm to be used to represent said user to carry out the required program executive capability of one or more software programs, and confirm to be used for to cause subsequently one or more abilities of the automatic modification of said user's said required program executive capability are revised triggers;
The very first time with one group of a plurality of available computing node and said user's auto-associating, to be used for that said definite required program executive capability is offered said user; And
After the said very first time; Second time subsequently after the said very first time is confirmed the practical programs executive capability that said user can obtain automatically from said set of calculated node, the practical programs executive capability at place of said second time is different from the required program executive capability that offers said user in the said very first time;
According to occurring in after the said very first time separately and having a plurality of independent events of the related amendments of said required program executive capability separately; Automatically confirm to offer said user's modified required program executive capability in said second time; Said a plurality of independent event comprises through the said ability of confirming to be satisfied to be revised at least one in the trigger and comprises at least one the ability modify instruction by the dynamic appointment of said user, said second time place modified required program executive capability based on polymerization to the related amendments of said a plurality of independent events; And
At the computing node of automatic modification of said second time as a part of said group; So that with the practical programs executive capability of the confirming coordination at modified required program executive capability and place of said second time at said second time place, said modified computing node is used for said modified required program executive capability is offered said user.
Article 59: according to the 58th described computing system; One of wherein said a plurality of users' the required program executive capability of confirming is indicated and is confirmed as through being recorded as a said user in spendable initial formal proceedings executive capability of the said very first time by a said user; Automatically confirm that wherein a said user is based at least in part in spendable practical programs executive capability of said second time that the said user's of monitoring said set of calculated node carries out so that discern one or more variations during the said very first time to a period of time of said second time; Monitor said computing node and comprise that the formal proceedings executive capability of upgrading the record that a said user can use is to reflect said one or more variation; A wherein said user can with the formal proceedings executive capability of record do not upgrade through the modified required program executive capability of automatically confirming place of said second time; And wherein also said second time modification as the computing node of a part of said group in case with said second time place record the formal proceedings executive capability with said second time place modified required program executive capability coordinate, the formal proceedings executive capability of coordinating said record comprises that the modified required program executive capability that said second time is located confirms as the formal proceedings executive capability of the record of the further renewal that said first user can use.
Article 60: according to the 59th described computing system; Said definite ability of a wherein said user is revised trigger and is specified by a said user; Wherein said network access service is to provide the program of a plurality of computing nodes to carry out service; Said a plurality of computing node can be configured to carry out the program that said program is carried out the long-distance user of service, and at least one each said group the said a plurality of computing nodes among wherein said a plurality of user are the subclass of said a plurality of computing nodes.
Article 61: according to the 58th described computing system, wherein said system manager module comprises the software instruction of being carried out by said computing system.
Article 62: according to the 58th described computing system, wherein among said a plurality of users each, said system manager module is made up of the device of a plurality of users' that are used for coming in the following manner the supervising the network access services program executive capability:
Confirm to be used to represent said user to carry out the required program executive capability of one or more software programs, and confirm to be used for to cause subsequently one or more abilities of the automatic modification of said user's said required program executive capability are revised triggers;
The very first time with one group of a plurality of available computing node and said user's auto-associating, to be used for that said definite required program executive capability is offered said user; And
After the said very first time; Second time subsequently after the said very first time is confirmed the practical programs executive capability that said user can obtain automatically from said set of calculated node, the practical programs executive capability at place of said second time is different from the required program executive capability that offers said user in the said very first time;
According to occurring in after the said very first time separately and having a plurality of independent events of the related amendments of said required program executive capability separately; Automatically confirm to offer said user's modified required program executive capability in said second time; Said a plurality of independent event comprises through the said ability of confirming to be satisfied to be revised at least one in the trigger and comprises at least one the ability modify instruction by the dynamic appointment of said user, said second time place modified required program executive capability based on polymerization to the related amendments of said a plurality of independent events; And
At the computing node of automatic modification of said second time as a part of said group; So that with the practical programs executive capability of the confirming coordination at modified required program executive capability and place of said second time at said second time place, said modified computing node is used for said modified required program executive capability is offered said user.
According to aforementioned content, be to be understood that, although described specific embodiments for purpose of explanation in this article, can under the situation that does not break away from the spirit and scope of the present invention, make various modifications.Therefore, the present invention only receives the restriction of accompanying claims and the mentioned requirement of this paper.In addition, though some aspect of the present invention illustrates with the form of some claim hereinafter, the inventor considers various aspects of the present invention with the form of any available claim.For example, be embodied in the computer-readable medium though have only some aspect of the present invention can be mentioned as at present, others can obtain embodying equally.

Claims (15)

1. the computer implemented method of the law of causality that on-the-fly modifies of a program executive capability that is used to confirm to offer the user, said method comprises:
Under the control of the one or more computing systems that are configured to provide the program of using by a plurality of users to carry out service; First user that reception is used to represent said program to carry out service carries out the indication of the initial required program executive capability of one or more software programs, and said program is carried out service and had and can be configured to carry out a plurality of computing nodes of program that said program is carried out the said user of service;
Confirm to be used for to cause subsequently a plurality of abilities of the automatic modification of the program executive capability that offers said first user are revised triggers; In the said ability modification trigger each includes and is used for the one or more standards whether definite said ability modification trigger is satisfied, and comprises the program executive capability modification of revising the specified type that will ask when trigger is satisfied when said ability;
Automatically confirm to be used in said a plurality of computing nodes to provide first group of a plurality of computing node of said first user's said initial required program executive capability, and make the said first set of calculated node can be in order to carry out one or more software programs of said first user separately in the very first time;
Automatically discern a plurality of independent events that occur in during a period of time between the said very first time and second time subsequently and can cause the modification of the said program executive capability that said first group of a plurality of computing node are provided separately, said a plurality of incidents comprise through the ability of the appointment of confirming to be satisfied revises at least one in the trigger;
Automatically confirming can be from the practical programs executive capability of said first set of calculated node acquisition said first user of said second time; According to the one or more change in availability that occur in the said first group one or more computing nodes during the period between the said very first time and said second time, the practical programs executive capability at place of said second time is different from the required program executive capability that offers said first user in the said very first time at least in part;
For in the said change in availability of said first group said one or more computing nodes each; With the one or more automatic attribution in institute's identification incident is the reason of said change in availability; In the said change in availability at least one has reason, and be said former because independently of one another and comprise the combination of the one or more a plurality of incidents in the trigger of revising through the ability of said at least one appointment of confirming to be satisfied; And
Indication to being the reason of each the institute's attribution in one or more said change in availability is provided, so that can carry out and the corresponding one or more further actions of the reason of said attribution.
2. method according to claim 1; Wherein said a plurality of incident also comprises by said first user dynamically specifies with request at least one ability modify instruction to the specified modification of said first group said program executive capability that provides, and is that the combination of a plurality of incidents of the reason of one of said at least one change in availability comprises one or more in the ability modify instruction of said at least one appointment by attribution wherein.
3. method according to claim 1; Automatically confirm that wherein said practical programs executive capability comprises definite a plurality of change in availability that taken place; And be one or more incidents that each reason in the said change in availability comprises the single reason of one of the said a plurality of change in availability of respectively doing for oneself in the said a plurality of incidents of identification wherein with the automatic attribution of said one or more incidents, and will be in said a plurality of incidents be not a part that does not have said a plurality of change in availability combination each other of single reason for all event aggregations of the single reason one of in said a plurality of change in availability.
4. method according to claim 1; Also comprise: in the one or more additional times that occur in after said second time each; With the automatic attribution of one or more additional institute's identification incident is the reason that occurs in the change in availability during said additional time; And wherein; For for a said additional institute identification incident of the reason of a change in availability in the said change in availability that occurs in during a period in said one or more additional time, a said additional institute identification incident is the result of a change in availability in the said change in availability during the period that occurs between the said very first time and said second time.
5. the computing system of the law of causality that on-the-fly modifies of a program executive capability that is configured to confirm the user, it comprises:
One or more processors; With
System manager module, it is configured to when being carried out by in said one or more processors at least one, among a plurality of users each, said a plurality of users' of supervising the network access services program executive capability in the following manner:
Confirm to be provided for the said user of representative and carry out the initial program executive capability of one or more software programs, and one or more abilities of confirming to be used for to cause subsequently the automatic modification of the said program executive capability that the said user of subtend provides are revised triggers;
The very first time with one group of a plurality of available computing node and said user's auto-associating, to be used for that said initial required program executive capability is offered said user; And
After the said very first time,
Automatically identification occurs between the said very first time and second time subsequently and has a plurality of independent events of relevant required modification of said group said program executive capability separately, and said a plurality of incidents comprise at least one in the said ability modification trigger of confirming to be satisfied;
Automatically confirm one or more change in availability of one or more computing nodes of said group, said change in availability influence is by said group of said program executive capability that provides;
With one or more reasons automatically owing in said group the determined change in availability each; Owing at least one said one or more former in the said change in availability because the combination of a plurality of independent events of discerning, and owing to another said one or more former at least in the said change in availability because the individual event in the said independent event of discerning; And
The indication of one or more reasons of the one or more institute's attribution in said group the said determined change in availability is provided.
6. computing system according to claim 5; Said a plurality of independent events of one of wherein said a plurality of users also comprise at least one the ability modify instruction by a said dynamic appointment of user; Wherein said system manager module also is configured to through polymerization at least one ability that is satisfied and revises the required modification of trigger and revised to confirm automatically to wait to make with the single polymerization of said group said program executive capability improving a said user by the required modification of said at least one ability modify instruction of said user's appointment; And cause said group determined single polymerization modification to a said user in said second times prior; Wherein said determined single polymerization is revised as one of said at least one change in availability of a said user, and is that the combination of said a plurality of independent events of said one or more reasons of revising of said determined single polymerization comprises that said at least one ability that is satisfied is revised trigger and by said at least one ability modify instruction of said user's appointment by attribution wherein.
7. computing system according to claim 6; A wherein said user's determined ability is revised trigger and is specified by a said user; Wherein said network access service is to provide the program of a plurality of computing nodes to carry out service; Said a plurality of computing node can be configured to carry out the program that said program is carried out the long-distance user of service, and at least one each said group the said a plurality of computing nodes among wherein said a plurality of user are the subclass of said a plurality of computing nodes.
8. computer implemented method that is used to on-the-fly modify user's program executive capability, said method comprises:
Under the control of the one or more computing systems that are being configured to provide the program execution service of being used by a plurality of users, said program is carried out to serve to have and can be configured to carry out a plurality of computing nodes that said program is carried out the said user's who serves program;
Initial required program executive capability and the appointment of receive specifying first user who is used to represent said program to carry out service to carry out one or more software programs is used for causing subsequently the information of one or more abilities of the automatic modification of said required program executive capability being revised triggers; Said ability is revised in the trigger each and is included and be used for confirming that said ability revises the one or more standards whether trigger is satisfied, and being included in said ability, to revise trigger be the modification to the specified type of required program executive capability that will ask when being satisfied;
Automatically confirm to be used in said a plurality of computing nodes to provide first group of a plurality of computing node of said first user's said initial required program executive capability; Make the said first set of calculated node can be in order to carrying out one or more software programs of said first user separately, and said initial required program executive capability is appointed as is registered as said first user in spendable formal proceedings executive capability of the said very first time in the very first time;
After the said very first time; Monitor the currency of the said first set of calculated node with the Performance Characteristics of one or more types of confirming those computing nodes relevant with the said one or more software programs of execution, said monitoring comprises the practical programs executive capability that said first user of second time subsequently that confirms after the said very first time can obtain from the said first set of calculated node;
Automatically confirm to revise said first user's said required program executive capability according to a plurality of incidents that occur in during a period of time between the said very first time and said second time; Said a plurality of incident comprises at least in part according to the determined currency of one or more Performance Characteristics types and revises at least one in the trigger through the ability of the said appointment confirming to be satisfied; And comprise at least one the ability modify instruction by the dynamic appointment of said first user, the ability modification trigger of said at least one appointment and each indication in said at least one ability modify instruction are to the specified modification of said required program executive capability; And
Formal proceedings executive capability and the practical programs executive capability of determined said second time and the modified required program executive capability automatic synchronization of the record that said first user can be used; The formal proceedings executive capability of coordinating said record comprises according to said definite practical programs executive capability and said modified required program executive capability to be modified for automatically the computing node into said first a group part; Make said modified computing node can be used for providing said modified required program executive capability, and make the formal proceedings executive capability of said record be updated the said modified required program executive capability that provides with reflection.
9. method according to claim 8; Wherein measure said first group said program executive capability according to quantity as the computing node of said first a group part; Make the initial requirement that said initial required program executive capability is a computing node; The practical programs executive capability of determined said second time is for can be used as the actual quantity of the computing node of said first a group part in said second time; Automatically confirm that revising said required program executive capability comprises the modified requirement of modified required program executive capability being confirmed as the said first set of calculated node, and revise said computing node as said first a group part automatically and comprise the actual quantity as the said computing node of said first a group part is changed into said modified requirement.
10. method according to claim 8; Wherein based on said first group program executive capability is measured in each the polymerization in polytype computational resource that can from the said computing node as said first a group part, obtain; And the said computing node of wherein revising automatically as said first a group part comprises at least a polymerization amount in the said polytype computational resource of change, and said computational resource can obtain from the computing node as said first a group part after the automatic modification of said computing node.
11. method according to claim 8; The ability of wherein said at least one appointment is revised each one or more standards in the trigger based at least a one or more set-points in said one or more Performance Characteristics types, and wherein said method comprises also that at least in part the match condition of revising between each the currency of confirming of said one or more set-points and said one or more Performance Characteristics types in the trigger according to the ability of said at least one appointment to confirm automatically that the ability modification trigger of said at least one appointment is satisfied.
12. method according to claim 8; Confirm that wherein said first group modified required program executive capability comprises the modification of polymerization to the indication of said required program executive capability; Said modification revise in trigger and said at least one ability modify instruction by the ability of said at least one appointment each specify, and specify determined modified required program executive capability according to the indication of the polymerization of said required program executive capability is revised.
13. a computing system that is configured to on-the-fly modify user's program executive capability comprises:
One or more processors; With
System manager module, it is configured to when being carried out by in said one or more processors at least one, among said a plurality of users each, a plurality of users' of supervising the network access services program executive capability in the following manner:
Confirm to be used to represent said user to carry out the required program executive capability of one or more software programs, and confirm to be used for to cause subsequently one or more abilities of the automatic modification of said user's said required program executive capability are revised triggers;
The very first time with one group of a plurality of available computing node and said user's auto-associating, to be used for that determined required program executive capability is offered said user; And
After the said very first time,
Second time subsequently after the said very first time is confirmed the practical programs executive capability that said user can obtain automatically from said set of calculated node, the practical programs executive capability at place of said second time is different from the said required program executive capability that offers said user in the said very first time;
According to occurring in after the said very first time separately and having a plurality of independent events of the related amendments of said required program executive capability separately; Automatically confirm to offer in said second time said user's modified required program executive capability; Said a plurality of independent event comprises through the said ability of confirming to be satisfied to be revised at least one in the trigger and comprises at least one the ability modify instruction by the dynamic appointment of said user, said second time place said modified required program executive capability based on polymerization to the related amendments of said a plurality of independent events; And
At the computing node of automatic modification of said second time as a part of said group; So that with the determined practical programs executive capability coordination at modified required program executive capability and place of said second time at said second time place, said modified computing node is used for said modified required program executive capability is offered said user.
14. computing system according to claim 13; One of wherein said a plurality of users' determined required program executive capability is indicated and is confirmed as through being recorded as a said user in spendable initial formal proceedings executive capability of the said very first time by a said user; Automatically confirm that wherein a said user carries out so that discern one or more variations through the said set of calculated node the said user of monitoring during the said very first time to a period of time of said second time in spendable said practical programs executive capability of said second time at least in part; Monitor said computing node and comprise that the formal proceedings executive capability of upgrading the record that a said user can use is to reflect said one or more variation; A wherein said user can with the formal proceedings executive capability of record do not upgrade through the modified required program executive capability of automatically confirming place of said second time; And wherein also said second time the place revise as the computing node of a part of said group in case will said second time modified required program executive capability coordination at formal proceedings executive capability and place of said second time of record at place, the formal proceedings executive capability of coordinating said record comprises that the modified required program executive capability that said second time is located confirms as the formal proceedings executive capability of the record of the further renewal that said first user can use.
15. computing system according to claim 13; Said definite ability of a wherein said user is revised trigger and is specified by a said user; Wherein said network access service is to provide the program of a plurality of computing nodes to carry out service; Said a plurality of computing node can be configured to carry out the program that said program is carried out the long-distance user of service, and at least one each said group the said a plurality of computing nodes among wherein said a plurality of user are the subclass of said a plurality of computing nodes.
CN201080041786.1A 2009-09-29 2010-09-27 Computer implementation and calculating system Active CN102511041B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201410646174.5A CN104331333B (en) 2009-09-29 2010-09-27 Computer implemented method and computing system
CN201410648530.7A CN104331334B (en) 2009-09-29 2010-09-27 Computer implemented method and computing system

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US12/569,744 US8689225B2 (en) 2009-09-29 2009-09-29 Attributing causality to program execution capacity modifications
US12/569,723 US8352609B2 (en) 2009-09-29 2009-09-29 Dynamically modifying program execution capacity
US12/569,744 2009-09-29
US12/569,723 2009-09-29
PCT/US2010/050351 WO2011041253A1 (en) 2009-09-29 2010-09-27 Attributing causality to program execution capacity modifications and dynamically modifying program execution capacity

Related Child Applications (2)

Application Number Title Priority Date Filing Date
CN201410648530.7A Division CN104331334B (en) 2009-09-29 2010-09-27 Computer implemented method and computing system
CN201410646174.5A Division CN104331333B (en) 2009-09-29 2010-09-27 Computer implemented method and computing system

Publications (2)

Publication Number Publication Date
CN102511041A true CN102511041A (en) 2012-06-20
CN102511041B CN102511041B (en) 2014-12-10

Family

ID=43826606

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201080041786.1A Active CN102511041B (en) 2009-09-29 2010-09-27 Computer implementation and calculating system
CN201410646174.5A Active CN104331333B (en) 2009-09-29 2010-09-27 Computer implemented method and computing system
CN201410648530.7A Active CN104331334B (en) 2009-09-29 2010-09-27 Computer implemented method and computing system

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN201410646174.5A Active CN104331333B (en) 2009-09-29 2010-09-27 Computer implemented method and computing system
CN201410648530.7A Active CN104331334B (en) 2009-09-29 2010-09-27 Computer implemented method and computing system

Country Status (6)

Country Link
EP (1) EP2483797A4 (en)
JP (2) JP5486687B2 (en)
CN (3) CN102511041B (en)
CA (1) CA2774297C (en)
SG (2) SG188079A1 (en)
WO (1) WO2011041253A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104102646A (en) * 2013-04-07 2014-10-15 腾讯科技(深圳)有限公司 Method, device and system for processing data
CN107924333A (en) * 2015-07-31 2018-04-17 微软技术许可有限责任公司 Update log in multi-tenant cloud service is changed and associated
US11307943B2 (en) 2017-03-21 2022-04-19 Huawei Technologies Co., Ltd. Disaster recovery deployment method, apparatus, and system

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10824413B2 (en) * 2018-07-23 2020-11-03 International Business Machines Corporation Maintenance of computing nodes concurrently in a number updated dynamically
CN110968590A (en) * 2019-12-23 2020-04-07 北京奇艺世纪科技有限公司 Task execution method and device, electronic equipment and computer readable storage medium
CN111831944B (en) * 2020-07-09 2021-09-28 腾讯科技(深圳)有限公司 Multimedia processing method, device, client, server and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020141576A1 (en) * 2001-03-30 2002-10-03 Ripley Michael S. Validating keying material by using a validation area of read-only media to prevent playback of unauthorized copies of content stored on the media
US20060173857A1 (en) * 2005-01-31 2006-08-03 Cassatt Corporation Autonomic control of a distributed computing system using rule-based sensor definitions
CN101127130A (en) * 2006-08-14 2008-02-20 林伟龙 Safe recording and control system for automobile
US20080059557A1 (en) * 2006-03-31 2008-03-06 Desantis Peter N Executing programs based on user-specified constraints

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6779030B1 (en) * 1997-10-06 2004-08-17 Worldcom, Inc. Intelligent network
US7590739B2 (en) * 1999-11-22 2009-09-15 Akamai Technologies, Inc. Distributed on-demand computing system
JP3772713B2 (en) * 2001-09-12 2006-05-10 日本電気株式会社 Priority dynamic control method, priority dynamic control method, and program for priority dynamic control
JP2005196601A (en) * 2004-01-09 2005-07-21 Hitachi Ltd Policy simulator for autonomous management system
JP2005250818A (en) * 2004-03-04 2005-09-15 Hitachi Ltd Program execution service provision method
US7680799B2 (en) * 2005-01-31 2010-03-16 Computer Associates Think, Inc. Autonomic control of a distributed computing system in accordance with a hierarchical model
US7543020B2 (en) * 2005-02-10 2009-06-02 Cisco Technology, Inc. Distributed client services based on execution of service attributes and data attributes by multiple nodes in resource groups
US8190682B2 (en) * 2006-03-31 2012-05-29 Amazon Technologies, Inc. Managing execution of programs by multiple computing systems
US8767535B2 (en) * 2007-07-11 2014-07-01 Hewlett-Packard Development Company, L.P. Dynamic feedback control of resources in computing environments
US8396846B2 (en) * 2007-12-13 2013-03-12 International Business Machines Corporation Database trigger modification system and method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020141576A1 (en) * 2001-03-30 2002-10-03 Ripley Michael S. Validating keying material by using a validation area of read-only media to prevent playback of unauthorized copies of content stored on the media
US20060173857A1 (en) * 2005-01-31 2006-08-03 Cassatt Corporation Autonomic control of a distributed computing system using rule-based sensor definitions
US20080059557A1 (en) * 2006-03-31 2008-03-06 Desantis Peter N Executing programs based on user-specified constraints
CN101127130A (en) * 2006-08-14 2008-02-20 林伟龙 Safe recording and control system for automobile

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104102646A (en) * 2013-04-07 2014-10-15 腾讯科技(深圳)有限公司 Method, device and system for processing data
CN104102646B (en) * 2013-04-07 2019-01-15 腾讯科技(深圳)有限公司 The method, apparatus and system of data processing
CN107924333A (en) * 2015-07-31 2018-04-17 微软技术许可有限责任公司 Update log in multi-tenant cloud service is changed and associated
US11140045B2 (en) 2015-07-31 2021-10-05 Microsoft Technology Licensing, Llc Changelog transformation and correlation in a multi-tenant cloud service
CN107924333B (en) * 2015-07-31 2022-04-08 微软技术许可有限责任公司 Method and apparatus for update log conversion and association in multi-tenant cloud services
US11307943B2 (en) 2017-03-21 2022-04-19 Huawei Technologies Co., Ltd. Disaster recovery deployment method, apparatus, and system

Also Published As

Publication number Publication date
CN104331333B (en) 2018-09-18
JP5868442B2 (en) 2016-02-24
CA2774297A1 (en) 2011-04-07
CN104331334A (en) 2015-02-04
SG179098A1 (en) 2012-05-30
CA2774297C (en) 2015-03-03
EP2483797A1 (en) 2012-08-08
CN104331334B (en) 2018-04-06
EP2483797A4 (en) 2013-08-07
SG188079A1 (en) 2013-03-28
JP2013505519A (en) 2013-02-14
JP5486687B2 (en) 2014-05-07
CN102511041B (en) 2014-12-10
CN104331333A (en) 2015-02-04
JP2014089776A (en) 2014-05-15
WO2011041253A1 (en) 2011-04-07

Similar Documents

Publication Publication Date Title
US11762693B1 (en) Dynamically modifying program execution capacity
US9929971B2 (en) Flexible-location reservations and pricing for network-accessible resource capacity
US10360083B2 (en) Attributing causality to program execution capacity modifications
CN100407153C (en) On demand node and server instance allocation and de-allocation
US9479382B1 (en) Execution plan generation and scheduling for network-accessible resources
CN102567106B (en) Task scheduling method, system and device
CN102511041B (en) Computer implementation and calculating system
US20090307685A1 (en) Method, Arrangement, Computer Program Product and Data Processing Program for Deploying a Software Service
CN107968810A (en) A kind of resource regulating method of server cluster, device and system
CN111309440B (en) Method and equipment for managing and scheduling multiple types of GPUs
CN110162407A (en) A kind of method for managing resource and device
CN109152061A (en) Channel agility method, apparatus, server and storage medium
US20150310390A1 (en) Aggregation and workflow engines for managing project information
US20060149611A1 (en) Peer to peer resource negotiation and coordination to satisfy a service level objective
CN110351104A (en) A kind of VIM selection method and device
US9412083B2 (en) Aggregation and workflow engines for managing project information
CN118245235A (en) Multi-cloud platform operation and maintenance method
CN117114613A (en) Flow engine, method, equipment and program product for business flow control
US20150331896A1 (en) Method and apparatus for managing distributed transactions

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant