Method and apparatus for dynamic reconfiguration of web services infrastructure
First Claim
1. A computer program product recorded on a non-transitory computer readable medium for organizing and manipulating Web services software modules in containers on a network, comprising:
- computer executable instructions to determine and describe Web services software modules in containers that are available at a corresponding, local network node, said Web services software modules comprising executable software modules that can be exchanged between nodes of a network and run at said nodes;
computer executable instructions to generate messages to be transmitted to other containers via a network disclosing said Web services software modules that are available at said corresponding network node, and including contextual information about said containers and said Web services available at said corresponding, local node;
computer executable instructions to receive and decipher messages disclosing Web services software modules that are available at other network nodes corresponding to other containers; and
computer executable instructions to cause the dynamic reconfiguration of said Web services software modules available at said corresponding network node on said transmitted and said received messages, including the exchange of said Web services software modules between said network nodes, wherein said instructions to cause the dynamic reconfiguration comprise;
computer executable instructions to transmit messages that are hardware and software platform independent to said other containers, requesting said other containers to return copies of Web services software modules;
computer executable instructions, responsive to receipt of messages from said other containers requesting copies of Web services software modules available at said corresponding network node, to send copies of said requested Web services software modules to said requesting containers;
computer executable instructions to receive client requests for use of a Web services software module from client computers via said network;
computer executable instructions that, responsive to receipt of one of said client requests from a client for a Web services software module that is not available at said corresponding network node, determine, based on said received messages disclosing said Web services software modules that are available at other network nodes, whether another network node has a copy of said particular Web services software module; and
computer executable instructions that invoke a proxy to another of said containers having a copy of a particular Web services software module based on said determination.
2 Assignments
0 Petitions
Accused Products
Abstract
The invention provides a software construct, herein termed a Web service container, for managing Web services at a network node and an adaptive model for the dynamic configuration of a plurality of Web service containers distributed throughout a network, such as the Internet or an intranet, in a software and hardware platform-independent manner. Containers can communicate with each other via the network to determine contextual information such as the identity of each other, the capabilities of each other, the operating system or platforms of each others, the contents of the container (i.e., the available Web services at that location), etc. By providing a container framework and the ability to exchange contextual information, the present invention allows servers as well as clients to dynamically exchange Web services software as well as contextual information, such as current workload, so that servers and clients are virtually limitlessly reconfigurable based on context.
73 Citations
41 Claims
-
1. A computer program product recorded on a non-transitory computer readable medium for organizing and manipulating Web services software modules in containers on a network, comprising:
-
computer executable instructions to determine and describe Web services software modules in containers that are available at a corresponding, local network node, said Web services software modules comprising executable software modules that can be exchanged between nodes of a network and run at said nodes; computer executable instructions to generate messages to be transmitted to other containers via a network disclosing said Web services software modules that are available at said corresponding network node, and including contextual information about said containers and said Web services available at said corresponding, local node; computer executable instructions to receive and decipher messages disclosing Web services software modules that are available at other network nodes corresponding to other containers; and computer executable instructions to cause the dynamic reconfiguration of said Web services software modules available at said corresponding network node on said transmitted and said received messages, including the exchange of said Web services software modules between said network nodes, wherein said instructions to cause the dynamic reconfiguration comprise; computer executable instructions to transmit messages that are hardware and software platform independent to said other containers, requesting said other containers to return copies of Web services software modules; computer executable instructions, responsive to receipt of messages from said other containers requesting copies of Web services software modules available at said corresponding network node, to send copies of said requested Web services software modules to said requesting containers; computer executable instructions to receive client requests for use of a Web services software module from client computers via said network; computer executable instructions that, responsive to receipt of one of said client requests from a client for a Web services software module that is not available at said corresponding network node, determine, based on said received messages disclosing said Web services software modules that are available at other network nodes, whether another network node has a copy of said particular Web services software module; and computer executable instructions that invoke a proxy to another of said containers having a copy of a particular Web services software module based on said determination. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A method for organizing and manipulating Web services software modules in containers, comprising:
-
determining and describing Web services software modules in containers that are available at a corresponding network node, said Web services software modules comprising executable software modules that can be exchanged between nodes of a network and run at said nodes; transmitting messages via a network disclosing said Web services software modules that are available at said corresponding network node to other network nodes via said network and including contextual information about said container and said Web services available at said corresponding, local node; receiving and deciphering messages from other network nodes disclosing Web services software modules that are available at other network nodes; and dynamically reconfiguring Web services software modules on said network node transmitted and received based on said messages, including the exchange of said Web services software modules between said network nodes, wherein said instructions for causing the dynamic reconfiguration comprise; transmitting messages that are hardware and software platform independent to said other containers, requesting said other containers to return copies of Web services software modules; responsive to receipt of messages from said other containers, requesting copies of Web services software modules available at said corresponding network node, for sending copies of said requested Web services software modules to said requesting containers; receiving client requests for use of a Web services software module from client computers via said network; responsive to receipt of a client request from a client for a Web services software module that is not available at said corresponding network node, determining, based on said received messages disclosing said Web services software modules that are available at other network nodes, what network nodes have copies of said particular Web services software module; and invoking a proxy to another of said network nodes having a copy of a particular Web services software module based on said determination. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41)
-
Specification