EJB cache settings
Configure and manage the cache for a specific EJB container. To avoid errors from attempting to overload the cache, determine the cache absolute limit. Multiply the number of enterprise beans active in any given transaction by the total number of concurrent transactions expected. Then, add the number of active session bean instances. This value is the limit that the cache will hold.
From the admin console, click...
Servers > Server Types > WebSphere application servers > server > EJB Container Settings > EJB cache settings.
Cleanup interval
The interval at which the container attempts to remove unused items from the cache in order to reduce the total number of items to the value of the cache size. This setting applies to the cache only.
The cache manager tries to maintain some unallocated entries that can be allocated quickly as needed. A background thread attempts to free some entries while maintaining some unallocated entries. If the thread runs while the application server is idle, when the application server needs to allocate new cache entries, it does not pay the performance cost of removing entries from the cache. In general, increase this parameter as the cache size increases.Timeouts are specified according to the transaction type:
- Container-managed transactions: The bean provider configures the timeout attribute in the deployment desecriptor.
- Bean-managed transaction: An application calls the UserTransaction.setTransactionTimeout method in the codes.
Information Value Data type Integer Units Milliseconds Range 0 to 2 147 483 647 Default 3000
Cache size
Number of buckets in the active instance list within the EJB container.
A bucket can contain more than one active enterprise bean instance, but performance is maximized if each bucket in the table has a minimum number of instances assigned to it. When the number of active instances within the container exceeds the number of buckets, that is, the cache size, the container periodically attempts to reduce the number of active instances in the table by passivating some of the active instances. For the best balance of performance and memory, set this value to the maximum number of active instances expected during a typical workload.
Information Value Data type Integer Units Buckets in the hash table Range Greater than 0. The container selects the next largest prime number equal to or greater than the specified value. Default 2053
Related:
EJB containers Manage EJB containers Tune the application serving environment Tune EJB cache with trace service EJB container settings