Alexis Moussine-Pouchkine GlassFish Team Sun Microsystems

Document Sample
scope of work template
							GlassFish

Alexis Moussine-Pouchkine
GlassFish Team
Sun Microsystems
                            1
What Is GlassFish?
• A Java EE 5 compliant Application Server
  > Can run J2EE applications too

• Enterprise Quality
  > Sun Java System Application Server 9.x
  > Use it in production!

• Open Source
  > CDDL (like OpenSolaris, NetBeans)
  > GPLv2 (like Java and NetBeans)
  > Use it in production!
What Is GlassFish? (Cont.)
• Community at http://glassfish.org
  > Sources, bug DBs, discussions
  > Roadmaps
  > Architecture Documents

• Interim Governance Board
  > 2 Sun members: Simon Phipps, Eduardo Pelegri-Llopart
  > 3 Non-Sun individual members from Google, Wotif.Com, Amex

• Community Awards Program
  > $1M to reward contribution to Open Source projects
  > GlassFish one of 6 communities to award $175k
  > More at http://glassfish.org/GAP
GlassFish Adoption
•   4 million downloads since July '06
•   Dozens of external committers
•   Over 7,000 members
•   Evans data survey of Linux
    users puts GlassFish at #3
    behind JBoss and “other”
    (Tomcat)
    > JBoss and IBM fell 5% while
      GlassFish / Sun increased



                                         Admin Console Unique IP
                                                                   4
GlassFish around you




                       5
 Timeline of Project GlassFish



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


  JAXB          J1'05      J1'06          Sept.              2008/2009
JAX-RPC                                   2007
   JSF        June 2005   May 2006                   (you are here)
GlassFish v2 for Enterprises
• Metro Web Services Stack
 > Performance, Advanced WS & Microsoft interoperability
• Clustering, Load-Balancing, HA
 > Unified Management
• Web Tier
 > Grizzly, Dynamic Web Container, Ultra-fast JSP compilation
• JBI support (OpenESB 2.0)
• Management & Monitoring
 >   Graphical, command-line, tools, ANT ...
 >   JMX and Centralized
 >   Call Flow, Self-management, etc....
 >   Multi-tier provisioning with N1 SPS
GlassFish v2 for Developers
• Single, smaller, download
  > Around 60 MB total
• Multiple User Profiles
  > Developer, Cluster, Enterprise
  > Upgrade from one to another
• Better startup time
  > Almost matches Tomcat (see also GlassFish v3)
• Cool Technologies
  > Grizzly's Comet, jRuby on Rails, jMaki, ...
• Update Center
  > Provision and install new features, new frameworks, ...
• New admin console
  > JSF, AJAX, Charts
Web Admin Console
Metro Web Services
• Metro 1.0: One-stop shop for web services
 > JAX-WS 2.1 RI, WSIT, JAXB 2.1 implementations
 > Unification of artifacts, documentations, etc.
 > Usable in Servlet 2.4 containers (not just GlassFish)


• JAX-WS 2.x
 > WS Separation of Transport and Encoding
    > HTTP, JMS, SMTP, TCP/IP
    > MTOM, Fast Infoset (binary), Textual, Others
• WSIT (Project Tango)
 > Microsoft Interoperability and Quality of Service


• Overall Great Performance
 Declarative WSIT




Same (old) JAX-WS programing model
QoS now part of the WSDL contract
Clustering Architecture                                      Custom
                                                            Resources

                  HTTP(S)      JMS      RMI/IIOP            Resource
                                                            Adapters

                    Message routing/failover/load balancing
   Management




                                                                 Instances
                                                                 Clustered
                                                     AS
                  AS   AS     AS     AS
                                               AS AS
                   Node A      Node B              Node N
                                                                 Applications
                HA Application State Repository                   and Config



                                                     Databases
Clustering in GlassFish v2




             JMX = Java Management Extensions
Performance - SPECjAppServer                                                                                                      900

                                                                                                                                  800
                                                                                                                                            SPECjAppServer 2004 Results



> July 2007: #1 score on T2000
                                                                                                                                  700

                                                                                                                                  600




                                                                                                                                                                                     ?
                                                                                                                                  500


       > 883.66 JOPS@Standard for GlassFish v2                                                                                    400

                                                                                                                                  300


       > 10% faster than BEA WebLogic                                                                                             200

                                                                                                                                  100



       > 30% faster than IBM WebSphere 6.1                                                                                          0
                                                                                                                                             Sun          BEA            IBM
                                                                                                                                                                                 JBoss
                                                                                                                                                                                     JBoss




> July 2007: Best $/perf. on full Open Source
       > 813.73 JOPS@Standard
       > 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/.
