Red Hat Packages Up Open Source Application Server
by Timothy Prickett Morgan
While operating systems may no longer be the absolute control points that they used to be in the server market, they are still a decent foundation on which to build a business. But a foundation is not a house, and that is why the commercial Linux distributors have focused on selling services and support and moving up the software stack to peddle all kinds of middleware. Red Hat threw its hat in the middleware ring last week as it announced an integrated open source application server to sell with its Enterprise Linux 3 platform.
Commercial application servers from IBM, BEA Systems, or Oracle are not really a single program, but an amalgam of many different programs (some closed source, some open source) that do a lot of different work to link back end systems to front end Web clients. The same holds true (excepting the closed source part) with the new Red Hat Application Server, which was announced at the LinuxWorld trade show in San Francisco last week. As you might expect, the Red Hat Application Server is based on open source software and is only supported on Red Hat's own Linux server variants.
Specifically, the Red hat product is heavily based on technologies developed by the Apache Software Foundation and the ObjectWeb Consortium. The former is best known for its eponymous open source Web server, which is by far the most deployed Web server on the Internet, as well as the Tomcat Java Server Pages extensions to Apache. (Jakarta was the name of the project that developed the Tomcat server.) The latter organization was formed in 2002 by French server maker Bull, telecommunications giant France Telecom, and l'Institut National de Recherche en Informatique et en Automatique, the French national institute for research in computer science, and its Java Open Application Server (JOnAS) is starting to get traction in the market.
ObjectWeb is a Java 2 Enterprise Edition licensee, and the JOnAS and Tomcat servers are the core of the product, with JOnAS handling Enterprise JavaBeans and Tomcat handling JSPs and servlets. ObjectWeb has also developed JORAM, which is an open source alternative to IBM's WebSphere MQ and Microsoft 's MQM middleware; Enhydra, which is a Java/XML server; and JOTM, a distributed transaction manager. Red Hat Application Server also implements the SOAP protocol developed by Apache under the AXIS project, and makes use of the JakartaServer Management Extensions (JMX) system management features developed for Tomcat to control both JOnAS and Tomcat. The application server also offers clustering across Linux nodes for failover and load balancing, which is based on Red Hat Cluster Suite. (Cluster Suite is based on the open source Piranha project that was supposed to embed clustering into Linux 2.6 but which Red Hat sells as a separate item for $499 per server.) Red Hat Application Server is available for 32-bit Intel Xeon and AMD Opteron environments as well as for 64-bit Itanium and 64-bit Power platforms. Presumably, 64-bit Xeon and Opteron support is coming soon.
While the Microsoft, IBM, and Sun Microsystems middleware stacks are arguably richer and more tightly woven into their respective platforms, Red Hat Application Server, at $999 per year for a basic support contract and software license, is orders of magnitude less expensive and is suitable for small and medium customers who do not need the level of sophistication that Microsoft, IBM, Sun, and others are peddling in their middleware stacks.
At the launch last week, Red Hat said that it has tested its application server on the major commercial Java Virtual Machines, including BEA's Weblogic JRockit, IBM's JDK, and Sun's JDK. Red Hat is in the middle of testing the software for Oracle 9i and 10g, IBM DB2, and Sybase ASE databases. The company added that it was working with BEA to weave in support for that company's Beehive service-oriented architecture (SOA) programmer extensions to Java application servers, which is it creating under an open source model through Apache. Beehive is yet more middleware under the control of programmers that sits between Web and Java applications and their respective Web and Java application servers, adding another layer of abstraction that will supposedly make such applications more portable across different Web and Java application servers.
(You can stop laughing now.)
This sounds like a great idea, but you have a better chance of making horses dance with rattlesnakes than getting all of the big application server providers to adopt such a standard as Beehive.