Claims
- 1. A computer-implemented method of distributing software to a plurality of nodes, wherein the software exists in a plurality of releases, the method comprising:
receiving one or more designations indicating one or more designated nodes operable to execute the software as nodes to be distributed software of a selected software stage; determining that one or more of the designated nodes is designated as to be distributed software of the selected software stage; and responsive to determining that the one or more of the designated nodes are so designated, selecting a release of the software associated with the selected software stage as to be distributed to the one or more of the designated nodes.
- 2. The method of claim 1 further comprising:
distributing the selected release of the software to the one or more of the designated nodes.
- 3. The method of claim 1 wherein the designations are received via an application service provider scenario.
- 4. The method of claim 1 wherein the designations are received over the Internet.
- 5. The method of claim 1 wherein the receiving comprises:
receiving a set of one or more configuration directives; and receiving a name associated with the configuration directives.
- 6. The method of claim 1 further comprising:
receiving a request for a list of software from one of the nodes designated as to be distributed software of the selected stage; and responsive to the request, providing a list comprising the release of the software associated with the selected software stage.
- 7. The method of claim 6 wherein the request is sent via an HTTP-based protocol.
- 8. The method of claim 1 wherein the stages are associated with stage identifiers.
- 9. The method of claim 1 wherein the determining comprises comparing a distribution threshold value.
- 10. The method of claim 1 further comprising:
assigning a different distribution threshold value to different nodes; wherein the determining comprises selecting the software stage according to the distribution threshold value.
- 11. The method of claim 1 wherein the release of the software associated with the selected software stage is so associated without regard to a version.
- 12. The method of claim 1 wherein:
the software release is associated with a date; and the selecting comprises comparing the date.
- 13. The method of claim 1 wherein the designation indicates that a node is to be distributed software of the designated stage or a later-in-time release of a later stage, if any.
- 14. The method of claim 1 wherein the designations indicates that a node is to be distributed software of the designated stage or a release of a later stage, if any.
- 15. The method of claim 1 wherein the software executes at the nodes and is administered via an application service provider arrangement.
- 16. A method of facilitating software distribution to a plurality of computers over the Internet in an application service provider scenario, the method comprising:
via an HTML-based form, receiving an indication of a named group of one or more computers and a selected software stage designated for the named group of one or more computers; responsive to receiving the indication, modifying a data base to indicate that the named group of one or more computers is designated as to receive software of the selected software stage; responsive to one or more HTTP-based queries from one or more querying computers in the named group for software to be installed at the querying computers, identifying one or more distribution units comprising software of the selected stage as indicated in the data base; and responding to the HTTP-based queries by providing a list comprising network references to the distribution units.
- 17. A method of facilitating software distribution to a plurality of nodes having access to a network, the method comprising:
via the network, receiving an indication of an association of at least one of the nodes with a software stage; and after a version of software associated with the software stage becomes available, automatically distributing the version of the software to the nodes via the network.
- 18. The method of claim 17 wherein the indication is received from a data center in an application service provider scenario.
- 19. The method of claim 17 wherein the indication is received from a data center over the Internet.
- 20. The method of claim 17 wherein the distributing is initiated via a request by at least one of the nodes.
- 21. The method of claim 20 wherein the request is periodically automatically generated by a node.
- 22. A method of providing application services to a plurality of enterprises, the method comprising:
via an application service provider scenario, collecting indications associating computers within the enterprises with stages of software; periodically receiving requests from the computers within the enterprises for indications of what software is to be installed on the computers; responsive to the requests, sending lists of software to be installed at the computers according to the stages associated with the computers.
- 23. The method of claim 22 wherein the application service provider scenario is accomplished via an HTTP-based protocol.
- 24. The method of claim 22 wherein the requests are sent via an HTTP-based protocol.
- 25. The method of claim 24 wherein the requests are sent by an agent automatically without action by a user.
- 26. The method of claim 22 further comprising:
comparing at least one of the lists of software to be installed with software installed on at least one of the computers; installing software indicated as to be installed, but not installed.
- 27. The method of claim 26 wherein the installing comprises:
retrieving the software from an application service provider.
- 28. A computer readable medium having computer-executable instructions for performing the method of any of the preceding claims.
- 29. A system for providing application services for installing a plurality of software releases at a plurality of nodes, the system comprising:
a data store operable to associate the software releases with a software stage and to associate the nodes with a software stage; and one or more servers operable to receive indications of software stages associated with the nodes and modify the data store; wherein the servers are further operable to receive queries from the nodes to provide a list of software to be installed at the nodes and reply thereto according to stage information in the data store.
- 30. The system of claim 29 wherein the servers are operable to receive associations for the software stages via an HTTP-based protocol.
- 31. The system of claim 29 wherein the servers are operable to receive the queries from the nodes via an HTTP-based protocol.
- 32. A system for automatically distributing computer software via a network, the system comprising:
means for receiving information associating nodes with software stages; and means for replying to requests from the nodes and providing a list of software of an appropriate stage out of the software stages.
- 33. The system of claim 32 wherein the means for replying to requests is operable to receive the requests via an HTTP-based protocol.
- 34. The system of claim 32 wherein the system automatically distributes software to 1,000,000 or more nodes.
- 35. The system of claim 32 wherein the system automatically distributes software to 10,000,000 or more nodes.
- 36. A computer user interface for designating a software stage for one or more nodes, the user interface comprising:
a user interface element by which a selected software stage can be designated for one or more designated nodes; wherein the user interface element is presented by a data center, and responsive to activation of the user interface element, software of the selected software stage is automatically distributed by the data center to the one or more designated nodes.
- 37. A computer user interface of claim 36 wherein the data center provides the user interface element via an application service provider scenario.
PRIORITY CLAIM
[0001] This application claims the benefit of U.S. Provisional Patent Application No. 60/375,215, filed Apr. 23, 2002, which is hereby incorporated herein by reference.
[0002] The U.S. provisional patent applications No. 60/375,216, Huang et al., entitled, “Software Administration in an Application Service Provider Scenario via Configuration Directives”; No. 60/375,176, Vigue et al., entitled, “Fault-tolerant Distributed Computing Applications”; No. 60/375,174, Melchione et al., entitled, “Providing Access To Software Over a Network via Keys”; No. 60/375,154, Melchione et al., entitled, “Distributed Server Software Distribution,”; and No. 60/375,210, Melchione et al., entitled, “Executing Software In A Network Environment”; all filed Apr. 23, 2002, are hereby incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60375215 |
Apr 2002 |
US |