- J2EE virtualization support.
- Leverages WebSphere 6.0 High Availability Manager
- Batch processing support for J2EE applications.
- Support for mixed batch/online workloads in a virtualized environment.
- HTTP flow control and throttling for 3rd party application servers.
- Improvements in the Partition Facility.
- A new standalone caching infrastructure, ObjectGrid.
- Application Versioning.
- Visualization improvements.
XD can virtualize the resources used by applications deployed on XD application servers. This allows administrators to consolidate multiple applications previously deployed on dedicated hardware on to a shared set of machines. XD can make sure that the applications still meet business goals specified by the application servers by dynamically varying the amount of physical resources allocated to an application.
Leverages HAManager
XD takes advantage of the WebSphere HAManager technology to provide a system with no single point of failure and rapid recovery times from failures when they occur without the need for external HA software, SANs or IP failover. The HAManager was first shipped on WebSphere 6.0 and offers the high availability on commodity hardware.
ObjectGrid
This is a new advanced grid based infrastructure for caching application data. It can run with or without a WebSphere application server and in the standalone case is just a couple of jars with a small footprint and unzip install. It is designed from the ground up as a transactional cache and the APIs reflect this. All aspects of the cache are pluggable (Loaders, Evictors, replication), which makes it extremely flexible. V6.0 of ObjectGrid offers peer to peer invalidatation/data push out of the box using the WebSphere RMM messaging technology or any pub/sub message transport of the customers choice, JMS or not. It can be configured using an XML file, Java APIs or your IoC container of choice such as Spring.
Batch Applications
XD includes APIs allowing batch applications to be written using container managed checkpointing. XD can start/stop these jobs on demand as resource/business goals allow.
Mixed Batch/Online workload
XD already offered virtualization for HTTP online workloads. Administrators could give applications and web pages within an application a service level agreement when it was deployed. Applications could also be prioritised relative to each other. XD would then allocate as many machines as necessary to optimally meet those goals and shift resources around to ensure higher priority pages/applications meet their goals. This now allows batch workloads to run continually and be backed off if online workloads spike.
Application Versioning
XD now supports many common application upgrade patterns directly and allows multiple versions of a single application to be deployed concurrently and an administrator can then specify precisely how incoming traffic is sprayed to the set of applications version which are online.
HTTP flow control/service level agreements for 3rd party application servers.
The OnDemand Router (ODR), a high performance HTTP router, can be placed in front of a cluster of application servers. These application servers can be competitive application servers, including open source or Microsoft based. The administrator can specify maximum response times for particular URIs and the ODR will delay lower priority HTTP requests to ensure higher priority requests do not get starved by lower priority work. Multiple ODRs can be used for more throughput and fault tolerance as the ODR is built on WebSpheres high availability technology (HAManager).
Visualization Improvements
XD offers web based visualization. It allows almost any aspect of the system to be monitored and charted in real time by administrators.
Partition Facility
There are several small improvements in the partition facility and customers are already leveraging the partition facility to build highly available applications with almost linear horizontal scaling. The combination of the partition facility, ObjectGrid and the WorkManager/commonj APIs provides the capability to build advanced applications on XD for the demanding environments.
For more information including programming manuals for the partition facility and ObjectGrid, visit the XD web site at http://www-306.ibm.com/software/webservers/appserv/extend/.