摘要:
The invention is a method and apparatus for maintaining session affinity within a server farm when requests sharing a session ID switch between server groups or between server clones in a single server group. In accordance with the invention, client requests include a list of clone identification codes, each code uniquely identifying a clone within a server group for handling the request. The clone identification code may be appended to a session identification code. For each different server that handles a request in a session, a new clone identification code is appended without deleting or overwriting any previously appended clone identification codes. When a request is received, the list of clone identification codes associated with the request is parsed in a predetermined order to search for the first clone identification code that matches one of the clone identification codes of a server in the appropriate server group. If a match is detected, the request is dispatched to that clone. If no match is found, the request is dispatched to a server clone in the server group using any reasonable Work Load Management (WLM) mechanism and then the clone identification code of the selected clone is added to the list.
摘要:
The invention is a method and apparatus for invalidating session data stored in a database. In accordance with the invention, http sessions stored in the database are allowed to remain in the database without real time testing for session time out. Instead, invalid (or timed out) sessions remain in the database until a specified time. At that specified time, all http sessions are invalidated without actually testing them for time out. Alternately, each session can be individually tested for time out and only those sessions which have actually timed out are removed from the database or otherwise invalidated.
摘要:
Under the present invention, there is provided a voting mechanism for assigning an application server of an application server cluster the task of invalidating all sessions containing listeners in the cluster for a web application. A method for session invalidation processing comprises assigning a vote to a web application upon launch of the web application in an application server of the application server cluster, broadcasting the vote to other application servers of the application server cluster, receiving a vote for the web application from each of the other application servers in the application server cluster in which the web application has been launched, and assigning invalidation processing to the application server containing the web application having the highest vote. The votes are dynamically updated upon the removal or addition of an application server from/to the application server cluster.
摘要:
A dynamic rebalancer operates in a server cluster independently of routers directing traffic to the servers in the cluster. An analysis component uses configuration information and statistics information to determine which session, if any, should be moved. A filter component receives transfer instructions from the analysis component. When the filter component receives transfer instructions from the analysis component, the filter component adds a redirect command to the client request. The filter component continually redirects client requests within the session to the new server until the client receives the redirect command and begins to send client requests to the new server.
摘要:
A technique, system, and computer program for maintaining session information among multiple clustered computers for servlets and providing those servlets with various session services. The session services are implemented using a plug-in servlet engine. The session information is preferably maintained without using a persistent data store, to avoid performance penalties associated with storing information in persistent storage such as a database. A locking technique is implemented to prevent servlets from inadvertently overwriting each other's session object data. A registration process is preferably used, to optimize communication of configuration property changes. Non-proprietary interfaces are used, allowing for scalability, portability, and maximum industry acceptance of this solution.