Server Scheduling Tool with Resource Conflict Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Servers often lack sufficient resources at scheduled execution times, leading to job failures, as clients and servers cannot anticipate the server's load, resulting in unscheduled jobs being executed and potential overloading.

Innovation Solution

A server scheduling tool that calculates resource requirements based on historical data to schedule jobs, proposes new execution times for conflicting jobs, and requests additional resources from the cloud if necessary, ensuring sufficient resources are available and assigning permission identifiers to prevent unscheduled executions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the server schedules jobs based on client requests without resource prediction, then the scheduling process is simple and fast, but the server may lack sufficient resources at execution time causing job failures

Engineering Contradiction:
Improvejob execution reliabilityVSAvoidscheduling system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by calculating resource requirements for each job before scheduling, using historical data to predict resource consumption. This advance resource assessment ensures that the server has sufficient resources allocated before job execution, preventing job failures due to resource unavailability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms by continuously monitoring actual resource consumption against predicted resource requirements. This feedback loop allows the system to refine its resource prediction accuracy over time, improving job execution reliability while maintaining efficient scheduling operations.

Inventive Principle:
Principle #23Feedback

2Productivity

If the server accepts all scheduled jobs without conflict detection, then the scheduling process is efficient, but the server may become overloaded when multiple jobs execute simultaneously

Engineering Contradiction:
Improvejob scheduling efficiencyVSAvoidserver stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary conflict detection by comparing the resource requirements of scheduled jobs with the server's available capacity before execution. This advance conflict identification prevents server overload by rejecting or rescheduling jobs that would cause resource conflicts, maintaining server stability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses feedback from resource monitoring to dynamically adjust scheduling decisions. When resource conflicts are detected, the system provides feedback to reschedule jobs or request additional cloud resources, ensuring server stability while maintaining high scheduling efficiency.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If the server allows unscheduled jobs to execute, then the system is flexible and responsive, but unauthorized or unscheduled jobs may consume resources and cause overloading

Engineering Contradiction:
Improvejob execution flexibilityVSAvoidresource utilization efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system introduces permission identifiers as an intermediary mechanism between job requests and execution. Each scheduled job is assigned a unique permission identifier that acts as a credential. This intermediary control ensures that only authorized, scheduled jobs can execute, preventing unauthorized resource consumption while maintaining system flexibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements self-service validation where clients must present the correct permission identifier to execute a job. This self-service mechanism automatically prevents unscheduled jobs from running without requiring constant server intervention, maintaining both security and efficiency.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10474498B2Server scheduling tool
Publication Date: 2019.11.12 BANK OF AMERICA CORP
  • US10474498B2 patent drawing
  • US10474498B2 patent drawing
  • US10474498B2 patent drawing

AI summary

An apparatus includes a memory and a hardware processor. The memory stores one or more scheduling histories. The processor receives a first list from a first client device and a second list from a second client device. The first list includes a first job and the second list includes a second job. The processor calculates a first resource requirement to execute the first job and a second resource requirement to execute the second job. The processor determines that a conflict exists between the first job and the second job and in response, communicates messages to the first and second client devices indicating the conflict and proposed times for executing the jobs. The processor determines based on responses to the messages, execution times for the first and second jobs, assigns permission identifiers to the first and second jobs, and communicates a schedule.