Smart stub or enterprise Java™ bean in a distributed processing system
First Claim
1. An article of manufacture including an information storage medium wherein is stored information, comprising:
- a first set of digital including a stub operating at a client and including within the stub a load balancing software component for selecting a service provider from a plurality of service providers in a cluster,wherein the stub is a remote method invocation stub that is used by the client to contact a naming service within the cluster and wherein the naming service provides to the stub at runtime an updated list of currently available service providers in the cluster,wherein each of the service providers provides a remote method implementation that the stub can communicate with using remote method invocation, andwherein the stub uses its load balancing software component to select a service provider and then communicate with the selected service provider using the remote method invocation.
1 Assignment
0 Petitions
Accused Products
Abstract
A clustered enterprise distributed processing system. The distributed processing system includes a first and a second computer coupled to a communication medium. The first computer includes a virtual machine (JVM) and kernel software layer for transferring messages, including a remote virtual machine (RJVM). The second computer includes a JVM and a kernel software layer having a RJVM. Messages are passed from a RJVM to the JVM in one computer to the JVM and RJVM in the second computer. Messages may be forwarded through an intermediate server or rerouted after a network reconfiguration. Each computer includes a Smart stub having a replica handler, including a load balancing software component and a failover software component. Each computer includes a duplicated service naming tree for storing a pool of Smart stubs at a node.
67 Citations
126 Claims
-
1. An article of manufacture including an information storage medium wherein is stored information, comprising:
-
a first set of digital including a stub operating at a client and including within the stub a load balancing software component for selecting a service provider from a plurality of service providers in a cluster, wherein the stub is a remote method invocation stub that is used by the client to contact a naming service within the cluster and wherein the naming service provides to the stub at runtime an updated list of currently available service providers in the cluster, wherein each of the service providers provides a remote method implementation that the stub can communicate with using remote method invocation, and wherein the stub uses its load balancing software component to select a service provider and then communicate with the selected service provider using the remote method invocation. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for use by a stub stored in a processing device on a distributed processing system, which when executed by a processor performs the steps comprising:
-
obtaining a list of service providers; and selecting a service provider from the list of service providers, wherein the stub is a remote method invocation stub that operates at the client and is used by the client to contact a naming service within a cluster and wherein the naming service provides to the stub at runtime an updated list of currently available service providers in the cluster, wherein each of the service providers provides a remote method implementation that the stub can communicate with using remote method invocation, and wherein the stub uses a load balancing software component to select a service provider and then communicate with the selected service provider using the remote method invocation. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A system for load balancing within a cluster, comprising:
-
a communications medium; a plurality of processing devices coupled to said communications medium and providing services, said plurality of processing devices including a first processing device and a second processing device, a third processing device, in communication with said communications medium, said third processing device including a stub operating thereon, said stub configured to select one of said plurality of processing devices for handling requests from the third processing device for a particular service, wherein the stub is a remote method invocation stub that operates at the third processing device and is used by the processing device to contact a naming service within a cluster and wherein the naming service provides to the stub at runtime an updated list of currently available service providers in the cluster. wherein each of the service providers provides a remote method implementation that the stub can communicate with using remote method invocation, and wherein the stub uses a load balancing software component to select a service provider and then communicate with the selected service provider using the remote method invocation. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35)
-
-
36. A system for load balancing within a cluster, comprising:
-
a first processing device, said first processing device including a stub operating thereon, said stub configured to communicate a request for service to one of a plurality of other processing devices, and, wherein said stub selects said one of said plurality of other processing devices for handling said request, wherein the stub is a remote method invocation stub that is used by the first processing device to contact a naming service within a cluster and wherein the naming service provides to the stub at runtime an updated list of currently available service providers in the cluster, wherein each of the service providers provides a remote method implementation that the stub can communicate with using remote method invocation, and wherein the stub uses a load balancing software component to select a service provider and then communicate with the selected service provider using the remote method invocation. - View Dependent Claims (37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50)
-
-
51. A method of load balancing in a cluster, comprising the steps of:
-
providing a plurality of processing devices, in communication with a communications medium, said plurality of processing devices including a first processing device and a second processing device; and
,communicating a request from a third processing device, via said communications medium, using a stub at said third processing device, said stub configured to select a one of said first or said second processing devices for handling said request, wherein the stub is a remote method invocation stub that is used by the third processing device to contact a naming service within the cluster and wherein the naming service provides to the stub at runtime an updated list of currently available service providers in the cluster, wherein each of the service providers provides a remote method implementation that the stub can communicate with using remote method invocation, and wherein the stub uses a load balancing software component to select a service provider and then communicate with the selected service provider using the remote method invocation. - View Dependent Claims (52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62)
-
-
63. A method of load balancing at a stub in a cluster, comprising the steps of:
-
selecting, at a stub operating on a first processing device, one of a plurality of processing devices for handling a request for a service; and
,communicating said request from said stub to the selected processing device, wherein the stub is a remote method invocation stub that is used by the first processing device to contact a naming service within the cluster and wherein the naming service provides to the stub at runtime an updated list of currently available service providers in the cluster, wherein each of the service providers provides a remote method implementation that the stub can communicate with using remote method invocation, and wherein the stub uses a load balancing software component to select a service provider and then communicate with the selected service provider using the remote method invocation. - View Dependent Claims (64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74)
-
-
75. A system for load balancing within a cluster, comprising:
-
a plurality of processing devices, said plurality of processing devices including a first processing device and a second processing device, a third processing device, said third processing device including a stub operating thereon, said stub configured to select one of said plurality of processing devices for handling requests from the third processing device for a particular service, wherein the stub is a remote method invocation stub that is used by the first processing device to contact a naming service within the cluster and wherein the naming service provides to the stub at runtime an updated list of currently available service providers in the cluster, wherein each of the service providers provides a remote method implementation that the stub can communicate with using remote method invocation, and wherein the stub uses a load balancing software component to select a service provider and then communicate with the selected service provider using the remote method invocation. - View Dependent Claims (76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90)
-
-
91. A method of load balancing in a cluster, comprising the steps of:
-
providing a plurality of processing devices, said plurality of processing devices including a first processing device and a second processing device; and
,communicating a request from a third processing device, using a stub at said third processing device, said stub configured to select a one of said first or said second processing devices for handling said request, wherein the stub is a remote method invocation stub that is used by the third processing device to contact a naming service within the cluster and wherein the naming service provides to the stub at runtime an updated list of currently available service providers in the cluster, wherein each of the service providers provides a remote method implementation that the stub can communicate with using remote method invocation, and wherein the stub uses a load balancing software component to select a service provider and then communicate with the selected service provider using the remote method invocation. - View Dependent Claims (92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102)
-
-
103. A computer readable medium including instructions stored thereon which when executed cause a computer to perform the steps of:
-
providing a plurality of processing devices, in communication with a communications medium, said plurality of processing devices including a first processing device and a second processing device; and
,communicating a request from a third processing device, via said communications medium, using a stub at said third processing device, said stub configured to select a one of said first or said second processing devices for handling said request, wherein the stub is a remote method invocation stub that is used by the third processing device to contact a naming service within a cluster and wherein the naming service provides to the stub at runtime an updated list of currently available service providers in the cluster, wherein each of the service providers provides a remote method implementation that the stub can communicate with using remote method invocation, and wherein the stub uses a load balancing software component to select a service provider and then communicate with the selected service provider using the remote method invocation. - View Dependent Claims (104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114)
-
-
115. An article of manufacture, including instructions stored in a storage medium which when executed by a computer cause the computer to perform the steps comprising:
-
a stub operating on a first processing device, for selecting one of a plurality of processing devices for handling a request for a service, and communicating said request from said stub to the selected processing device, wherein the stub is a remote method invocation stub that is used by the first processing device to contact a naming service within a cluster and wherein the naming service provides to the stub at runtime an updated list of currently available service providers in the cluster, wherein each of the service providers provides a remote method implementation that the stub can communicate with using remote method invocation, and wherein the stub uses a load balancing software component to select a service provider and then communicate with the selected service provider using the remote method invocation. - View Dependent Claims (116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126)
-
Specification