# US 2019/0245756 A1 · Performance adjustment method, apparatus for peformance adjustment, and non-transitory computer-readable storage medium for storing program

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2019/0245756 A1
- Document ID: US20190245756A1
- Status: Published application
- Kind: A1
- Application number: 16/223,171
- Filed: 2018-12-18
- Published: 2019-08-08
- Earliest claimed: 2018-02-05
- Assignees: Fujitsu Limited
- Applicants: Fujitsu Limited
- Inventors: Koichi Onoue
- Web page: https://patentgrep.com/patent/US20190245756A1

## CPC

- H04L 41/5025: by proactively reacting to service quality change, e.g. by reconfiguration after service quality degradation or upgrade
- H04L 43/091: Measuring contribution of individual network components to actual service level
- H04L 67/101: based on network conditions
- H04L 67/1012: based on compliance of requirements or conditions with available server resources
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A performance adjustment method comprises: executing first processing that includes causing any of a plurality of servers to execute one or more of plural components, each of the plural components being a unit function configured to execute one or more of processes for providing a service; executing second processing that includes acquiring performance information indicating first performance of the service provided by the one or more of the plural components; executing third processing that includes determining whether the first performance indicated by the performance information satisfies a performance requirement, the performance requirement indicating second performance with respect to the service; and executing fourth processing that includes determining, when the first performance does not satisfy the second performance, a first number of components among the plural components, the first number of components indicating components to be additionally executed by a first server that is any of the plurality of servers.

## Claims

### Claim 1

A performance adjustment method comprising:
executing first processing that includes causing any of a plurality of servers to execute one or more of plural components, each of the plural components being a unit function configured to execute one or more of processes for providing a service;
executing second processing that includes acquiring performance information indicating first performance of the service provided by the one or more of the plural components;
executing third processing that includes determining whether the first performance indicated by the performance information satisfies a performance requirement, the performance requirement indicating second performance with respect to the service; and
executing fourth processing that includes determining, when the first performance indicated by the performance information does not satisfy the second performance indicated by the performance requirement, a first number of components among the plural components, the first number of components indicating components to be additionally executed by a first server that is any of the plurality of servers.

### Claim 2 (depends on 1)

The performance adjustment method according to claim 1,
wherein the fourth processing is configured to
calculate a contribution degree indicating a contribution to a performance value per the unit function by dividing a performance value calculated from the performance information by a second number of the one or more of the plural components, and
determine a first minimum integer as the first number of components, the first minimum integer being a minimum value of integer complying with a condition that a result of multiplying a first value by the contribution degree is equal to or larger than a threshold based on the performance requirement, the first value being obtained by adding the integer to the second number.

### Claim 3 (depends on 1)

The performance adjustment method according to claim 1, further comprising:
executing fifth processing that includes
determining the first server for executing the determined first number of components among the plurality of servers, and
controlling the plurality of servers in a way that each of the determined first number of components is executed by the determined first server among the plurality of servers.

### Claim 4 (depends on 3)

The performance adjustment method according to claim 3,
wherein the fifth processing is configured to determine, as the first server, a server that has a maximum excess resource amount when each of the first number of components is executed by the server.

### Claim 5 (depends on 4)

The performance adjustment method according to claim 4,
wherein the fifth processing is configured to
calculate, for each of at least part of the plurality of servers, a first resource amount consumed per the unit function by dividing a total amount by a second value, the second value being obtained by adding the second number of the one or more of the plural components to the first number of components, the total amount corresponding to a sum of resource amounts consumed by the one or more of the plural components,
calculate, for the each of at least part of the plurality of servers, an excess resource amount in accordance with the calculated first resource amount in the each of at least part of the plurality of servers, the excess resource amount corresponding to a resource amount that is a remaining amount among a total resource amount in the each of at least part of the plurality of servers when the first number of components is executed.

### Claim 6 (depends on 1)

The performance adjustment method according to claim 1,
wherein the service is provided by coordinating the one or more of processes with each other,
the performance adjustment method further comprising:
executing sixth processing that includes acquiring, for each of the one or more of processes, state information indicating an execution state with respect to the each of the one or more of processes; and
executing seventh processing when the first performance indicated by the performance information does not satisfy the second performance indicated by the performance requirement, the seventh processing including
calculating, for the each of the one or more of processes, a difference between a first execution state indicated by first state information and a second execution state indicated by second state information, the first state information being the state information acquired by the sixth processing within a latest predetermined time period, the second state information being the state information acquired by the sixth processing when the first performance indicated by the performance information does satisfy the second performance indicated by the performance requirement,
determining a process causing a decrease in the performance of the service in accordance with the difference calculated for the each of the one or more of processes, and
causing the first number of components to execute the determined process from among the one or more plural components for the service.

### Claim 7

A non-transitory computer-readable storage medium for storing a program which causes a processor to perform processing for performance adjustment, the processing comprising:
executing first processing that includes causing any of a plurality of servers to execute one or more of plural components, each of the plural components being a unit function configured to execute one or more of processes for providing a service, executing second processing that includes acquiring performance information indicating first performance of the service provided by the one or more of the plural components;
executing third processing that includes determining whether the first performance indicated by the performance information satisfies a performance requirement, the performance requirement indicating second performance with respect to the service; and
executing fourth processing that includes determining, when the first performance indicated by the performance information does not satisfy the second performance indicated by the performance requirement, a first number of components among the plural components, the first number of components indicating components to be additionally executed by a first server that is any of the plurality of servers.

### Claim 8 (depends on 7)

