Over a million developers have joined DZone.

Java EE 6 Servers Are Too Small, Or Why Some Are Bloated

· Java Zone

Learn more about Kotlin, a new programming language designed to solve problems that software developers face every day brought to you in partnership with JetBrains.

"Java EE 6 Servers are too small to be taken seriously..." One of my first server-side Java projects started in 1996-97 was deployed on JavaWebServer 1.0, later JavaWebServer 2.0. JavaWebServer was Servlet-compatible way before the advent of Tomcat and any other web containers. The project was a e-commerce portal, which was supposed to be shipped to customers and installed on their servers. Our marketing department insisted on packaging the application on a installation CD-ROM. CDs were new and appealing back then. Most of the software at that time was shipped on floppies.

Our entire code base was self-contained and so relatively small. It was about 600kB-1MB. Our marketing guys freaked out, they said: "It is impossible to build serious enterprise software with less than 100MB - no one will take us seriously". We saved the situation with some high-res splash-screens, PDF brochures and putting the PDF-Reader on disc. At the end our installation package looked very professional with about 120 MB and was absolutely enterprise-ready :-). Bundling JDK 1.1.X (~10 MB) and JavaWebServer (8.5 MB) wouldn't help a lot...
I guess we could take over the world with < 1MB portal these days (OMP - One Megabyte Portal) :-). Most of the smoke-tested Java EE 6 servers so far: Resin, Siwpas, JBoss, Glassfish, TomTom are smaller than 50 MB. They would be in serious trouble back then as well - no one would consider them as "enterprise ready" and take them seriously...

From http://www.adam-bien.com/roller/abien/entry/java_ee_6_servers_are

The Java Zone is brought to you in partnership with JetBrains.  Discover how powerful static code analysis and ergonomic design make development not only productive but also an enjoyable experience.


{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}