By Shreedhar Ganapathy on Feb 28, 2011
As part of the tumultuous release of GlassFish 3.1 today which comes with clustering, centralized administration, high availability, improved automated delegated transaction recovery and a host of other features on top of the Java EE 6 platform, I am delighted to announce the release of Shoal 1.5.29 - the latest version of the Runtime Dynamic Clustering Framework library that is the underlying runtime clustering engine for GlassFish 3.1.
GMS is employed by many GlassFish modules for group communications and group lifecycle event notifications. GlassFish modules that use GMS include the HA (in-memory replication) module, the transaction service module, the IIOP Failover Loadbalancer, and EJB Timer Service (for timer migrations).
The In-memory Replication module (also a part of Project Shoal ) is a caching backing store module built on top of Shoal GMS. The replication module is used in GlassFish for HTTPSession, EJB Stateful Session Beans state replication, and Single Sign-On state replication, and in addition, is also employed by Project Metro Web Services for making Reliable Messaging and Secure Conversations highly available in GlassFish 3.1 release.
In this Shoal GMS release, we have a major change incorporated and that is the default transport provider for Shoal has changed from JXTA to Grizzly - specifically this release uses Grizzly version 1.9.28 as the transport provider. Grizzly gives us better performance with its NIO based transport - GlassFish 3.1 HA is about 34% improved over GlassFish 2.x in our internal benchmarks partly due to the move to use Grizzly as the transport under GMS with the HA module using GMS messaging APIs for its replication logic. Moreover, the developers of Grizzly are co-located with and part of the GlassFish team allowing for faster support within the team. The JXTA 2.5 transport is still available via a source code build, however, since it is not tested as part of the extensive GlassFish 3.1 HA and GMS testing, it is not included in the pre-built shoal-gms jar.
Additional features in this release include a new notification of the Master Change Event when the group master changes to another member when an existing group master fails or is shut down administratively. Another new feature is the REJOIN sub event as part of the JoinNotificationSignal and JoinedAndReadyNotificationSignal to symbolize a use case where a member failed and restarted much before GMS's failure detection algo confirmed the failure - in such cases, a failure notification of the restarted member is confusing and hence a REJOIN sub event is sent in as part of the member's JoinNotificationSignal and JoinedAndReadyNotificationSignal.
We hope and look forward to the community to continue giving its valuable feedback for improvements in the Shoal modules - Please download Shoal as a library for use in your projects and give us your valuable feedback and RFEs for improvements. We welcome your feedback at users AT shoal.dev.java.net
You can download Shoal 1.5.29 library from here : http://shoal.java.net/downloadsindex.html