Continuous server service is provided during switching from a current server version to a new server version. After initiating switching, a socket associated with the current server version is left open so that the socket may continue to receive client calls. The socket is then associated with the new server version and client calls received during switching are buffered and subsequently processed by the new server version after switching is complete.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A method for providing continuous server service during switching from a current server version to a new server version, said current server version receiving client calls through an associated static port with a socket bound thereto, said method comprising: initiating switching from the current server version to the new server version while maintaining said socket open for receiving client calls; buffering any received client calls during switching from the current server version to the new server version; and upon switching to said new server version, associating the open socket with the new server version using open socket identifying information for the current server version, and processing any buffered client calls.
2. The method of claim 1 , wherein any client calls received before said initiating switching are processed completely by said current server version before switching is finished, and client calls received after said initiating switching but before switching is complete are buffered and processed by said new server version after switching is complete.
3. The method of claim 1 , wherein said associating comprises said current server version saving information identifying said socket, and said new server version retrieving said information and utilizing said information to reuse said socket.
4. The method of claim 1 , further comprising receiving, by said socket, client calls made after switching as well as client calls made before switching.
5. The method of claim 1 , further comprising running said current server version a aid new server version on a remote procedure call server.
6. The method of claim 1 , further comprising processing said buffered calls by said new server version.
7. The method of claim 1 , further comprising determining whether switching was initiated by a restart procedure, and upon a determination that switching was initiated by a restart procedure, utilizing said associated static port with a socket bound thereto to receive client calls.
8. The method of claim 1 , further comprising checking for conditions to initiate switching periodically according to a timer thread and with each client call received.
9. A method for providing continuous server service during switching from a current server version to a new server version, said current server version receiving client calls through an associated static port with a socket bound thereto, said method comprising: receiving client calls during switching from said current server version to said new server version by leaving said socket open; associating said static port with said socket bound thereto with said new server version using open socket identifying information for the current server version; and processing, by said new server version, any client calls received during switching so that no client calls are lost.
10. The method of claim 9 , wherein any client calls received before switching is initiated are processed completely by said current server version before switching is finished, and client calls received after switching is initiated but before switching is complete are buffered and processed by said new server version after switching is complete.
11. The method of claim 9 , wherein said associating comprises said current server version saving information identifying said socket, and said new server version retrieving said information and utilizing said information to reuse said socket.
12. The method of claim 9 , further comprising receiving, by said socket, client calls made after switching as well as client calls made before switching.
13. The method of claim 9 , further comprising running said current server version and said new server version on a remote procedure call server.
14. The method of claim 9 , further comprising determining whether switching was initiated by a restart procedure, and upon a determination that switching was initiated by a restart procedure, utilizing said associated static port with a socket bound thereto to receive client calls.
15. The method of claim 9 , further comprising checking for conditions to initiate switching periodically according to a timer thread and with each client call received.
16. A system capable of providing continuous server service during switching from a current server version to a new server version, said system comprising: a server having a static port with a socket bound thereto which is associated with said current server version, said server being operable to leave said socket open when said current server version is switched to said new server version so that said server is able to continue to receive client calls received through said socket during switching, said server further comprising a buffer adapted to queue client calls received during switching from said current server version to said new server version, wherein said server is adapted to have said open socket associated with the new server version using open socket identifying information for the current server version and have the new server version process any queued client calls received during switching after switching to said new server is complete.
17. The system of claim 16 , wherein said server is adapted to have said current server version complete processing of any client calls received before switching is finished, and to have said new server version process client calls received after switching is initiated but before switching is complete.
18. The system of claim 16 , wherein said server is adapted to associate said static port with said socket bound thereto with said new server version by forwarding information identifying said socket to said new server version, thereby allowing reuse of said socket.
19. The system of claim 16 , wherein said socket is adapted to receive client calls made after switching as well as client calls made before switching.
20. The system of claim 16 , wherein said server is a remote procedure call server.
21. The system of claim 16 , wherein said server is further adapted to determine whether switching was initiated by a restart procedure and to utilize said static port with a socket bound thereto to receive client calls, upon a determination that switching was initiated by a restart procedure.
22. The system of claim 16 , wherein said server is further adapted to check for conditions to initiate switching periodically according to a timer thread and with each client call received.
23. A system for providing continuous server service during switching from a current server version to a new server version, said current server version receiving client calls through an associated static port with a socket bound thereto, said system comprising: means for initiating switching from the current server version to the new server version while maintaining said socket open for receiving client calls; means for buffering any received client calls during switching from the current server version to the new server version; and means for processing, upon switching to said new server version, any buffered client calls and for associating the open socket with the new server version using open socket identifying information for the current server version.
24. The system of claim 23 , further comprising: means for processing completely any client calls received before said initiating switching.
25. The system of claim 23 , wherein said means for associating comprises: means for saving information identifying said socket; and means for retrieving said information and utilizing said information to reuse said socket.
26. The system of claim 23 , wherein said server is a remote procedure call server.
27. The system of claim 23 , further comprising means for determining whether switching was initiated by a restart procedure, and upon a determination that switching was initiated by a restart procedure, utilizing said associated static port with a socket bound thereto to receive client calls.
28. The system of claim 23 , further comprising means for checking for conditions to initiate switching periodically according to a timer thread and with each client call received.
29. A system for providing continuous server service during switching from a current server version to a new server version, said current server version receiving client calls through an associated static port with a socket bound thereto, said system comprising: means for receiving client calls during switching from said current server version to said new server version by leaving said socket open; means for associating said static port with said socket bound thereto with said new server version using open socket identifying information for the current server version; and means for processing, by said new server version, any client calls received during switching so that no client calls are lost.
30. The system of claim 29 , further comprising means for processing completely any client calls received before said initiating switching.
31. The system of claim 29 , further comprising means for receiving, by said socket, client calls made after switching as well as client calls made before switching.
32. The system of claim 29 , wherein said server is a remote procedure call server.
33. The system of claim 29 , further comprising means for determining whether switching was initiated by a restart procedure, and upon a determination that switching was initiated by a restart procedure, utilizing said associated static port with a socket bound thereto to receive client calls.
34. The system of claim 29 , further comprising means for checking for conditions to initiate switching periodically according to a timer thread and with each client call received.
35. An article of manufacture comprising: a computer useable medium having computer readable program code means embodied therein for causing the providing of continuous server service during switching from a current server version to a new server version, said current server version receiving client calls through an associated static port with a socket bound thereto, the computer readable program code means in said article of manufacture comprising: computer readable program code means for causing initiating switching from the current server version to the new server version while maintaining said socket open for receiving client calls; computer readable program code means for causing buffering of any received client calls during switching from the current server version to the new server version; and computer readable program code means for causing, upon switching to said new server version, associating the open socket with the new server version using open socket identifying information for the current server version, and processing of any buffered client calls.
36. The article of manufacture of claim 35 , further comprising computer readable program code means for causing a computer to effect processing completely any client calls received before said initiating switching by said current server version before switching is finished, and buffering and processing client calls received after said initiating switching but before switching is complete by said new server version.
37. The article of manufacture of claim 35 , wherein said computer readable program code means for causing a computer to effect associating further comprises computer readable program code means for causing said current server version to save information identifying said socket, and said new server version to retrieve said information and utilize said information to reuse said socket.
38. The article of manufacture of claim 35 , further comprising computer readable program code means for causing a computer to effect receiving, by said socket, client calls made after switching as well as client calls made before switching.
39. The article of manufacture of claim 35 , further comprising computer readable program code means for causing a computer to effect running said current server version and said new server version on a remote procedure call server.
40. The article of manufacture of claim 35 , further comprising computer readable program code means for causing a computer to effect processing said buffered calls by said new server version.
41. The article of manufacture of claim 35 , further comprising computer readable program code means for causing a computer to effect determining whether switching was initiated by a restart procedure, and upon a determination that switching was initiated by a restart procedure, utilizing said associated static port with a socket bound thereto to receive client calls.
42. The article of manufacture of claim 35 , further comprising computer readable program code means for causing a computer to effect checking for conditions to initiate switching periodically according to a timer thread and with each client call received.
43. An article of manufacture comprising: a computer useable medium having computer readable program code means embodied therein for causing the providing of continuous server service during switching from a current server version to a new server version, said current server version receiving client calls through an associated static port with a socket bound thereto, the computer readable program code means in said article of manufacture comprising: computer readable program code means for causing receiving client calls during switching from said current server version to said new server version by leaving said socket open; computer readable program code means for causing associating of said static port with said socket bound thereto with said new server version using open socket identifying information for the current server version; and computer readable program code means for causing processing, by said new server version, of any client calls received during switching so that no client calls are lost.
44. The article of manufacture of claim 43 , further comprising computer readable program code means for causing a computer to effect processing completely any client calls received before said initiating switching by said current server version before switching is finished, and buffering and processing client calls received after said initiating switching but before switching is complete by said new server version.
45. The article of manufacture of claim 43 , further comprising computer readable program code means for causing a computer to effect said current server version saving information identifying said socket, and said new server version retrieving said information and utilizing said information to reuse said socket.
46. The article of manufacture of claim 43 , further comprising computer readable program code means for causing a computer to effect receiving, by said socket, client calls made after switching as well as client calls made before switching.
47. The article of manufacture of claim 43 , further comprising computer readable program code means or causing a computer to effect running said current server version and said new server version on a remote procedure call server.
48. The article of manufacture of claim 43 , further comprising computer readable program code means for causing a computer to effect determining whether switching was initiated by a restart procedure, and upon a determination that switching was initiated by a restart procedure, utilizing said associated static port with a socket bound thereto to receive client calls.
49. The article of manufacture of claim 43 , further comprising computer readable program code means for causing a computer to effect checking for conditions to initiate switching periodically according to a timer thread and with each client call received.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
June 30, 1999
September 16, 2003
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.