摘要:
Automated techniques are disclosed for coordinating request or transaction processing in a data processing system. For example, a technique for handling requests in a data processing system comprises the following steps. A compound request comprising at least two individual requests of different types is received. An individual request r1 of the compound request is placed on a queue for requests of type t1, wherein t1 is the request type of r1. After r1 has reached the front of the queue, it is determined if at least one individual request of said compound request can execute. The compound request is executed if it is determined that all individual requests of the compound request can execute.
摘要:
In a computer system comprising a plurality of computing devices wherein the plurality of computing devices processes a plurality of tasks and each task has a task type, a method for determining overheads associated with task types comprises the following steps. Overheads are estimated for a plurality of task types. One of the plurality of computing devices is selected to execute one of the plurality of tasks, wherein the selection comprises estimating load on at least a portion of the plurality of computing devices from tasks assigned to at least a portion of the plurality of computing devices and the estimates of overheads of the plurality of task types. One or more of the estimates of overheads of the plurality of task types are varied.
摘要:
Systems, methods, apparatus and articles of manufacture are disclosed for tracking, propagation and matching of messages pertaining to the interest in and availability of services across autonomous service domains In one embodiment of the invention, a system of distributed, federated service domains in a service-oriented environment is provided wherein each service domain comprises: a plurality of locally provided services; a plurality of service requesters; and a service registry comprising descriptions of: one or more locally provided services; and one or more requested services, each of the requested services being one of: a fulfilled reference to a foreign service; and an unfulfilled reference to a foreign service.
摘要:
Techniques for coordinating updates to replicated data are disclosed. For example, in a system comprised of a plurality of nodes, a method for maintaining consistent copies of data across said nodes comprises the following steps. A copy of an object o1 is maintained by a plurality of nodes. In response to a request r1 to update a copy of object o1, a message is sent to at least some of said plurality of nodes instructing a node receiving the message to invalidate its copy of object o1. In response to a node n1 receiving an invalidation message arising from r1 wherein n1 is processing another request r2 to update object o1, requests r1 and r2 are coordinated to prevent the requests from causing conflicting updates or invalidations.
摘要:
Techniques are disclosed for load balancing in networks such as those networks handling telephony applications. By way of example, a method for directing requests associated with calls to servers in a system comprised of a network routing calls between a plurality of nodes wherein a node participates in a call as a caller or a receiver and wherein a load balancer sends requests associated with calls to a plurality of servers comprises the following steps. A request associated with a node belonging to a group including a plurality of nodes is received. A server is selected to receive the request. A subsequent request is received. A determination is made whether or not the subsequent request is associated with a node belonging to the group. The subsequent request is sent to the server based on determining that the subsequent request is associated with a node belonging to the group. By way of another example, a method for balancing requests among servers in a client server environment wherein a load balancer sends requests associated with a client to a plurality of servers comprises the following steps. Information is maintained regarding a weighted number of requests assigned to each server. The load balancer receives a request from a client. A server s1 is selected to receive the request by examining the maintained information and identifying a server with a least weighted number of requests assigned thereto. The load balancer sends the request to server s1 and increments a weighted number of requests assigned to server s1 in the maintained information. In response to receiving a notification from server s1 that the request has completed, a weighted number of requests assigned to server s1 is decremented in the maintained information.
摘要:
Methods for serving data include maintaining an incomplete version of an object at a server and at least one fragment at the server. In response to a request for the object from a client, the incomplete version of the object, an identifier for a fragment comprising a portion of the object, and a position for the fragment within the object are sent to the client. After receiving the incomplete version of the object, the identifier, and the position, the client requests the fragment from the server using the identifier. The object is constructed by including the fragment in the incomplete version of the object in a location specified by the position.
摘要:
Automated techniques are disclosed for coordinating request or transaction processing in a data processing system. For example, a technique for handling requests in a data processing system comprises the following steps. A compound request comprising at least two individual requests of different types is received. An individual request r1 of the compound request is placed on a queue for requests of type t1, wherein t1 is the request type of r1. After r1 has reached the front of the queue, it is determined if at least one individual request of said compound request can execute. The compound request is executed if it is determined that all individual requests of the compound request can execute.
摘要:
A method for communicating information from a first computing node to at least one of the following: a storage device and a second computing node. The first computing node is monitored to collect at least one estimate of available resources, and based on this estimate, an amount of data collected is modified. Then, the modified data is sent to at least one of the following: the storage device and the second computing node. This invention also provides for the determination of an optimum batch size for aggregating data wherein, for a number of batch sizes, costs are estimated for sending batched information to persistent storage and for losing batched data. Then, the optimum batch size is selected from the number of different batch sizes based on sums of these costs. This invention also provides for selective compression of data, wherein it is determined which of a number of compression algorithms do not incur an overhead that exceeds available resources. Then, one of the determined algorithms is selected to maximize compression.
摘要:
Improved load balancing techniques are disclosed. For example, in one illustrative aspect of the invention, a method of satisfying requests in a system comprised of a plurality of servers comprises the following steps. At least one load balancer is provided for routing requests to the plurality of servers. At the at least one load balancer, a request sent from a client is obtained. At the at least one load balancer, the request is examined. Costs of satisfying the request by at least two of the plurality of servers are estimated. The estimation is based on at least one of a number and a cost of at least one remote access for satisfying the request. The request is routed to a server of the plurality of servers with a low estimated cost of satisfying the request.
摘要:
A system and method for maintaining consistency in a system where multiple copies of an object may exist is provided for maintaining consistent copies. Consistency is maintained using a plurality of consistency policies in which at least one consistency policy results in different performance than a second consistency policy. A consistency policy is selected from the plurality consistency policies for each object to improve system performance.