Patent Document ID: 20160050108
Application ID: 14458403
Patent Flag: 0

Claim One:
1. A method for optimizing a cloud-computing environment, the method comprising: a processor of a computer system receiving extrinsic data that describes a set of virtual resources of the cloud-computing environment; the processor selecting a set of candidate resource configurations, wherein every virtual resource of the set of virtual resources is associated with a plurality of candidate resource configurations of the set of candidate resource configurations in a one-to-many relationship; the processor further selecting a set of candidate environment configurations, wherein each candidate environment configuration of the set of candidate environment configurations comprises at least one candidate resource configuration of the set of candidate resource configurations; the processor provisioning a virtual test environment, wherein the virtual test environment simulates the cloud-computing environment, and wherein the virtual test environment comprises a virtual representation of each virtual resource of the set of virtual resources of the cloud-computing environment; the processor configuring the virtual test environment by successively loading the virtual test environment with combinations of a configuration of at least two candidate environment configurations of the set of candidate environment configurations and a configuration of at least two candidate resource configurations of the set of candidate resource configurations, wherein the at least two candidate resource configurations are associated with a same tested resource of the set of virtual resources; the processor evaluating a first resource-fitness characteristic of a first loaded resource configuration of the at least two candidate resource configurations, wherein the first loaded resource configuration is associated with the same tested resource of the set of virtual resources, and wherein the first resource-fitness characteristic is assigned a value as a function of an operation of the same tested resource within the virtual test environment while the virtual test environment is loaded with the first loaded resource configuration; the processor deriving a value of an environment-fitness characteristic of a first loaded environment configuration of the at least two candidate environment configurations as a function of an operation of the virtual test environment while the virtual test environment is loaded with the first loaded environment configuration; the processor ranking the at least two candidate resource configurations as a function of the evaluating and of the deriving; the processor further ranking the at least two candidate environment configurations as a function of the evaluating and of the deriving; the processor revising at least one candidate resource configuration of the set of candidate resource configurations and at least one candidate environment configuration of the set of candidate environment configurations as a function of the ranking and of the further ranking; the processor repeating the configuring, the evaluating, the deriving, the ranking, the further ranking, and the revising until a termination condition is satisfied; and the processor identifying an optimal environment configuration as a function of the further ranking.