TRANSPARENT REQUEST ROUTING FOR A PARTITIONED APPLICATION SERVICE
First Claim
Patent Images
1. A method for handling information comprising:
- connecting a first resource server to one or more other resource servers via a network connection to form a server group, the resource servers providing access to one or more distributed resources such that a first portion of a distributed resource resides on a first resource server in the server group, and such that a second portion of the distributed resource resides on a second resource server in the server group;
receiving a request at the first resource server from a client, the request being a request by the client for access to at least one requested portion of the distributed resource;
accessing resource location information to identify which one of the resource servers in the server group is a responsible resource server for the requested portion of the distributed resource; and
if the resource location information indicates the responsible server for the requested portion of the distributed resource is not the first resource server at which the request was received from the client, then;
forwarding the request for access to the requested portion of the distributed resource to the responsible resource server;
receiving the requested portion of the distributed resource from the responsible resource server; and
returning the requested portion of the distributed resource to the client from the first resource server.
15 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for providing an efficient partitioned resource server. In one embodiment, the partitioned resource server comprises a plurality of individual servers, and the individual servers appear to be equivalent to a client. Each of the individual servers may include a routing table that includes a reference for each resource that is maintained on the partitioned resource server. Requests from a client are processed as a function of the routing table to route the request to the individual server that maintains or has control over the resource of interest.
-
Citations
20 Claims
-
1. A method for handling information comprising:
-
connecting a first resource server to one or more other resource servers via a network connection to form a server group, the resource servers providing access to one or more distributed resources such that a first portion of a distributed resource resides on a first resource server in the server group, and such that a second portion of the distributed resource resides on a second resource server in the server group; receiving a request at the first resource server from a client, the request being a request by the client for access to at least one requested portion of the distributed resource; accessing resource location information to identify which one of the resource servers in the server group is a responsible resource server for the requested portion of the distributed resource; and if the resource location information indicates the responsible server for the requested portion of the distributed resource is not the first resource server at which the request was received from the client, then; forwarding the request for access to the requested portion of the distributed resource to the responsible resource server; receiving the requested portion of the distributed resource from the responsible resource server; and returning the requested portion of the distributed resource to the client from the first resource server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. An information handling apparatus comprising:
-
a resource location information storage device, for storing resource location information indicating which ones of a plurality of resource servers are responsible for one or more portions of a distributed resource, such the resource location information storage device indicates that a first portion of the distributed resource resides on a first resource server and a second portion of the distributed resource resides on a second resource server; a resource portion storage device; one or more communication interfaces providing connections to a client and connections between the first and second resource servers; and a server processor and instruction memory, for storing and executing processor instructions to access the resource location information storage device and operate the communication interfaces to further; receive a request at the first resource server from a client, the request being a request by the client for access to at least one requested portion of the distributed resource; access resource location information to identify which one of the resource servers in the server group is a responsible resource server for the requested portion of the distributed resource; and if the resource location information indicates the responsible server for the requested portion of the distributed resource is not the first resource server at which the request was received from the client, then; forward the request for access to the requested portion of the distributed resource to the responsible resource server; receive the requested portion of the distributed resource from the responsible resource server; and return the requested portion of the distributed resource to the client from the first resource server. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method for handling information by providing transparent request routing for a partitioned storage resource, the method comprising:
-
establishing a network connection between a client and a selected one of a plurality of servers in a server group; storing the partitioned storage resource by at least two of the servers, such that a first portion of the partitioned storage resource resides on a first server and a second portion of the partitioned storage resource resides on a second server; in response to a client requesting the selected one of the plurality of servers to access the partitioned storage resource; maintaining the network connection between the client and the connected server; routing the client request to at least two other servers on which portions of the partitioned storage resource reside, the at least two other servers to which the client request is routed being any one of the plurality of servers in the server group, including the connected server; accessing resource location information that;
i) resides on each of the plurality of servers, including the connected server; and
ii) identifies to each of the plurality of servers on which of the plurality of servers, including the connected server and any other servers, which portions of the partitioned storage resource reside on which servers; andin an event that a portion of the partitioned storage resource does not reside on the connected server, returning the portion of the partitioned storage resource to the client from an other one of the plurality of servers that does store the portion but only via the connected server, and not directly by the other one of the servers.
-
-
20. A tangible, non-transitory, computer readable medium for storing computer executable instructions for providing a partitioned storage resource access function, with the computer executable instructions for:
-
establishing a network connection between a client and a selected one of a plurality of servers in a server group; storing a partitioned storage resource by at least two of the servers, such that a first portion of the partitioned storage resource resides on a first server and a second portion of the partitioned storage resource resides on a second server; in response to a client requesting the selected one of the plurality of servers to access the partitioned storage resource; routing the client request to at least two other servers on which portions of the partitioned storage resource reside, the at least two other servers to which the client request is routed being any one of the plurality of servers in the server group, including the connected server; accessing resource location information that;
i) resides on each of the plurality of servers, including the connected server; and
ii) identifies to each of the plurality of servers on which of the plurality of servers, including the connected server and any other servers, which portions of the partitioned storage resource reside on which servers; andin an event that a portion of the partitioned storage resource does not reside on the connected server, returning the portion of the partitioned storage resource to the client from an other one of the plurality of servers that does store the portion but only via the connected server, and not directly by the other one of the servers.
-
Specification