Agent Thread Management for Response Time Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In manager/agent systems, high processing loads can exceed the manager's capacity, leading to performance deterioration and recovery difficulties, especially in environments with limited resources where auto-scaling, such as adding virtual machines, is not feasible.

Innovation Solution

An information processing apparatus manages response times by using a limited number of threads to process requests from a manager, adjusting this threshold based on response time changes in communications between the agent and manager, and dynamically adjusting the number of threads to optimize processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the number of threads in the agent is increased to process more requests, then the processing capacity of the agent increases, but the processing load on the manager increases and response time deteriorates

Engineering Contradiction:
Improveprocessing capacity of agentVSAvoidresponse time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The agent monitors the response time of communications with the manager and uses this feedback to dynamically adjust the number of threads. When response time exceeds a threshold, the agent decreases the thread count to reduce manager load; when response time is acceptable, the agent increases thread count to improve processing capacity. This closed-loop feedback mechanism balances agent productivity with manager response time.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system transitions from a static thread configuration to a dynamic one where the number of threads is continuously adjusted based on real-time response time measurements. The agent can increase or decrease the number of threads according to the current system state, allowing adaptive optimization of both processing capacity and response time.

Inventive Principle:
Principle #15Dynamics

2Productivity

If auto-scaling is performed by adding virtual machines to increase manager resources, then the processing capacity of the manager increases, but this is not feasible in environments with limited resources

Engineering Contradiction:
Improveprocessing capacity of managerVSAvoidadaptability to limited resource environments
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

Instead of scaling up the manager's resources (traditional auto-scaling approach), the invention inverts the approach by scaling down the agent's thread count when the manager is overloaded. This allows the system to handle limited manager resources by having the agent adapt its processing demands rather than requiring additional manager capacity.

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The agent autonomously monitors communication response time and self-adjusts its thread count without requiring external intervention or additional manager resources. This self-service mechanism enables the system to adapt to limited resource environments by having the agent independently optimize its resource usage based on observed system performance.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11500676B2Information processing apparatus, method, and non-transitory computer-readable storage medium
Publication Date: 2022.11.15 CANON KK
  • US11500676B2 patent drawing
  • US11500676B2 patent drawing
  • US11500676B2 patent drawing

AI summary

An agent application manages a response time relating to a communication between a manager and the agent application. The agent application executes processing according to a request from the manager by using a plurality of threads, a number of the plurality of threads being a threshold value or less, transmits, to the manager, data indicating a result of the processing executed by the agent application, and performs an adjustment to decrease the threshold value based on a change in response time in a plurality of response times corresponding to a plurality of instances of communications performed between the agent application and the manager.