Workload-driven techniques for providing biased service level guarantees
First Claim
1. A system comprising:
- one or more shared system resources;
a plurality of servers coupled to provide access to the one or more shared system resources, the plurality of servers organized as at least two groups with a first group providing message queuing services and a second group providing message queuing services under first conditions and modified message queuing services under second conditions, wherein the first conditions comprise meeting service level agreements and the second conditions comprise not meeting service level agreements;
wherein the first group provides message queuing services by treating all jobs as equal, processing jobs asynchronously and processing jobs as background jobs that defer to foreground, non-message queuing services jobs;
wherein the second group provides message queuing services by treating all jobs as equal, processing jobs asynchronously and processing jobs in the background to defer to foreground, non-message queuing services, jobs under the first conditions; and
wherein the second group provides modified message queuing services by scheduling message queue processing based on message type and associated service level parameters.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques and architectures for workload management. A stream of messages is received with servers coupled to provide access to shared system resources. The servers are organized as at least two groups with a first group providing message queuing services and a second group providing message queuing services under first conditions and modified message queuing services under second conditions. Message queuing services are provided with the first group by treating all jobs as equal, processing jobs asynchronously and processing jobs in the background to defer to foreground, non-message queuing services, jobs. Message queuing services are provided with the second group by treating all jobs as equal, processing jobs asynchronously and processing jobs in the background to defer to foreground, non-message queuing services, jobs under the first conditions. Modified message queuing services are provided with the second group by shortest-slack-first scheduling under the second conditions.
139 Citations
53 Claims
-
1. A system comprising:
-
one or more shared system resources; a plurality of servers coupled to provide access to the one or more shared system resources, the plurality of servers organized as at least two groups with a first group providing message queuing services and a second group providing message queuing services under first conditions and modified message queuing services under second conditions, wherein the first conditions comprise meeting service level agreements and the second conditions comprise not meeting service level agreements; wherein the first group provides message queuing services by treating all jobs as equal, processing jobs asynchronously and processing jobs as background jobs that defer to foreground, non-message queuing services jobs; wherein the second group provides message queuing services by treating all jobs as equal, processing jobs asynchronously and processing jobs in the background to defer to foreground, non-message queuing services, jobs under the first conditions; and wherein the second group provides modified message queuing services by scheduling message queue processing based on message type and associated service level parameters. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system comprising:
-
one or more shared system resources; a plurality of servers coupled to provide access to the one or more shared system resources, the plurality of servers organized as at least two groups with a first group providing message queuing services and a second group providing message queuing services under first conditions and modified message queuing services under second conditions, wherein the first conditions comprise prediction that service level agreements will be met and second conditions comprise prediction that service level agreements will not be met; wherein the first group provides message queuing services by treating all jobs as equal, processing jobs asynchronously and processing jobs as background jobs that defer to foreground, non-message queuing services jobs; wherein the second group provides message queuing services by treating all jobs as equal, processing jobs asynchronously and processing jobs in the background to defer to foreground, non-message queuing services, jobs under the first conditions; and wherein the second group provides modified message queuing services by scheduling message queue processing based on message type and associated service level parameters. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer-readable medium having stored there on instructions that, when executed by one or more processors, cause the one or more processors to:
-
receive a stream of messages with a plurality of servers coupled to provide access to the one or more shared system resources, the plurality of servers organized as at least two groups with a first group providing message queuing services and a second group providing message queuing services under first conditions and modified message queuing services under second conditions, wherein the first conditions comprise meeting service level agreements and the second conditions comprise not meeting service level agreements; provide message queuing services with the first group by treating all jobs as equal, processing jobs asynchronously and processing jobs as background jobs that defer to foreground, non-message queuing services jobs; provide message queuing services with the second group by treating all jobs as equal, processing jobs asynchronously and processing jobs in the background to defer to foreground, non-message queuing services, jobs under the first conditions; and provide modified message queuing services with the second group by scheduling message queue processing based on message type and associated service level parameters. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A non-transitory computer-readable medium having stored there on instructions that, when executed by one or more processors, cause the one or more processors to:
-
receive a stream of messages with a plurality of servers coupled to provide access to the one or more shared system resources, the plurality of servers organized as at least two groups with a first group providing message queuing services and a second group providing message queuing services under first conditions and modified message queuing services under second conditions, wherein the first conditions comprise prediction that service level agreements will be met and second conditions comprise prediction that service level agreements will not be met; provide message queuing services with the first group by treating all jobs as equal, processing jobs asynchronously and processing jobs in the background to defer to foreground, non-message queuing services, jobs; provide message queuing services with the second group by treating all jobs as equal, processing jobs asynchronously and processing jobs as background jobs that defer to foreground, non-message queuing services jobs; and provide modified message queuing services with the second group by scheduling message queue processing based on message type and associated service level parameters. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36)
-
-
37. A method comprising:
-
receiving a stream of messages with a plurality of servers coupled to provide access to the one or more shared system resources, the plurality of servers organized as at least two groups with a first group providing message queuing services and a second group providing message queuing services under first conditions and modified message queuing services under second conditions, wherein the first conditions comprise meeting service level agreements and the second conditions comprise not meeting service level agreements; providing message queuing services with the first group by treating all jobs as equal, processing jobs asynchronously and processing jobs as background jobs that defer to foreground, non-message queuing services jobs; providing message queuing services with the second group by treating all jobs as equal, processing jobs asynchronously and processing jobs in the background to defer to foreground, non-message queuing services, jobs under the first conditions; and providing modified message queuing services with the second group by scheduling message queue processing based on message type and associated service level parameters. - View Dependent Claims (38, 39, 40, 41, 42, 43, 44, 45)
-
-
46. A method comprising:
-
receiving a stream of messages with a plurality of servers coupled to provide access to the one or more shared system resources, the plurality of servers organized as at least two groups with a first group providing message queuing services and a second group providing message queuing services under first conditions and modified message queuing services under second conditions, wherein the first conditions comprise prediction that service level agreements will be met and second conditions comprise prediction that service level agreements will not be met; providing message queuing services with the first group by treating all jobs as equal, processing jobs asynchronously and processing jobs as background jobs that defer to foreground, non-message queuing services jobs; providing message queuing services with the second group by treating all jobs as equal, processing jobs asynchronously and processing jobs in the background to defer to foreground, non-message queuing services, jobs under the first conditions; and providing modified message queuing services with the second group by scheduling message queue processing based on message type and associated service level parameters. - View Dependent Claims (47, 48, 49, 50, 51, 52, 53)
-
Specification