The non-transitory computer-readable storage medium according to claim 7,
wherein the fourth processing is configured to
calculate a contribution degree indicating a contribution to a performance value per the unit function by dividing a performance value calculated from the performance information by a second number of the one or more of the plural components, and
determine a first minimum integer as the first number of components, the first minimum integer being a minimum value of integer complying with a condition that a result of multiplying a first value by the contribution degree is equal to or larger than a threshold based on the performance requirement, the first value being obtained by adding the integer to the second number.

### Claim 9 (depends on 7)

The non-transitory computer-readable storage medium according to claim 7,
wherein the processing further comprises:
executing fifth processing that includes
determining the first server for executing the determined first number of components among the plurality of servers, and
controlling the plurality of servers in a way that each of the determined first number of components is executed by the determined first server among the plurality of servers.

### Claim 10 (depends on 9)

The non-transitory computer-readable storage medium according to claim 9,
wherein the fifth processing is configured to determine, as the first server, a server that has a maximum excess resource amount when each of the first number of components is executed by the server.

### Claim 11 (depends on 10)

The non-transitory computer-readable storage medium according to claim 10,
wherein the fifth processing is configured to
calculate, for each of at least part of the plurality of servers, a first resource amount consumed per the unit function by dividing a total amount by a second value, the second value being obtained by adding the second number of the one or more of the plural components to the first number of components, the total amount corresponding to a sum of resource amounts consumed by the one or more of the plural components,
calculate, for the each of at least part of the plurality of servers, an excess resource amount in accordance with the calculated first resource amount in the each of at least part of the plurality of servers, the excess resource amount corresponding to a resource amount that is a remaining amount among a total resource amount in the each of at least part of the plurality of servers when the first number of components is executed.

### Claim 12 (depends on 7)

The non-transitory computer-readable storage medium according to claim 7,
wherein the service is provided by coordinating the one or more of processes with each other,
wherein the processing further comprises:
executing sixth processing that includes acquiring, for each of the one or more of processes, state information indicating an execution state with respect to the each of the one or more of processes; and
executing seventh processing when the first performance indicated by the performance information does not satisfy the second performance indicated by the performance requirement, the seventh processing including
calculating, for the each of the one or more of processes, a difference between a first execution state indicated by first state information and a second execution state indicated by second state information, the first state information being the state information acquired by the sixth processing within a latest predetermined time period, the second state information being the state information acquired by the sixth processing when the first performance indicated by the performance information does satisfy the second performance indicated by the performance requirement,
determining a process causing a decrease in the performance of the service in accordance with the difference calculated for the each of the one or more of processes, and
causing the first number of components to execute the determined process from among the one or more plural components for the service.

### Claim 13

An apparatus for performance adjustment, the apparatus comprising:
a memory; and
processor circuitry coupled to the memory and configured to
execute first processing that includes causing any of a plurality of servers to execute one or more of plural components, each of the plural components being a unit function configured to execute one or more of processes for providing a service,
execute second processing that includes acquiring performance information indicating first performance of the service provided by the one or more of the plural components;
execute third processing that includes determining whether the first performance indicated by the performance information satisfies a performance requirement, the performance requirement indicating second performance with respect to the service; and
execute fourth processing that includes determining, when the first performance indicated by the performance information does not satisfy the second performance indicated by the performance requirement, a first number of components among the plural components, the first number of components indicating components to be additionally executed by a first server that is any of the plurality of servers.

### Claim 14 (depends on 13)

The apparatus according to claim 13,
wherein the fourth processing is configured to
calculate a contribution degree indicating a contribution to a performance value per the unit function by dividing a performance value calculated from the performance information by a second number of the one or more of the plural components, and
determine a first minimum integer as the first number of components, the first minimum integer being a minimum value of integer complying with a condition that a result of multiplying a first value by the contribution degree is equal to or larger than a threshold based on the performance requirement, the first value being obtained by adding the integer to the second number.

### Claim 15 (depends on 13)

The apparatus according to claim 13,
wherein the processor circuitry is further configured to:
execute fifth processing that includes
determining a first server for executing the determined first number of components among the plurality of servers, and
controlling the plurality of servers in a way that each of the determined first number of components is executed by the determined first server among the plurality of servers.

### Claim 16 (depends on 15)

The apparatus according to claim 15,
wherein the fifth processing is configured to determine, as the first server, a server that has a maximum excess resource amount when each of the first number of components is executed by the server.

### Claim 17 (depends on 16)

The apparatus according to claim 16,
wherein the fifth processing is configured to
calculate, for each of at least part of the plurality of servers, a first resource amount consumed per the unit function by dividing a total amount by a second value, the second value being obtained by adding the second number of the one or more of the plural components to the first number of components, the total amount corresponding to a sum of resource amounts consumed by the one or more of the plural components, and
calculate, for the each of at least part of the plurality of servers, an excess resource amount in accordance with the calculated first resource amount in the each of at least part of the plurality of servers, the excess resource amount corresponding to a resource amount that is a remaining amount among a total resource amount in the each of at least part of the plurality of servers when the first number of components is executed.

### Claim 18 (depends on 13)

The apparatus according to claim 13,
wherein the service is provided by coordinating the one or more of processes with each other,
wherein the processor circuitry is further configured to
execute sixth processing that includes acquiring, for each of the one or more of processes, state information indicating an execution state with respect to the each of the one or more of processes; and
execute seventh processing when the first performance indicated by the performance information does not satisfy the second performance indicated by the performance requirement, the seventh processing including
calculating, for the each of the one or more of processes, a difference between a first execution state indicated by first state information and a second execution state indicated by second state information, the first state information being the state information acquired by the sixth processing within a latest predetermined time period, the second state information being the state information acquired by the sixth processing when the first performance indicated by the performance information does satisfy the second performance indicated by the performance requirement,
determining a process causing a decrease in the performance of the service in accordance with the difference calculated for the each of the one or more of processes, and
causing the first number of components to execute the determined process from among the one or more plural components for the service.
