IP Library › Granted Patent US 7,925,755
Granted Patent B2
US 7,925,755 · App. 11/028,123 · Granted Apr 12, 2011

Peer to peer resource negotiation and coordination to satisfy a service level objective

Assignee: International Business Machines Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,925,755
App. No.
11/028,123
Granted
Apr 12, 2011
Kind
B2
Abstract

Techniques are provided for allocating resources. Performance metrics for a transaction are received. It is determined whether one or more service level objectives are being violated based on the received performance metrics. In response to determining that the one or more service level objectives are being violated, additional resources are allocated to the transaction. In response to allocating the additional resources, a resource allocation event is published.

Claims (61)

1. A method for allocating resources for a transaction, comprising:

under control of a downstream resource provider controller on a computer having a processor,

subscribing to at least one message posted on a resource event bulletin board by an upstream resource provider controller, wherein the messages notify the downstream resource provider controller of resource allocation events, wherein the resource allocation events occur when there is a change in resource allocation, wherein the downstream resource provider controller is downstream of the upstream resource provider controller for the transaction, and wherein the transaction sequentially uses resources from the upstream resource provider controller and the downstream resource provider controller;

under control of the upstream resource provider controller on the computer,

receiving performance metrics for a transaction;

determining whether one or more service level objectives are being violated based on the received performance metrics;

in response to determining that the one or more service level objectives are being violated, allocating additional resources to the transaction; and

in response to allocating the additional resources, publishing a resource allocation event to the resource event bulletin board; and

under control of the downstream resource provider controller,

receiving a message that provides notification of the resource allocation event that indicates that there has been a resource allocation change by the upstream resource provider controller;

determining whether resources are to be reallocated based on resource allocation performed by the upstream resource provider controller;

in response to determining that resources are to be reallocated, allocating additional resources to the transaction based on the resource allocation performed by the upstream resource provider; and

publishing a new resource allocation event, wherein another resource provider controller that provides resources for the transaction is downstream of the downstream resource provider controller and receives a message that provides notification of the resource allocation event that indicates that there has been a resource allocation change by the downstream resource provider controller.

2. The method of claim 1 , wherein allocating additional resources further comprises:

notifying a pool optimizer to allocate more resources to a resource cluster from a resource pool.

3. The method of claim 2 , wherein the pool optimizer notifies a deployment engine to execute a workflow to reallocate resources.

4. The method of claim 1 , wherein the upstream resource provider controller and the downstream resource provider controller are each associated with a resource cluster and a pool optimizer.

5. The method of claim 1 , wherein publishing the resource allocation event enables peer to peer communication between the upstream resource provider controller and the downstream resource provider controller.

6. The method of claim 1 , wherein allocating additional resources further comprises:

allocating the additional resources from different resource clusters that have been allocated to different transaction classes.

7. An article of manufacture comprising a computer readable medium storing a program for allocating resources, wherein the program when executed by a processor on a computer causes operations to be performed, the operations comprising:

under control of a downstream resource provider controller,

subscribing to at least one message posted on a resource event bulletin board by an upstream resource provider controller, wherein the messages notify the downstream resource provider controller of resource allocation events, wherein the resource allocation events occur when there is a change in resource allocation, wherein the downstream resource provider controller is downstream of the upstream resource provider controller for the transaction, and wherein the transaction sequentially uses resources from the upstream resource provider controller and the downstream resource provider controller;

under control of the upstream resource provider controller,

receiving performance metrics for a transaction;

determining whether one or more service level objectives are being violated based on the received performance metrics;

in response to determining that the one or more service level objectives are being violated, allocating additional resources to the transaction; and

in response to allocating the additional resources, publishing a resource allocation event to the resource event bulletin board; and

under control of the downstream resource provider controller,

receiving a message that provides notification of the resource allocation event that indicates that there has been a resource allocation change by the upstream resource provider controller;

determining whether resources are to be reallocated based on resource allocation performed by the upstream resource provider controller;

in response to determining that resources are to be reallocated, allocating additional resources to the transaction based on the resource allocation performed by the upstream resource provider; and

publishing a new resource allocation event, wherein another resource provider controller that provides resources for the transaction is downstream of the downstream resource provider controller and receives a message that provides notification of the resource allocation event that indicates that there has been a resource allocation change by the downstream resource provider controller.

8. The article of manufacture of claim 7 , wherein the operation for allocating additional resources further comprises:

notifying a pool optimizer to allocate more resources to a resource cluster from a resource pool.

9. The article of manufacture of claim 8 , wherein the pool optimizer notifies a deployment engine to execute a workflow to reallocate resources.

10. The article of manufacture of claim 7 , wherein the upstream resource provider controller and the downstream resource provider controller are each associated with a resource cluster and a pool optimizer.

11. The article of manufacture of claim 7 , wherein publishing the resource allocation event enables peer to peer communication between the upstream resource provider controller and the downstream resource provider controller.

12. The article of manufacture of claim 7 , wherein the operation for allocating additional resources further comprises:

allocating the additional resources from different resource clusters that have been allocated to different transaction classes.

13. A system for allocating resources, comprising:

circuitry capable of causing operations to be performed, the operations comprising:

under control of a downstream resource provider controller,

subscribing to at least one message posted on a resource event bulletin board by an upstream resource provider controller, wherein the messages notify the downstream resource provider controller of resource allocation events, wherein the resource allocation events occur when there is a change in resource allocation, wherein the downstream resource provider controller is downstream of the upstream resource provider controller for the transaction, and wherein the transaction sequentially uses resources from the upstream resource provider controller and the downstream resource provider controller;

under control of the upstream resource provider controller,

receiving performance metrics for a transaction;

determining whether one or more service level objectives are being violated based on the received performance metrics;

in response to determining that the one or more service level objectives are being violated, allocating additional resources to the transaction; and

in response to allocating the additional resources, publishing a resource allocation event to the resource event bulletin board; and

under control of the downstream resource provider controller,

receiving a message that provides notification of the resource allocation event that indicates that there has been a resource allocation change by the upstream resource provider controller;

determining whether resources are to be reallocated based on resource allocation performed by the upstream resource provider controller;

in response to determining that resources are to be reallocated, allocating additional resources to the transaction based on the resource allocation performed by the upstream resource provider; and

publishing a new resource allocation event, wherein another resource provider controller that provides resources for the transaction is downstream of the downstream resource provider controller and receives a message that provides notification of the resource allocation event that indicates that there has been a resource allocation change by the downstream resource provider controller.

14. The system of claim 13 , wherein the operation for allocating additional resources further comprises:

notifying a pool optimizer to allocate more resources to a resource cluster from a resource pool.

15. The system of claim 14 , wherein the pool optimizer notifies a deployment engine to execute a workflow to reallocate resources.

16. The system of claim 13 , wherein the upstream resource provider controller and the downstream resource provider controller are each associated with a resource cluster and a pool optimizer.

17. The system of claim 13 , wherein publishing the resource allocation event enables peer to peer communication between the upstream resource provider controller and the downstream resource provider controller.

18. The system of claim 13 , wherein allocating additional resources further comprises:

allocating the additional resources from different resource clusters that have been allocated to different transaction classes.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 26, 2005
From: DIEP, CATHERINE CUONG; HSIUNG, LAWRENCE SHUN-MOK; OSTDIEK, LUIS JAVIER; SUBRAHMONIA, JAYASHREE; WADIA, NOSHIR CAVAS; YE, PENG
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 016171/0804 →
Continuity (1)
Related Publication 20060149611A1 · Jul 6, 2006