Remote Procedure Call Priority Control for Server Capacity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In scenarios where multiple remote procedure calls from clients to a server are requested simultaneously, existing technologies face challenges in efficiently selecting which calls to prioritize, often leading to delayed execution of critical API requests due to exceeding the maximum number of simultaneous HTTP requests that can be processed.

Innovation Solution

A method that classifies remote procedure calls into regular and irregular types, identifies target data for irregular calls, and assigns higher priority to regular calls targeting the same data, ensuring that critical resources are prioritized without exceeding the server's capacity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple remote procedure calls are executed simultaneously, then the system throughput increases, but the server exceeds its maximum processing capacity

Engineering Contradiction:
Improvesystem throughputVSAvoidserver processing capacity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements dynamic priority assignment for remote procedure calls based on their periodicity characteristics. Periodic calls are assigned higher priorities than non-periodic calls, allowing the system to adaptively manage call execution order according to their different nature, thus resolving the contradiction between throughput and capacity

Inventive Principle:
Principle #15Dynamics

2Loss of time

If the number of simultaneous remote procedure calls is increased, then the response time for user requests decreases, but the system cannot handle more than the maximum allowed simultaneous requests

Engineering Contradiction:
Improveresponse timeVSAvoidsimultaneous request capacity
Core Design Contradiction:
Loss of timeVSAdaptability or versatility

Solution Approach 1:

The patent performs preliminary classification of remote procedure calls into periodic and non-periodic types before execution. By identifying periodic calls in advance and assigning them higher priorities, the system ensures that time-critical periodic calls are executed first, reducing their response time without exceeding server capacity limits

Inventive Principle:
Principle #10Preliminary action

3Device complexity

If remote procedure calls are executed in FIFO order, then the system is simple to implement, but critical periodic calls may be delayed by non-critical non-periodic calls

Engineering Contradiction:
Improvecall execution controlVSAvoidcall execution priority
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent applies different quality characteristics to different types of remote procedure calls by assigning distinct priority levels. Periodic calls receive higher priority treatment while non-periodic calls receive lower priority, creating localized quality differentiation in the execution control mechanism that balances simplicity with reliability

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10084887B2Device and method for controlling remote procedure call
Publication Date: 2018.09.25 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10084887B2 patent drawing
  • US10084887B2 patent drawing
  • US10084887B2 patent drawing

AI summary

Controlling a remote procedure call from a client computer to a server computer, the client computer extracts a periodic remote procedure call from among a plurality of remote procedure calls from the client computer and extracts a non-periodic remote procedure call from among the plurality of remote procedure calls from the client computer. The client computer identifies a first information associated with the extracted periodic remote procedure call that is an item whose value is determined to represent data targeted by the periodic remote procedure call. The client computer identifies a second information associated with the extracted non-periodic remote procedure call that is a targeted data value of the item, and sets a priority level, used to select for execution the periodic procedure call, based on the first information and the second information.