Docstoc

GlassFish - JUG Ukraine

Document Sample
GlassFish - JUG Ukraine Powered By Docstoc
					GlassFish
Kiev, July 15th 2008


Alexis Moussine-Pouchkine
GlassFish Team
Sun Microsystems

                            1
2
3
4
GlassFish around You
GlassFish Adoption
• Millions of downloads




• Dozens of external committers
• Over 8,000 members
• Excellent analyst reviews
     > Gartner, Forrester, etc...
GlassFish
Best of class App Server               http://glassfish.org

 • GlassFish v2 released Sept. 2007
     > 4 millions downloads
     > From x3 to x10 usage over 12 months

 • Out of the box :
     >   Web Services interop with Microsoft
     >   Full Clustering
     >   Administration tools
     >   Performance (SPEC record)
     >   Tooling (NetBeans, Eclipse, ...)
 Timeline of Project GlassFish



Tomcat
Jasper
Catalina
 JSTL         GlassFish     v1            v2                       v3
 Struts                          v1 UR1
                                                            v2.1
               Launch                             UR1 UR2
    Crimson
    XSLTC
     Xalan
    Xerces

  JAXB          J1'05      J1'06          Sept.                2008/2009
JAX-RPC
   JSF
              June 2005   May 2006        2007       (you are here)
GlassFish v2 for the Enterprise
• Web Tier
    > Grizzly nio framework (HTTP, IIOP, SIP)
    > Dynamic Web Container
    > Ultra-fast JSP compilation

• Metro Web Services Stack
    > One-stop shop for Web Services starting with JAX-WS
    > Performance, Advanced WS & Microsoft interoperability

• Clustering, Load-Balancing, HA
    > Dynamic group management system (Shoal)
    > In-memory replication
    > Unified Management
Clustering in GlassFish v2




            JMX = Java Management Extensions
GlassFish v2 for the Enterprise
Integration
 • Open MQ
     >   High performing JMS implementation
     >   HA for brokers and messages
     >   Available as standalone product
     >   Integration with GlassFish
              > In memory, Out of process, or Remote
 • JBI support
     > OpenESB 2.0 as the integration back-bone
     > Install, admin, and monitoring integrated in GlassFish v2
     > Basis for Java CAPS Release 6
 • Oracle TopLink as default JPA persistence engine
     > Hibernate also easily usable
GlassFish v2 for Enterprises
Management & Monitoring

• Graphical, command-line, tools, ANT ...
      > JMX and Centralized
•   Call Flow
•   Self-management
•   Diagnostic reports
•   VisualVM
      > Now in Java 6u7
      > GlassFish plugin
Web Admin Console
Demo
 v2
    GlassFish Performance                                                                                                              1000
                                                                                                                                              SPECjAppServer 2004 Results


    SPECjAppServer                                                                                                                      900
                                                                                                                                        800
                                                                                                                                        700




                                                                                                                                                                            ?
                                                                                                                                        600


       > July 2007: #1 score on T2000                                                                                                   500
                                                                                                                                        400
                                                                                                                                        300


                        > 883.66 JOPS@Standard for GlassFish v2                                                                         200
                                                                                                                                        100
                                                                                                                                          0

                        > + 10% vs. WebLogic, +30% vs. WebSphere 6.1                                                                            Sun       BEA        IBM
                                                                                                                                                                           JBoss
                                                                                                                                                                              JBoss




       > July 2007: Best $/perf. on full Open Source
                        > GlassFish v2, OpenSolaris, Java 6, PostgreSQL
                        > 3x the price/perf vs. Oracle on HP score

       > November 2007: Massive Scalability Result
                        > 8,439.36 JOPS@Standard (6 nodes, 18 instances)
                        > Sun T5120 & E6900
         You no longer need to chose between Open Source and Performance
