Professional Documents
Culture Documents
A Comparison of Open Source Application Servers For The Enterprise
A Comparison of Open Source Application Servers For The Enterprise
Don't know
0 20 40 60 80 100
Polling Results from Webinar Attandees
0 20 40 60 80 100
J2EE Didn't Fill the Need
Started in 1999
Recently got a lot of exposure
In particular, R 4.1
JSR-294
OSGi brings
Dependency management and modularity
Ability to load only parts it needs
OSGi currently has a lot of mindshare
What Does This Mean For Me?
Decisions, decisions
EJB 3 or Spring
Spring on dm Server or on J2EE/JEE server?
OSGi or not OSGi
Do I need EJB 2 compatibility?
In addition, there are many “old” considerations
Servers are not “all inclusive”
EJB 3 apps won't work on SpringSource dm Server or Tomcat
Polling Results from Webinar Attandees
In-house expertise
Access to the community
Access to source code
0 20 40 60 80 100
Polling Results from Webinar Attandees
0 20 40 60 80 100
Contenders
Complete ecosystem
Portal
ESB
BPM
JBoss has history of innovation
Pioneer of EJB 3
Seam Application Framework
Web Beans
OSGi
Support in JBoss 5
JBoss in Production
Dependability
Excellent clustering and failover capability
Reliable in production
Monitoring and deployment capabilities
Not really oriented toward system administration out of the box
Command line/file edit flavor of configuration
GUI tools (Tomcat manager and JMX Console) are fairly basic
Excellent 3rd party tools available for monitoring
Hyperic
GroundWork IT
JON *
JBoss for Developers
Excellent customizability
JMX-based, don't deploy what you don't need
Seam is worth a look for developers
JDK 6 with 4.2.3 and 5.0 GA
JDK 5 compiled binaries work on both JDK 5 and JDK 6
JBoss IDE
Eclipse-based
JBoss Tools
Free version (RHDS is paid version)
JBoss - Conclusions
Strengths
Mature, scalable and reliable
Good support for J2EE and EJB 3
Seam framework
Weaknesses
Limited GUI-based configuration in open source version
LGPL License may be a concern for ISV's embedding app servers
GlassFish
Relatively new
Launched in June 2005
JEE 5 support introduced in May 2006
Glassfish 2
September 2007
Clustering and enterprise capabilities
Merged with Sun Java System Application Server
CDDL License
Huge interest
First seven months of 2008 - 4.5 million downloads
Compare to Spring Framework's 5 million downloads
GlassFish Thought Leadership
JEE 5 certified
Reference implementation
Full support for EJB 3
OSGi is coming in version 3
Sun is a strong supporter of OSGi
Good support for dynamic languages
JRuby
GoldSpike
Grails
Living with GlassFish
IDE
NetBeans-based
Excellent support for GlassFish
Support for Java 6 for a long time
Sun has fairly large ecosystem (e.g., openESB)
Relatively new
Not as easy to hire expertise
Good production capabilities
Clustering
Failover
GlassFish – Conclusions
Strengths
Good support for emerging standards
Good heritage of code, based on a good application server
Excellent support for dynamic languages
Weaknesses
Less widely used than JBoss
Relatively new
SpringSource dm Server
Newcomer
Released in April of 2008
GPL license
Incorporates many mature components
Spring Framework
Tomcat
Equinox
dm Server users are very early adopters
Different take on app server
OSGi support
No support for EJB
No JMS out of the box
dm Server Thought Leadership
OSGi-based
Good OSGi implementation
OSGi discussed a lot in their documentation
No support for EJB
No support for EJB 3 or old EJB 2 spec
Spring offers similar functionality to Seam
Which is somewhat more mature
Although some of the Seam ideas might be somewhat more
powerful
Bijection
dm Server for Developers
Strengths
Support for Spring Framework
Support for OSGi
Weaknesses
Newcomer
No EJB
Limited experience among workforce
Geronimo
Supported by IBM
WSCE based on Geronimo announced in October 2005
JEE 5 certified
Full support for EJB 3
Apache licensed
Geronimo Details
Capabilities
Clustering
GBeans and IoC
Built-in frameworks (ActiveMQ, Spring)
Less often used than others (like JBoss) on large
deployments
Certified on Java 5
Works with Java 6
IDE support
GEP, MyEclipse
Geronimo – Conclusions
Strengths
Apache licensed
JEE certified with full EJB 3 support
Sponsored by IBM
Weaknesses
Not as widely used in production as other servers
Less usage means that it is more difficult to find people who
are experts in it
Smaller ecosystem than others (like JBoss)
Although WAS and WSCE share the same name, they do not share the
same code
Tomcat
Tomcat 6 supports
Clustering
Failover
Widely used for both development and production
Supported in most popular IDEs
Tomcat – Conclusions
Strengths
Lightweight
Well known and tested
Fast startup/deployment for development
Weaknesses
No support for EJB, JMS or almost anything else outside of
“web side”
Conclusions
.NET
PHP
Ruby on Rails
TurboGears
Zope
Other
0 20 40 60 80 100
Q&A
Any questions?
Contact Information