News
- Jun 4, 2006
- H2O 2.1 released! Several bug fixes and improvements, along with new security features. Download today!
- Mar 19, 2006
- H2O 2.0 is released! Plenty of new features, including: distributed events, JXTA transport, pluglet hierarchies, logging and debugging support, to name only a few.
- All news:
- click
Project summary
H2O is a middleware platform for building and deploying distributed applications. H2O is Java-based, secure, scalable, stateless, and lightweight. Conceptually, H2O is a distributed component framework. What makes it stand out among other component frameworks, such as J2EE or Globus GTK, is that it removes the static binding between service deployer and resource provider. That is, H2O allows not merely container owners but any authorized third parties or clients themselves to deploy services into the container. Common usage scenario involves clients deploying computational services and using them afterwards, thus availing of the raw computational power shared by the container owner. Hence, resource sharing and grid computing systems can be naturally formed using H2O.
H2O features simple APIs for remote component deployment and management, and inter-component communication. H2O components can communicate via remote method invocations (both synchronous and asynchronous), and through a publisher-subscriber distributed event model. The communication layer offers a selection of messaging protocols (including JRMP, SOAP, RPC) and customizable transport stacks (SSL, compressed sockets, JXTA sockets, single-port tunneling, in-process sockets, all of which can be mixed in many combinations). The protocol-related communication aspects are cleanly separated from the application code, making development of secure, distributed applications simple and efficient.
H2O has been designed to support wide range of distributed programming paradigms, including self-organizing applications, widely distributed applications, massively parallel applications, task farms, component composition frameworks, and more. H2O is focused on security, ensuring the safety of shared resources and that of users data via the well-established technologies like SSL, JSSE, JAAS and the Java Platform Security.
License
H2O is distributed under the terms of the MPL/LGPL/GPL tri-license.
Acknowledgments
H2O is an open-source research project of Distributed Computing Laboratory, Dept. of Math and Computer Science, Emory University. The research is supported in part by U.S. DoE grant DE-FG02-02ER25537 and NSF grant ACI-0220183.