Disclaimers: SPEC and the benchmark name SPECjAppServer 2004 are registered trademarks of the Standard Performance Evaluation Corporation. Competitive benchmark results stated
          l
 above ref ect results published on www.spec.org as of 11/21/07. The comparison presented is based on GlassFish v2 UR1 run on 6 Sun SPARC Enterprise T5120 (1 chip, 8 cores/chip, 8
                threads/core) 1.4GHz 8,439.36 SPECjAppServer2004 JOPS@Standard. For the latest SPECjAppServer 2004 benchmark results, visit http://www.spec.org/.
GlassFish v2 for the Developer

• Single, smaller, download            • Cool Technologies
    > Around 60 MB total                   > Grizzly's Comet, jRuby
                                             on Rails, jMaki, …
• Multiple User Profiles
    > Developer, Cluster, Enterprise   • Update Center
    > Upgrade from one to another          > Provision and install new
                                             features, frameworks, …
• Better startup time
    > Almost matches Tomcat
                                       • Tools support
                                           > NetBeans, (My)Eclipse,
      (see also GlassFish v3)                IntelliJ, etc...
Java EE 5 = (J2EE 1.4).next

• Java EE 5 Theme: Ease of Development
• POJO-based programming
    > More freedom, fewer requirements
• Extensive use of annotations
    > Reduced need for deployment descriptors
    > Annotations are the default
• DRY principle (better defaults)
• Resource Injection
• New APIs and frameworks
 Java EE 6 – JSR 316
                                                     •   New and updated:
   •   Extensibility                                 •   JSF 2.0 (JSR 314)
   •   Profiles                                      •   JSP 2.2
   •   Pruning                                       •   JAX-RS (JSR 311)
   •   More ease of                                  •   WebBeans 1.0 (JSR 299)
         development                                 •   Servlets 3.0 (JSR 315)
                                                     •   EJB 3.1
            Rightsizing                              •   Java Persistence 2.0
                                                     •   JAX-WS 2.2
Goal is to deliver a final version first half of 2009•   Java EE Connectors 1.6
The exact set of technologies to be included will be determined by the expert group
Java EE 6 – Enhancements
• Servlet 3.0
    > No more web.xml editing
    > ARP (Async. Request Processing)
    > File upload
• JPA 2.0
    >   Criteria API
    >   Collections and better Maps support
    >   Validation support (JSR 303)
    >   @OrderBy, specify unfetched state
• JSF 2.0
    > Make custom components much easier to develop
    > Ajax support, less config., align w/Portlet 2.0, Facelets
Java EE 6 – EJB 3.1
• Packaging simplification
     > No more ejb-jar. Easier to share libraries, persistence units
• Singleton Beans
     > @Singleton to share data in EJB container (per JVM)
• Concurrency
     > @ReadOnly as singleton optimization (vs. single-threaded)
     > @BeanManagedConcurrency for explicitly synchronized
• TimerService
     > @Schedule(hour="12",dayOfMonth="2")
     > Automatic creation (on deploy)
• Asynchronous operations
     > @Asynchronous public void init (...) { ... }
     > @Asynchronous Future doWork (...) { ... }
Java EE 6 – New APIs
• Web Beans 1.0
    > Brings together JSF and EJB
    > Inspired by JBoss' Seam
          > JBoss (Gavin King) is spec lead for JSR 299
          > Bob Lee (Guice) heavily involved
• JAX-RS
    >   RESTful Web Services
    >   RI developed in // with Spec: http://jersey.dev.java.net
    >   Expose POJO as RESTful resources
    >   High-level declarative programming model
    >   Flexible typing, runtime does common conversions
    >   Pluggable types, containers, and resolvers
  Java EE 6 – Web Profile
                   Option (A)                            Option (B)

               •   Servlet 3.0                   •   Servlet 3.0
               •   JSP 2.2                       •   JSP 2.2
               •   JSR-45                        •   JSR-45
               •   EL 1.2                        •   EL 1.2
               •   JSTL 1.2                      •   JSTL 1.2
               •   JSR-250                       •   JSR-250
                                                 •   EJB 3.1 (Lite)
                                                 •   JTA 1.1         *: controversial
                                                 •   JPA 2.0
                                                 •   JSF 2.0 *
