Sunday June 21, 2009
GlassFish Clustering: Meaning and impact of configuring attributes of group-management-service element ?
Based on a query from one of our field colleagues, I added an FAQ entry on the meaning of the group-management-service element attributes and impact of changing the default values as this is not yet covered by our official documentation (it will be updated with this information soon).
These configurational attributes determine Shoal GMS's behavior with respect to Discovery and Health Monitoring of cluster instances in a GlassFish cluster. It is very useful and important to understand these underpinnings of GlassFish's runtime clustering engine.
Here's the FAQ entry :
http://wiki.glassfish.java.net/Wiki.jsp?page=FaqShoalGMSAttributesInDomainXMLPosted at 05:02PM Jun 21, 2009 by Shreedhar Ganapathy in GlassFish | Comments[0]
Tuesday February 10, 2009
Performance Monitor enters Sun's GlassFish offerings
Sun today announced an array of commercial offerings based around the successful open source GlassFish project's application server. As part of these offerings is an enterprise management enabler tool aptly called Enterprise Manager 
The Enterprise Manager is a collection of utilities designed to enhance your production deployment experience with Sun GlassFish Enterprise Server v2.1
The Enterprise Manager comprises of three components :
The Enterprise Manager is included when you purchase a support subscription for Sun GlassFish Enterprise Server v2.1. For more details on the Enterprise Manager look here. For more details on the Sun GlassFish Portfolio subscription plans, look here.
Of the above Enterprise Manager components, the Performance Advisor, and SNMP Monitoring support components are covered in a few other blogs. In this entry, I'll introduce you to the Performance Monitor.
The Performance Monitor is a closed source product from Sun built on top of VisualVM 1.1, and Netbeans 6.5 Platform. It is a monitoring tool that provides dynamic visualization of GlassFish Server as it runs your applications.
Some of its key features include :
The Performance Monitor is designed with easy-to-use features including:
Here are some screenshots for your reference :
A collective view of a few web tier monitoring data:
A view of the Http Service graphs :
A View of the Node Agent Page with status of instances the Node Agent is managing:
The Performance Monitor tool is immensely helpful in diagnosing problems before they turn into production bottlenecks and show stoppers. We hope that this offering along with GlassFish support subscription will help our customers be successful with their GlassFish deployments.
Posted at 03:21PM Feb 10, 2009 by Shreedhar Ganapathy in GlassFish | Comments[0]
Friday October 24, 2008
New Shoal Update : Shoal 1.1 bits updated to promoted build 10212008
Shoal 1.1 bits on the Shoal download site have been updated to reflect the promoted build dated 10/21/2008. We are getting close to releasing Shoal 1.1 sometime in late November.
Get the latest promoted build here.
We have also added a buildable Source and Javadocs zip distribution corresponding to this promoted build on the download page based on a community user request.
A number of fixes went into Shoal during this time (from the prior promoted build of 08202008). Read the announcement here for changes that went in.
Project Shoal benefited not only from the Shoal user community feedback but also the intensive testing that is ongoing for the upcoming Sailfin v1 release in December. As a Telco appserver, Sailfin provides the ideal testing ground for intensive clustering features. Truly where the rubber hits the road.
Thanks very much to Sheetal, Joseph Fialli, Mohamed Abdelaziz, Bongjae Chang, Sailfin and GlassFish Quality Engineers Kazem, Sony and Varun, and most of all the Shoal community members.
As always, we value your feedback so please do continue sending us feedback to help improve Shoal and to address your needs with Shoal clustering.
Posted at 05:10PM Oct 24, 2008 by Shreedhar Ganapathy in Shoal | Comments[0]
Tuesday October 21, 2008
Economic woes resulting in slashed tech budgets? Sun's GlassFish+MySQL makes perfect sense
With signs of a global economic turmoil underway, the financial system is under severe stress with credits vanishing, and Government Departments, small and medium businesses, and large corporations are faced with potential budget cuts for technology spending. Case in point : http://www.msnbc.msn.com/id/27103082/
With Sun's open source "stack" and cost-effective support subscriptions, affected sectors of the economy can take advantage of standards based, high quality, open source software with the low cost support services from Sun. This is a good time to consider moving away from expensive proprietary software stacks to Sun's open source software.
Take the case of Sun's commercially supported GlassFish + MySQL offering, both rock solid products that come with features only available in high cost closed-source products. This offering provides you the opportunity to seamlessly move from expensive licenses to an annual support subscription based offering that will reduce your cost of ownership. For example, Unlimited deployment of GlassFish + MySQL starts at $65,000. GlassFish + MySQL constitutes a very compelling offering that will help you justify the move both on features and costs.
Contact Sun to find out how you can save significantly with this offering.
For more on the value proposition, read Arun's blog entry here.
Posted at 02:49PM Oct 21, 2008 by Shreedhar Ganapathy in GlassFish | Comments[0]
Tuesday August 26, 2008
Shoal 1.1 bits updated for a new promoted build
The Shoal team has been busy addressing the needs of major projects such as Sailfin for a while now. It had been a while since we updated our promoted build for download with the latest and greatest fixes.
We have now promoted a new build for Shoal 1.1 and download bits are available here : https://shoal.dev.java.net/downloadsindex.html
The announcement has more details on what went into this promoted build : 08202008 Promoted Build Announcement
We would welcome your feedback, issue reports and enhancement requests to make Shoal more useful for you.
Do send us your feedback at the Shoal user mailing list.
Posted at 03:02PM Aug 26, 2008 by Shreedhar Ganapathy in Shoal | Comments[0]
Tuesday June 03, 2008
Eclipse IDE GlassFish Plugin : Give us your feedback
Did you know that GlassFish community provides an Eclipse plugin for developers using Eclipse as their primary development tool ?
The plugin has been developed for a while providing basic integration with GlassFish. We now would like to make this integration more effective and useful to you to enhance your productivity when using GlassFish.
We would like to hear from developers on your experience (both positive and constructive) so that we can prioritize on making improvements. Our goal is to make life a lot easier for developers when using Eclipse with GlassFish. Community feedback is the best way we can learn how to make improvements. Of course, we also very much welcome any contributions from you to make improvements.
The plugin is available at the GlassFish Plugins Java.net Project Page.
Please send us your feedback and/or contributions at either the GlassFish users mailing list or at the GlassFish Plugins users mailing list.
Posted at 12:03PM Jun 03, 2008 by Shreedhar Ganapathy in NetBeans, Other IDEs | Comments[2]
Friday May 09, 2008
JavaOne2008: Shoal Mini Talk at Java.Net Community Corner
At the JavaOne pavilion, Java.net had set up a community corner where mini talks were given by various interested project leads. I gave a short talk on Introducing Shoal clustering framework.
The audience was *very* small but I had quality questions from one very interested participant who wanted to use Shoal as a Distributed Test Harness engine. Very unique use case I thought and yes, Shoal would fit that bill.
Here's the short slide deck of the mini talk: Shoal Mini Talk JavaOne 2008
Posted at 04:50PM May 09, 2008 by Shreedhar Ganapathy in Shoal | Comments[0]
JavaOne 08: JavaU Bonus course on GlassFish Application Server
As part of JavaU courses offered this JavaOne, a GlassFish Application Server bonus training course was offered for free as part of a multi course deal.
Many attended this course on Monday, May 05, 08. Arun Gupta and I presented at this course. We are pleasantly surprised by the turn out of around 180 given that it was in the evening (6 - 9 pm), 3 hours long, and JavaOne had not yet started!
That was surely a boost of positive energy for me.
The most interesting part of the course for me was the number of questions from the greatly interactive audience right from the get go. We answered most of the questions, even picked up an NB issue from an audience member in the web services area, and the feedback we received was mostly that the course was very helpful for the audience to understand how the product features and capabilities stacked up with their experience with other app servers such as WebLogic and JBoss.
We finished around 9.45 pm. 
Since the printed slide deck was only a portion of the total at the time it went to print, I promised the audience that I would make this available through my blog.
So here it is. JavaU Bonus Course on GlassFish Application Server Java One 2008
So for those who find the material useful, please download GlassFish and let us know what you think. Send us your comments and questions through the GlassFish User mailing list.
Posted at 04:38PM May 09, 2008 by Shreedhar Ganapathy in General | Comments[1]
Friday April 18, 2008
New Shoal Clustering Download Page
With a view to helping our users choose the right download, we have organized the Shoal downloads page on the lines of the GlassFish download page. The new download page is located here : https://shoal.dev.java.net/downloadsindex.html
This should make it easier for users to find Shoal bits and use them in their clustering applications.We are seeing increasing interest from users with different types of questions in the Shoal user mailing list ranging from newbie questions to very advanced ones. Keep'em coming folks.
We will be posting new promoted downloads and releases through this download page. Let us know if you need specific improvements to be made.
Posted at 12:23PM Apr 18, 2008 by Shreedhar Ganapathy in Shoal | Comments[0]
Wednesday March 12, 2008
GlassFish High Availability Session at Sun Tech Days Hyderabad
At the recent Sun Tech Days event at Hyderabad, I gave a talk covering GlassFish's High Availability features, particularly the In-Memory Replication support, as part of GlassFish Day (Feb 29th).
I had the privilege of talking to a full house of around 500 people. The session covered introduction to HA, how easy it is to create, and configure a cluster of instances, and to configure the application for enabling in-memory replication based availability. The session elicited very good questions ranging from the basics to involved ones in the area of sizing the heap to sticky sessions support. I spent an hour after the session outside the hall answering questions posed by interested folks from several companies.
Many attendees wanted to get a copy of the slide deck. Look here for it.
Needless to say, we would very much appreciate any feedback or questions on GlassFish's High Availability. Please send these to us at the GlassFish user mailing alias.
Posted at 05:00PM Mar 12, 2008 by Shreedhar Ganapathy in GlassFish | Comments[2]
Tuesday March 11, 2008
Notes from GlassFish Booth at Sun Tech Days, Hyderabad '08
I am back after a two week visit to India. I took the week off last week to be with my folks and to unwind and recharge in my home city, Mumbai.
The week before that was an incredible one for me as I saw the hi tech boom in India first hand. The swelling and enthusiastic crowds at the Sun Tech Days event at Hyderabad on Feb 27, 28 and 29 was very thrilling to experience to say the least. The event was highly successful in attracting budding youngsters and experienced professionals alike. I am told that the content of the event was very fulfilling for attendees.
Some notes of interest :
Many of the professionals working with other application servers said the Administration, Clustering, High Availability, Loadbalancer support, Webservices support, migration support, and IDE integration would motivate them to try out or switch to GlassFish.
Looking forward to hearing from these new GlassFish users at our user community mailing list.
Posted at 06:32PM Mar 11, 2008 by Shreedhar Ganapathy in GlassFish | Comments[0]
Thursday January 17, 2008
Sailfin drives a new feature in Shoal: JoinedAndReadyNotificationSignal
As usage of Shoal's clustering framework increases across products, new feature requests are coming in to enrich Shoal's offerings for employing applications.
The Sailfin project is building a Telecommunications Application Server with contributions from Ericsson and Sun. One of the parts of Sailfin is a Java based load balancer called ConvergedLoadBalancer (CLB). The CLB load balances both Http and SIP based requests. The CLB is unique in that it is a component of the Sailfin appserver instance. Thus, any instance in the cluster can be configured as a load balancer. Such an instance can be part of a Front End LB Cluster performing load balancing of requests on a separate application server cluster tier or it can be part of a Self LoadBalancing Cluster wherein one or more instances of the application server cluster also perform the role of a load balancer while also serving requests. The CLB component and other Sailfin components employ Shoal for cluster events, messaging and health monitoring.
The CLB (as with any load balancer) needs to know when instances of a cluster have not only joined a cluster but also when the instances are ready serve requests. Shoal was up until now providing a JoinNotificationSignal which would be triggered as soon as each instance in the cluster used Shoal's GMS to join the cluster. This was sufficient for many use cases but for the LB it needed to know not just that but also when the instance had completed startup operations. This requirement helped us design a new notification called JoinedAndReadyNotificationSignal that would be disseminated to the cluster members for each instance completing startup and reporting such a completion to the group.
Shoal's GroupManagementService provides a new API called reportJoinAndReadyState() which the employing parent application can now call when the parent application has completed its own initialization and startup indicating a point where operational activities on the instance can now start.
Sheetal and I recently committed the code supporting this new feature.
This feature can be particularly useful while building Compute Grid and Cloud Computing type services using Shoal wherein each Grid node can now report when they are ready to act as nodes in the grid. BTW Shoal's concept of a GroupLeader ties in well with the Grid's Compute Task Manager abstraction and is a good infrastructural fit.
Do please share your feedback with us at users alias about what you would like to see added in Shoal to serve your clustering and fault tolerance needs. Shoal's goal of clustering goes much beyond the realm of Data Grids (which we are looking into building ) with a wider spread in terms of building fault tolerance solutions.
Posted at 08:30AM Jan 17, 2008 by Shreedhar Ganapathy in Shoal | Comments[9]
Friday January 11, 2008
GlassFish Hidden Nugget: Automatic Distributed Transaction Recovery Service
GlassFish v2 and v2 ur1 releases (and later) have support for transaction recovery (both manual and automated) in the sense that incomplete transactions at the time of an instance failure can be committed either manually or automatically.
Part of the new feature set in the cluster profile is a little known feature called Automated Distributed Transaction Recovery that comes out of Project Shoal's support for it.
Essentially, Automatic Distributed Transaction Recovery in GlassFish works as follows :
Consider the following :
Now, instance1 crashes
The Transaction Service component in one of the surviving members, instance2 and instance3, gets a notification signal that a failure recovery operation needs to be performed for a instance1. This signal from Shoal is called FailureRecoverySignal.
This notification signal comes to the Transaction Service component in only one particular selected instance as a result of a selection algorithm run in Shoal's GMS component that takes advantage of the identically ordered cluster view provided to it by the underlying group communication provider (default provider is Jxta).
The Transaction Service component in this instance, say instance2, would now go into its autorecovery block. It starts by waiting for a designated time (default to 60 seconds) to allow for the failed instance1 to start back up.
If instance1 is starting up, its own Transaction Service component would do self recovery to complete phase 1 transactions.
In instance2, after the wait timeout occurs, the transaction service component would now see if instance1 is part of the group view and if not try to acquire a lock for the failed instance's transaction logs through Shoal's FailureRecoverySignal and if successful (indicating that the failed instance did not startup), acquire the transaction log and start recovery of transactions i.e complete the commit operations for the pre-commit transactions. If the acquisition of the lock fails, then it gives up, and checks that the failed instance did startup through Shoal's group view and logs this fact.
If, during the recovery operations being performed by instance2, the failed instance1 starts up, the transaction service component in this instance would first check with Shoal if a recovery operation is in progress for its resources by any other instance in the group and if yes, it waits for the recovery operations to be completed and then completes startup. This ability to check for such recovery operations in progress is through a related Shoal feature called Failure Fencing[1]. If there are no recovery operations in progress, then the startup proceeds with a self recovery which recovers any incomplete transactions in instance1's logs.
Now during recovery of instance1's transaction logs, instance2 fails, then the fact that this instance was in the process of recovering for instance1 is known to the remaining members of the group (i.e. instance3) through the failure fencing recovery state recorded in Shoal's Distributed State Cache. As a result, when instance3's transaction service gets the failure recovery signal, not only does it get it for instance2's failure, but also for instance1. This facility covers for cases where cascading failures or multiple failures occur.
Note that, for the automatic distrbuted transaction recovery to work, access to the transaction logs for all instances in the cluster for
purposes of auto recovery requires that the logs be mounted on a shared/mirrored disk[2].
[1] More on Shoal's Automated Delegated Recovery Selection
[2] Distributed Transaction Recovery
Posted at 02:16PM Jan 11, 2008 by Shreedhar Ganapathy in GlassFish | Comments[0]
Saturday December 08, 2007
Excellent Article on Shoal by non-Sun authors
Just came across this excellent introductory article on Shoal clustering framework on Java.net which I believe is to be published on upcoming Tuesday going by the date posted (12/11/2007).
Noticeably, this is an article by authors that we, at the Shoal community, have not yet corresponded with. This is great news as it lets us know that there is a quiet adoption of this framework. The article lucidly explains salient aspects of Shoal's clustering approach and how easy it is to integrate it into your application/infrastructure.
We hope this will make it even easier for users to adopt this technology.
Do send us your questions at the Shoal users mailing list.
Posted at 01:53PM Dec 08, 2007 by Shreedhar Ganapathy in Shoal | Comments[1]
Wednesday December 05, 2007
Shoal Whitepaper on Scalable Dynamic Clustering
Its been a while since I have blogged. I have been rather busy managing the GlassFish v2 ur1 release which is round the corner around Dec 13/14.
Meanwhile, Mohamed Abdelaziz and I put together a Whitepaper that gives details on the scalability and dynamic clustering aspects of Shoal. The paper provides a good overview of the self composing nature of Shoal and dives deeper into the set of protocols that provide the basis for building fault tolerant infrastructures.
Shoal is coming along very well in various spaces going by the increasing hits to our website from Telco and Financial majors. We are continuously improving Shoal into a robust component based on feedback from our user community. So keep'em coming to the users mailing list.
Posted at 06:59PM Dec 05, 2007 by Shreedhar Ganapathy in Shoal | Comments[0]
Today's Page Hits: 169