JXTA-powered clustering for GlassFish
Is JXTA the secret sauce in some of the coolest Java stuff? We keep up with developments from the JXTA community and its various projects, but it's deceptively easy to focus just on the library and not on what people are doing with it. To wit, two of the projects on the page today are JXTA-powered, but don't make a big point of it -- they're content to focus on the value they provide rather than what bits they use to do so.
And maybe that's as it should be, but it's worth taking stock of the fact that lots of people are using JXTA for a variety of projects, even while a lot of developers have probably overlooked it since its big launch a number of years ago. Like Jini, it has loyal adherents who talk it up, and better yet, put it to use to provide effective self-networking.
Shoal is an open source, Java-based generic clustering framework. It can be used in your applications to add clustering functionalities like load balancing, fault tolerance, or both. Applications using Shoal can share data, communicate via messages with other cluster nodes across the network, and notify of relevant events like the joining, shutdown, and failure of a node or group of nodes. You can take appropriate measures and perform monitoring tasks when these events occur; Shoal forwards a signal to your code to track these notifications.
Shoal is the clustering framework used by the Glassfish project to implement its application server clustering. One of the benefits to your application is that Shoal abstracts away network details and the network communication API. Under the hood, the default group communication provider uses JXTA for peer-to-peer reliability and scalability.
Join Diego and Juan Pedro as they show how to directly access the Shoal API to put clustering to work in your own application, whether or not you're using GlassFish or even EE. And as your nodes come online and work with each other, enjoy JXTA doing all the peering work for you.
JXTA also powers the networked concept-sharing features of theAieon-F project, which tops the Java Todaysection. This meta-information framework project has just announced its emergence from the incubator. "Aieon-F is a meta-information framework. Basically it defines units of information called concepts, or aieons when they point to something tangible, such as web links, documents, mp3 files and so on. Aieons can also define relationships with other aieons, and this way a knowledge base can be constructed that ties together unrelated information." Saight, a social bookmarking application based on Aieon-F, is also available for download as a beta version.
The OpenJDK project recently posted minutes from the August 23, 2007 meeting, in which the group discussed theOpenJDK Community TCK License (PDF, 128 KB), which had been announced two weeks prior. "The meeting was essentially a long question-and-answer session, with no agreed resolutions, so these minutes are structured in a Q&A format in the following sections: License-application process, License eligibility, Running the TCK, Certifying a platform implementation, Confidentiality, Miscellaneous."
Build processes in Java haven't evolved much since the introduction of Ant or Maven. With the ability to use scripting languages like Groovy and JRuby on the JVM, the power of a full language can be brought to bear on the build process. In the ONJava article Introducing Raven: An Elegant Build for Java, Matthieu Riou discusses Raven, a build system for Java that uses JRuby.
In today's Weblogs, Simon