WebSphere Extended Deployment, Version 6.0.x
             Operating Systems: AIX, HP-UX, Linux, Solaris, Windows, z/OS


ObjectGrid HTTP session manager

In a WebSphere Application Server Version 5 or later base or Network Deployment environment, you can override the default session manager with the ObjectGrid session manager.

The ObjectGrid session manager can run in any Java 2 Platform, Enterprise Edition (J2EE) Version 1.3 or later environment. The session manager does not depend on WebSphere application programming interfaces, so various versions of WebSphere Application Server, WebSphere Extended Deployment, and third-party application servers can be supported.

The ObjectGrid session manager manages sessions for its associated applications. It can create and manage the life cycle HTTP sessions for the applications. Sessions invalidate based on a time out or explicit servlet or JavaServer Pages (JSP) call. Session listeners that are associated with the session or Web application can be invoked.

The ObjectGrid session manager can work in environments that do not support affinity, for example, through a load balancer tier that distributes requests to the application server tier.

How it works

The ObjectGrid session manager persists its sessions in an ObjectGrid instance. This instance can be a local instance on a single application server, or can be fully replicated, clustered, and partitioned across many application servers. With replication, clustering, and partitioning, you can provide HTTP session failover support for your application servers.

The ObjectGrid session manager introduces itself into the request path as a servlet filter. You can add this servlet filter to your Web application with tooling that comes with WebSphere Extended Deployment. You can also add the filters manually to the Web deployment descriptor in your applications.

The filter gets called before the target servlet or JavaServer Pages (JSP) file in the target application on the request path receives control. The filter intercepts the HTTPRequest and HTTPResponse objects and wraps them with its own implementation.

The filter implementation intercepts all HTTP session related calls that are made on the HTTPRequest and HTTPResponse objects. The ObjectGrid Session manager handles these requests by creating and maintaining sessions and their life cycles, including time out-based invalidations and listeners for session invalidations. The underlying J2EE server implementation for session management is not used.

When to use the ObjectGrid session manager

Consider using the ObjectGrid session manager in the following scenarios:
  • Your environment is in a classic migration scenario that consists of application servers that are at different versions of WebSphere Application Server or WebSphere Extended Deployment.
  • Your environment has deployments using application servers that are from different vendors. For example, you might be developing applications on an open source application server, but hosting the applications on WebSphere Application Server. Consider this scenario also when you are moving applications from staging phase to production phase. You can seamlessly migrate the application while all HTTP sessions are active and serviced.
  • Your environment requires session persistence with higher quality of service (QoS) levels and better session availability during server failover than the default session manager.
  • Your environment cannot guarantee session affinity, or affinity in your environment is controlled by a third-party load balancer that needs a customized affinity mechanism.
  • You need to offload the overhead of session management and storage to an external Java virtual machine (JVM).
  • You want session failover in multiple cell environments.

Sample topology

The most typical deployment of the ObjectGrid session manager is in a client server mode. The session manager is a client to a remote ObjectGrid server or server cluster that hosts sessions for the session manager, as illustrated in the following diagram.
Figure 1. Application server cluster using ObjectGrid HTTP session management
Client browser > HTTP requests sprayer > Application server tier > ObjectGrid server cluster
Concept topic    

Terms of Use | Feedback

Last updated: Oct 16, 2009 11:15:27 AM EDT
http://publib.boulder.ibm.com/infocenter/wxdinfo/v6r0/index.jsp?topic=/com.ibm.websphere.xd.doc/info/objectgrid/cobghttpsm.html