Java Enterprise Edition (Java EE) Application Servers
120 likes | 417 Vues
Java Enterprise Edition (Java EE) Application Servers. Kapil Katyal WHIM April 22, 2008. Overview. Introduction Benefits of Using Java EE Various Vendors Other Alternatives Conclusion. Typical Scenario.
Java Enterprise Edition (Java EE) Application Servers
E N D
Presentation Transcript
Java Enterprise Edition (Java EE) Application Servers Kapil Katyal WHIM April 22, 2008
Overview • Introduction • Benefits of Using Java EE • Various Vendors • Other Alternatives • Conclusion
Typical Scenario • Create a web application that is secure, reliable and can serve large quantities of data to thousands of concurrent users. • Problem: • It needs to be in production within 6 months. • One Solution: • Hire lots of programmers to implement security, scalability, database features • Difficult to find skillset • High cost to build and maintain application • Could be error prone
Key Observations - Java EE • Key observation made by application server vendors • Most web applications require similar features such as database access, security, scalability, etc. • Provide these features that are fully tested in a container to be leveraged by application developers • Similar to Java and C++ libraries • Allows application programmers to focus on business logic instead of writing all features from scratch
Web Services RMI for distributed applications Load balancing / clustering Database integration System management Message-oriented middleware Security Dynamic redeployment and many others…. Services Provide by Java EE
Java EE Containers Source: http://java.sun.com/javaee/5/docs/tutorial/doc/bnaay.html
Vendors • Commercial • IBM WebSphere Application Server • BEA WebLogic • Oracle OC4J • Open Source • JBoss Application Server • Apache Geronimo • Sun Glassfish • Apache Tomcat (only a web container)
Alternatives • Spring / Hibernate solution • New EJB specification is very similar to Hibernate • Spring and Hibernate are not based on specifications • Not as mature as Java EE • Microsoft .Net • Similar functionality • Forced into one platform and one vendor • One of the key features of web services is the interoperability of .Net and Java EE.
Advantages and Disadvantages • Advantages • Many, many features provided to the application developer • Shorter development cycle • Low cost of entry, especially when using open source application servers • Disadvantages • Less flexibility on architecture • Troubleshooting can be very difficult, especially if you uncover a bug in the vendor’s code • Sometimes your application doesn’t require all the features available - this could hinder performance • Being addressed by open source community
Conclusion • Java EE is an open standard for building web-based enterprise applications • Containers provide several features so that application developers won’t have to write everything from scratch • Java EE provides the consumer with several choices between platform and vendor • Open source application servers are gaining a lot of momentum due to low cost of entry and improving quality
Additional Information • Java EE 5 Tutorial - http://java.sun.com/javaee/5/docs/tutorial/doc/index.html • Apache Tomcat (only a servlet engine) - http://tomcat.apache.org/ • JBoss Application Server - http://www.jboss.org/ • Apache Geronimo - http://geronimo.apache.org/