Managing performance and reliability in enterprise-grade Java applications often depends on how well we handle sessions, caching, and routing. In IBM WebSphere environments, three key components play distinct but interconnected roles: Stored Sessions, Dynamic Cache, and the IBM HTTP Server (IHS).
Let’s break down what each does, how they differ, and how they work together in clustered or high-availability deployments.
1. WebSphere Stored Session
Purpose:
Stored Sessions manage user-specific state during a browsing session — such as authentication, user preferences, or workflow progress.
Storage Options:
- In-Memory (default): Stored in the JVM heap. Fast but not shared between nodes.
- Database Persistence: Sessions saved to a shared database, ensuring continuity after failover.
- Memory-to-Memory Replication: Real-time replication of session data across cluster members.
- External Session Store: For cloud-native environments (e.g., Redis, eXtreme Scale).
When It Matters:
If one application server goes down, persistent or replicated session storage ensures users don’t lose their active sessions.
2. WebSphere Dynamic Cache (DynaCache)
Purpose:
Dynamic Cache (or DynaCache) improves performance by caching servlet fragments, JSPs, or frequently accessed data so that WebSphere doesn’t reprocess the same logic for every request.
Key Features:
- Can cache at multiple levels (page, fragment, or data).
- Uses Data Replication Service (DRS) to synchronize cached data between cluster nodes.
- Integrates with WebSphere eXtreme Scale for large distributed cache grids.
When It Matters:
Caching drastically reduces backend calls, making applications faster and more scalable — especially under heavy load.
3. IBM HTTP Server (IHS)
Purpose:
IHS acts as the front-end web gateway for WebSphere Application Server.
Core Functions:
- Handles HTTP/HTTPS requests and SSL/TLS termination.
- Routes application traffic to backend WebSphere cluster nodes using the WebSphere Plugin.
- Implements session affinity (sticky sessions) using the JSESSIONID cookie.
- Serves static content (HTML, JS, images) directly.
- Provides simple static caching, but not session or application-level caching.
When It Matters:
IHS helps balance load, offload SSL processing, and improve performance by routing requests efficiently across nodes.
How They Work Together
|
Component
|
Primary Role
|
Data Stored
|
Shared Across Cluster
|
Example
|
|
Stored Session
|
Maintains user state
|
User/session data
|
Yes (if DB or replicated)
|
Logged-in user info
|
|
Dynamic Cache
|
Improves app performance
|
Temporary cached data
|
Yes (if DRS enabled)
|
Cached search results
|
|
IHS
|
Routes and balances requests
|
HTTP requests
|
N/A
|
Forwards user requests to WAS
|
Architecture Diagram

Flow:
- A user request hits IHS → routed to one WebSphere node via plugin-cfg.xml.
- Sticky session ensures repeat requests go to the same node.
- WebSphere retrieves session data (stored/replicated).
- Dynamic Cache accelerates data retrieval from prior computations.
- If session or cache is unavailable, the backup database or cache grid serves it.
Summary
|
Feature
|
Scope
|
Persistence
|
Optimized For
|
|
Stored Session
|
User State
|
Configurable (memory, DB, DRS)
|
Reliability & continuity
|
|
Dynamic Cache
|
App Data
|
Volatile / Shared
|
Performance & scalability
|
|
IHS
|
Front-End Routing
|
N/A
|
Load balancing & SSL offload
|
Together, these three layers make IBM WebSphere a robust, scalable, and resilient middleware platform — balancing user session continuity, performance, and availability