This week's book giveaway is in the OCPJP forum. We're giving away four copies of OCA/OCP Java SE 7 Programmer I & II Study Guide and have Kathy Sierra & Bert Bates on-line! See this thread for details.
I am new to j2ee world and altough I have gained significant therotical knowledge, I lack practical experience. Please bear with my potentially stupid questions. I am familiar with servers like Tomcat, Glassfish, Jboss (obviously cause I could download them for free to learn stuff
1. can I use the opensource version of Tomcat, Glassfish, Jboss in production applications ?
2. Are there licensed versions of these products?
3. Are there any limitations/drawbacks of using opensource in production? E.g. limitations of number of users they can support?
4. If you run into issues using these opensource servers in production, what options are there for support and do we pay for them?
5. Are there any other good open source app servers, or which ones are the best? How do you decide one is better than other?
6. If o/s run fine in production, why do people go for expensive licensed software like Websphere or Weblogic? I would guess they have some nice vendor extensions, but wouldn't a vast majority of application needs be satisfied by the standard J2ee specs?
saahil gupta wrote:Yes you Can use them but for Medium Sized J2EE Applications
I disagree strongly. Many very big, successful, high-traffic sites use Tomcat, JBoss or GlassFish. Those servers don't come with all the amenities of WebSphere and WebLogic, but they're rock solid and scalable.
It would be possible to write long articles about all your questions, but in the end it boils down to: are you comfortable with the open source offerings? Oracle will be happy to sell you support for a commercial version of GlassFish, just as JBoss is happy to sell you support for a commercial version of their server. My gut feeling is that most companies do not buy support for these servers, though, as they've grown comfortable with their stability. But there are companies/managers who insist on having support contracts just for the ability to call someone if the internal team can't handle something; the reasons are more political than technical, I suspect.