Over a million developers have joined DZone.

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

· Java Zone

Discover how powerful static code analysis and ergonomic design make development not only productive but also an enjoyable experience, 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

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.

Topics:

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

{{ parent.tldr }}

{{ parent.urlSource.name }}