More on Roberto Chinnici's blogs:                •   Web Beans 1.0 *
http://weblogs.java.net/blog/robc/archive/2008/02/profiles_in_the_1.html
http://weblogs.java.net/blog/robc/archive/2008/03/extensibility_a.html
GlassFish v3
•   Fast startup
•   Modular (OSGi), extensible architecture
•   Dynamic resource and runtime loading
•   Build-your-own runtime
•   Not just Java
      > Ruby on Rails, Grails, PHP, Python/Django, Scala
      > Leverage performance, admin, monitoring, clustering
• Preview available now (TP2)
      > Final in 2009, possibly a web tier in 2008
      > Aligned with Java EE 6
Demo
 v3
GlassFish v3 (cont.)
•   OSGi: Apache Felix as default
•   21 MB download, 1-sec startup
•   Admin and update tool downloaded on demand
•   Add-ons available from update center :
      >   EJB 3.1 (preview)
      >   jRuby On Rails (no WAR packaging required)
      >   Grails (now also for GlassFish v2)
      >   Jersey and Metro (Web Services)
      >   jMaki (Ajax)
• Tools-ready: NetBeans 6.1, Eclipse 3.4
• Embedded GlassFish API
(Some) Distributions & Contributors
                                 Tools

             Java EE RI & SDK      NetBeans™             Communities
                                      IDE
   Distributions                               Eclipse Plugin
                                                                  OpenSSO
 GlassFish Enterprise                                Derby


                                                   MQ            Hudson
      JBoss 5                    Project
                                GlassFish            GlassFish
  TmaxSoft JEUS 6                                      Portal
     Oracle oc4j
                                               OpenESB       SailFin
     BEA WebLogic 10
                                Maven Rep
                                                                       OpenDS

                                   Users and Other Groups
OpenESB

• What – Full-fledged Enterprise Service Bus
    >   Fully documented
    >   Tools-ready
    >   Standards based: JBI, WS-*
    >   Basis of the Java CAPS SOA offering from Sun
• Status – Released v2.0 in June 2008
Hudson

• What – Continuous Integration made easy
    >   Easy to setup
    >   Out of the box support for CVS, SVN, Maven, ...
    >   Many many modules
    >   Great community adoption
• Status – Release #234+ (continuous integration!)
Sailfin

 • What – Telco App Server
     >   Support for SIP and converged applications
     >   Standards based: Java EE, SIPServlet 1.0 & 1.1
     >   Collaboration with Ericsson
     >   Extension to GlassFish v2
 • Status – v1.0 Beta anyday now
OpenDS

• What – 100% Java next generation LDAP server
    >   Extensible architecture
    >   Standard's based: LDAPv3, DSML
    >   Unmatched scalability and performance
    >   Fully tested and complete documentation
• Status – Released 1.0 in July 2008
GlassFish

• Best developer and deployer experience
• Superior Web Services stack (features, perf.)
• Comes with migration tools
• Excellent alternative to more expensive BEA/IBM
   or lesser featured JBoss/Tomcat
• Great foundation technology for SOA, Identity,
   Portal, and Telco App Server
• Exciting GlassFish v3 innovation
Resources

• http://glassfish.org
• http://blogs.sun.com/theaquarium
• http://blogs.sun.com/theaquarium_ru
   > Daily news, broader GlassFish community
• http://java.sun.com/javaone
   > Presentations and Hands-on-Labs
Questions ?
http://blogs.sun.com/alexismp
alexis.mp@sun.com

                                33

				
DOCUMENT INFO
Shared By:
Categories:
Tags: Call, crazy
Stats:
views:7
posted:5/16/2011
language:English
pages:33