Ehcache 2.2 Supports Terabyte Cache and LDAP Authentication
The latest version of open source caching framework Ehcache supports terabyte cache and Java Authentication and Authorization Service (JAAS) with LDAP integration. Terracotta development team announced last week the general availability of Ehcache 2.2 version as part of Terracotta 3.3 release. The new version also includes a management console that provides visibility and control of run-time caching environment, for developers and operators.
The caching feature uses a new storage strategy that supports caches with a large number of entries and nodes. This is an optional mode that can be configured per cache and enabled with a new XML attribute of the <terracotta> subtag called storageStrategy. LDAP based authentication is used for the access control to Developer and Operator management consoles. This security feature requires JDK 1.6 version and using an earlier version of Java will not prevent Terracotta servers from running but the security will not be enabled.
Other new features included in the latest version of Ehcache framework are:
- Monitoring: This includes the management console for distributed caches with new control panels for Ehcache, Quartz Scheduler and Web Sessions, for application visibility and control. There is also a new consolidated view of cluster-wide events to allow the Operations team members to identify problem nodes in the cluster as well as diagnose errors and performance problems. The event monitoring is delivered via an Events Console (available in both Operator and Developer consoles as well as via a JMX API). Another operator console feature facilitates dynamic changes of cluster server topology by forcing a live Terracotta server configuration reload.
- Multi-Data Center Support: There is a customizable support for cache replication between clusters in different geographic areas which allows for disaster recovery (DR) across the Wide Area Networks (WANs).
- Common Runtime Library: This new run-time library reduces memory usage and network connections and provides new common developer constructs. It also exposes an API that developers can use for inter-process coordination tasks across multiple machines.
- New Toolkit API: The client libraries have been refactored to use a common shared jar (called terracotta-toolkit-1.0-runtime-1.0.0.jar) for clustering the core use cases. This reduces number of L1-L2 socket connections and heap usage from applications that use multiple client types (such as Ehcache, Sessions etc) for caching purposes. It is also used for constructs that can be used within user applications that include concurrent maps, locks, counters, queues, an evictor etc.