3. Target
At the end of this presentation you may understand
The need of application server
What is the application server
EAS market overview
The trend of EAS in the cloud
www.exoplatform.com - Copyright 2012 eXo Platform 3
6. Application server
“An application server provides an environment where
applications can run, no matter what the applications
are or what they do”
www.exoplatform.com - Copyright 2012 eXo Platform 6
7. Application server
Serves up web pages
Provides a container model for applications
Provides services for applications
Adheres to a specification controlled by industry
Distributes requests across multiple physical
servers
Provides management and/or development tools
www.exoplatform.com - Copyright 2012 eXo Platform 7
8. Application server
Why we need it?
Data and code integrity
Centralized configuration
Security
Performance
Total Cost of Ownership
Transaction Support
www.exoplatform.com - Copyright 2012 eXo Platform 8
10. Java EE 6 specifications
Web Services Technologies
RESTful Web Services (JAX-RS)
XML-Based Web Services (JAX-WS)
Java Architecture for XML Binding (JAXB)
Web Services Metadata for the Java Platform
Java API for XML-Based RPC (JAX-RPC)
Java APIs for XML Messaging
Java API for XML Registries (JAXR)
www.exoplatform.com - Copyright 2012 eXo Platform 10
11. Java EE 6 specifications
Web Application Technologies
Java Servlet
Java Server Faces
Java Server Pages/Expression Language
Standard Tag Library for Java Server Pages (JSTL)
Debugging Support for Other Languages
www.exoplatform.com - Copyright 2012 eXo Platform 11
12. Java EE 6 specifications
Enterprise Application Technologies
Contexts and Dependency Injection(Web Beans 1.0)
Bean Validation
Enterprise JavaBeans
Java EE Connector Architecture
Java Persistence
Common Annotations for the Java Platform
Java Message Service API
Java Transaction API (JTA)
JavaMail
www.exoplatform.com - Copyright 2012 eXo Platform 12
13. Java EE 6 specifications
Management and Security Technologies
Java Authentication Service Provider Interface
Java Authorization Contract
Java EE Application Deployment
J2EE Management
www.exoplatform.com - Copyright 2012 eXo Platform 13
14. Java EE 6 specifications
Java EE-related Specs in Java SE
Java API for XML Processing (JAXP)
Java Database Connectivity
Java Management Extensions (JMX)
Java Beans Activation Framework (JAF)
Streaming API for XML (StAX)
www.exoplatform.com - Copyright 2012 eXo Platform 14
16. Certified Application servers
J2EE didn’t fill the needs
• EJB is difficult to use. Weaknesses in EJB 2 model were
recognized. EJB 2 – EJB 3 (Entity Beans → JPA)
• The Open Source community responds
• Hibernate instead of Entity Beans
• Spring as a component model
• Many Spring/Hibernate and abc-based applications
Tomcat is not enough
Doesn’t support many thing except servlet container
Enterprises need integration
Add-ons missing & “build your own Frankenstein”
exercise
www.exoplatform.com - Copyright 2012 eXo Platform 16
17. Certified Application servers
Java EE 6 Full Profile Compatible Implementations
Oracle GlassFish Server 3.x
Fujitsu Interstage AS v10.1
JBoss AS 7.x
IBM WebSphere AS 8.0
TMAX JEUS 7 Apache Geronimo 3.0-beta-1
IBM WebSphere AS CE 3.0
Fujitsu Interstage AS
Oracle WebLogic Server powered by Windows Azure Hitachi uCosminexus AS v9.0
www.exoplatform.com - Copyright 2012 eXo Platform 17
18. Certified Application servers
M& A review
• BEA Systems, Sun Microsystems is aqquired by Oracle
• JBoss is aquired by RedHat
• SpringSource is aquired by VMWare
www.exoplatform.com - Copyright 2012 eXo Platform 18
20. The Big three
IBM WebSphere AS 8.0 JBoss AS 7.x Oracle WebLogic Server
In the war of middleware!
www.exoplatform.com - Copyright 2012 eXo Platform 20
21. The Big three
• IBM's large and loyal installed base, its synergy with
other IBM software brands
• A large number of IBM software products
• Professional service organization's strengths
(vertical industries): banking, insurance and
government
• Advanced add-ons:
Data grid
Advanced batch processing
Private cloud deployments
Support for dynamic languages
Mobile, Web 2.0 and social applications
www.exoplatform.com - Copyright 2012 eXo Platform 21
22. The Big three
Full implementation of Java EE6
Oracle Coherence in-memory data grid
Oracle TopLink object-relational mapping tool
Excellent development tools
• Oracle Jdeveloper
• Oracle Enterprise Pack for Eclipse and NetBeans
• Come with Oracle Fusion Applications family
• Large and loyal relational database management
system (RDBMS) installed base: telecom, financial
services and government
www.exoplatform.com - Copyright 2012 eXo Platform 22
23. The Big three
One of the first OSS app servers that was proven
enough for production
Developers generally like it
Modular architecture
Complete ecosystem: Portal, ESB, BPM
History of innovation
Dependability
Monitoring and deployment capabilities
Seam is worth a look for developers
…
www.exoplatform.com - Copyright 2012 eXo Platform 23
This year we expanded on that, asking more and better questions to give you better and more accurate information. The survey itself ( found here ) provided data from over 1000+ Java EE developers and those responses were analyzed to create this report. We set out to discover: We asked the people we met at JavaOne 2010, emailed previous survey respondents and promoted the survey in the media. They were sent an email with the link to the survey and told they would be notified again once the results were made available. Participants were offered a chance to win free JRebel licenses and one recipient will receive an iPad once the final results are published.
EJB Many people consider it unnecessary difficult Entity Beans were especially problematic But even session beans earned bad reputations OSS packages mitigating the problem Hibernate instead of Entity Beans Spring as a component model They were very successful in the marketplace Many Spring/Hibernate applications Required only Tomcat to run but also work in full app servers Tomcat doesn't support JMS EJBs Other... Enterprises need integration The more mature the app is, the more likely it is to be added Add-ons It was possible to add things that Tomcat was missing But this became a “build your own Frankenstein” exercise
The real definition of an application server in the Java EE world is more than servlets, JSP, database connection pooling. These are just a few pieces of the Java EE container model 2 , where an application is split into a server portion and a client portion 3 . The server itself is composed of different containers, each providing different services to an application. There are lots of service containers! There's the servlet container that presents the front-end user interface 4 , the Enterprise JavaBean container that (presumably) manages business logic, a naming and directory interface, a message service, an adapter service that allows access to non-Java or other non-managed services, a security container... the list goes on
JCA : Connect EIS with application. The specification defines the contracts for an application server as well as for resource adapters, which are system-level software drivers for specific EIS resources. These standard contracts provide pluggability between application servers and EISs. JMS : Peer to peer connections( TCP, socket, CORBA, RMI) telecommunication, banking, aircraft control system, industrial,
EJB Many people consider it unnecessary difficult Entity Beans were especially problematic But even session beans earned bad reputations OSS packages mitigating the problem Hibernate instead of Entity Beans Spring as a component model They were very successful in the marketplace Many Spring/Hibernate applications Required only Tomcat to run but also work in full app servers Tomcat doesn't support JMS EJBs Other... Enterprises need integration The more mature the app is, the more likely it is to be added Add-ons It was possible to add things that Tomcat was missing But this became a “build your own Frankenstein” exercise
Offers an EAS product that matches the market definition above. The minimal EAS product is delivered by the vendor (the definitional features must be available directly from the vendor as the vendor's own intellectual property or under an OEM agreement; the extended features may be available through partners). Product maintenance and support for the minimal EAS product is available from the vendor. The vendor has been proactively offering its EAS product over the past 24 months. There must be evidence of successful production deployments (present or imminent) of the vendor's EAS offering. In 2010, the vendor generated at least $20 million of combined license and maintenance revenue from its EAS products.
IBM strong mainframes http://en.wikipedia.org/wiki/IBM_WebSphere Business Integration Process integration Commerce Mobile, Speech and Enterprise Access Organizational productivity, portals and collaboration
Started in 1999, incorporated in 2001 LGPL License Reasons for Success One of the first OSS app servers that was proven enough for production Good product Developers generally like it Fast startup and operations, easy configuration (for developers) Good standard support Modular architecture Possible to control amount of resources used JBoss has history of innovation Pioneer of EJB 3 Seam Application Framework Web Beans OSGi Support in JBoss 5 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 3 rd party tools available for monitoring Hyperic GroundWork IT JON * Gatein, JBOSS ESB, jBPM