(Some) Distributions & Contributors
                              Tools

          Java EE RI & SDK      NetBeans™               Communities
                                   IDE

   Distributions                              Eclipse Plugin

  Sun Java System                                      Derby
       AS 9.x
                                                  MQ
      JBoss 5                 Project
                             GlassFish
                                                  Portal Server
 TmaxSoft JEUS 6
    Oracle oc4j                             Open ESB            SailFin
                                                               Ericsson
    BEA WebLogic 10
                             Maven Rep
                                 Users and Other Groups
Tools Support
• NetBeans 5.5.1, 6.0          • GlassFish (v1, v2, v3)
• Best integration with :        plugin for Eclipse 3.3
  >   full Java EE 5 support
                                 (Europa)
  >   resource creation
  >   remote debug             • Genuitec's MyEclipse
  >   incremental deployment     integration with GlassFish
  >   profiling
  >   wizards, etc...          • CodeGear JBuilder 2007
• Additional features (SOA,    • IDEA Intellij 6.0, 7.0
  UML, jRubyOnRails, ...)
 Frameworks and Applications
                                       Quercus PHP
                  OSWorkFlow
                                       OSCache
                     Integration ORB             Project Tango
  Apache Httpd               CJUG-Classifieds
                                         BIRT       jBPM
   DOJO
 Facelets                    MyFaces
     Shale                   ADF SiteMesh        WebDAV
                         JSPwiki
                               SEAM
                                           Tapestry
                           MC4J
            StringBeans Portal          AJAX
         BlogTrader                   Wicket Equinox
Java WSDP
     Dalma                     WebSphere MQ    EHCache
GlassFish Support
• Yes! GlassFish is totally free to use!
• The business model for Sun is that of services
  > Support subscription starting from $4 500 for 4 sockets
  > Support from the source to secure your projects
  > Also indemnification and access to sustaining branch* (patches)
• Also Consulting & Training
• All from Sun & Partners
• We want our partners, our customers to be successful
  (and Sun too in the process)
     http://globalspecials.sun.com/servlet/PromoServlet/promoID.3676000
     *: Support for GlassFish - What's in it for me?
     http://blogs.sun.com/alexismp/entry/support_for_glassfish_what_s
  Java EE 6 – JSR 316
  •   Extensibility                                      •   JSF 2.0 (JSR 314)
  •   Profiles                                           •   JAX-RS (JSR 311)
  •   Pruning                                            •   WebBeans 1.0 (JSR 299)
                                                         •   Servlets 3.0 (JSR 315)
  •   More ease of development
                                                         •   EJB 3.1
                                                         •   Java Persistence 2.0
                                                         •   Java EE Connectors 1.6



Goal is to deliver a final version first half of 2009
The exact set of technologies to be included will be determined by the expert group
GlassFish v3
• Small & Fast
  > Less than 1.0 sec startup
• Totally Modular, kernel is <100K
  > Based on a module sub-system: HK2
  > Can run in a phone, in a desktop application or in-process
• An ideal Container for Web 2.0
  > Java and Scripting applications
  > Support for upcoming Java EE 6 profiles
  > A good fit for SOA/ESB solutions
• Code and documentation available today
• Full Java EE 6 by first half of 2009
  > (Usable) Previews and milestone much soone
FOSS Middleware Components
•   GlassFish – AppServer, JavaPersistence, Web Tier
•   OpenPortal – Container, WSRP, Portlet, Portlet Rep
•   OpenESB – JBI, BPEL
•   OpenSSO – Access & Federation Manager
•   OpenDS – Directory Server
•   Jersey – JAX-RS for RESTful Web Services
•   Hudson – Continuous build software
•   OpenDMK – SNMP runtime
•   JMaki, JSFTemplating
•   Open MQ – JMS Broker
•   WoodStock – JSF Components
•   Apache Derby – JavaDB
•   Social Software – Apache Roller, Slynkr and more
The SailFin Project
• Ericsson SIP Servlet Contribution
  is available at:
  > http://sailfin.dev.java.net
• Visit, Download, Try, Join
  > Milestone 3 available
  > NetBeans tooling
• Not just for telco operators!
  > Bridging the HTTP and SIP protocols
• Built on GlassFish v2
  and expected first half of 2008
Stories




          http://blogs.sun.com/stories
Resources
•   Project Home – glassfish.org
•   Wiki – wiki.glassfish.java.net
•   The Aquarium – blogs.sun.com/theaquarium
•   GlassFish Podcast – blogs.sun.com/glassfishpodcast

• Contribute!
Questions ?
alexis.mp@sun.com
http://blogs.sun.com/alexismp
                                25

						
Related docs