Bindings, Platforms, and Innovation
This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.
Tracking change and innovation in the enterprise software development community
Posted by Srini Penchikala on Dec 03, 2007 10:30 AM
Apache Tomcat is the most used application server by the Java community, according to a recent study conducted by BZ Research. The study found that Tomcat is used by 64 percent of corporate Java developers. With its support for clustering, session replication, and JMX based server monitoring and management, Tomcat container has gained more popularity and support by the developers and system administrators, compared to other application servers. IBM WebSphere and RedHat JBoss application servers, which came second and third in the research study.
Alex Handy wrote about this trend in an article in Software Development Times magazine saying that Java developers are looking for simplicity when it comes to choosing a J2EE container to host their applications on.
Mark Brewer at Covalent, an open source support company, said that Tomcat's success came about with the developers starting out with a stand-alone Tomcat server on their desktop and promoting their web applications to higher environments where WebSphere or JBoss application servers are used to host the applications. Since both of these servers bundle Tomcat as the servlet container, much of the code developers tested out in the local Tomcat server could be moved to the production environment without any changes in the code or configuration files. Another Java EE 5 compliant application server Apache Geronimo also uses Tomcat as its servlet container.
The sweet spot for Tomcat is where most of the enterprise applications don't really need the J2EE components such as EJBs, Java Messaging (JMS), or distributed transactions (XA) offered by a full-blown commercial J2EE application server. All they really need is a Java 5-compliant Web container with clustering support. Tomcat development team introduced clustering and session replication features in version 5.0 back in 2004, which are continued in the latest version (6.0). They have also enhanced the server monitoring support based on JMX technology. With clustering in the mix, many of the companies including financial organizations such as Morgan Stanley are moving their Java application portfolios to Tomcat platform. Terracotta, the vc-backed open source distributed clustering solution also offers out of the box session clustering for Tomcat.
At the recent QCon conference track on Architectures you've always wondered about, most of the speakers indicated that they are not using EJBs or XA transactions when architecting their enterprise applications.
Michael Goulde at Forrester Research group said that Tomcat is probably the third most used open source component, after the Apache Web server and MySQL database; he also said that it's not just Web developers who are interested in using Tomcat but SOA developers are also showing the interest. The integration of SOA tools such as ActiveMQ and Apache CXF with Tomcat container makes them good candidates to consider in an enterprise SOA stack.
Tomcat version 6 has introduced some new features:
Tomcat 6 supports Servlet 2.5 and JSP 2.1 specifications and is available under Apache License Version 2.0. The developers can download the latest version 6.0.14 as well as subscribe for tomcat-users mailing list to participate in the user discussions.
BEA WebLogic, Oracle Application Server, Sun Java Enterprise Server, Apache Geronimo, and SAP NetWeaver are the other application servers that were included in BZ Research study.
Download the Free Adobe® Flex® Builder 3 Trial
Adobe® Rich Internet Application Project Portal
5 Ways to Ensure Application Performance
Boy... it seems that Jetty was pushed out of the picture totally.
>> Apache Tomcat is the most used application server Tomcat isn't an application server.
>> Apache Tomcat is the most used application server
Tomcat isn't an application server.
Why not?
James
Iona
Open Source Integration
My thought exactly. Netcraft clocks in Jetty now at over 80% of Tomcat in popularity. (194k versus 162k) Some time that little wonder got some more love.
Or, if not, why is that a problem?
>> Apache Tomcat is the most used application server
Tomcat isn't an application server.
Why not?
I don't know what the exact meaning of application server is but I see all products claiming themselves application server have both web container and EJB container. Tomcat only has web container.
I wouldn't hesitate to call Tomcat an application server, personally: I don't see EJB as a pre-requisite. I mightn't call it a "J2EE Server", since that tends to imply "J2EE Certified", which, AFAIK, requires EJB support.
Although this doesn't surprise me, it seems most developers use Tomcat simply because they haven't bothered to try out any of the alternatives. Granted, Tomcat is dead simple to get running, but I decided to try Jetty too. I have to say Jetty wins hands down in a development environment because of its hot-reloading features, simpler configuration and better integration with IDEs, Maven, etc.
Thebreakdown that Johannes gave was for .com domains. Tomcat has a bit more market share of global domains, but Jetty has around 60% of the market share of Tomcat on netcraft: http://survey.netcraft.com/Reports/200711/ However, netcraft does not see embedded servers or those that are hidden behind firewalls or have ID's turned off. If embedded uses were included (eg Jetty is bundled with eclipse 3.3 as the help server and HTTP service in equinox) then the market share figures would be much more flattering to Jetty I think.
This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.
This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.
This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.
This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.
This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.
After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.
IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.
Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.
9 comments
Watch Thread Reply