GlassFish
Technical Overview

February 2009
                     1
Sun's Open Stack
Flexible and Heterogeneous with Zero Barrier to Exit

Database Platform

Application
Infrastructure

    ...
What Is GlassFish?
• A Java EE 5-compliant Application Server
    > Can run J2EE applications too

• Open Source
    > CDD...
What Is GlassFish? (Cont.)

• Community at http://glassfish.org
    > Sources, bug DBs, discussions
    > Roadmaps
    > A...
GlassFish around You




     Get your own local snapshot from: http://beta.glassfish.java.net:81/maps/
GlassFish Adoption
• Millions of downloads




• Dozens of external committers
• Over 8,000 members
• Excellent analyst re...
GlassFish
                                       http://glassfish.org
Best of class App Server

 • GlassFish v2 released S...
Timeline of Project GlassFish



Tomcat
Jasper
Catalina
                            v1            v2                      ...
GlassFish v2 for the Enterprise
• Web Tier
    > Grizzly nio framework (HTTP, IIOP, SIP)
    > Dynamic Web Container
    >...
Clustering in GlassFish v2




            JMX = Java Management Extensions
Out of the Box


 Full Clustering?
●

●Let's create one

 ● 1 Install GlassFish with cluster profile

 ● Create a Domain A...
Node 1
HADB

 Node 1

 Node 2




HADB
GlassFish v2 for the Enterprise
Integration
 • Open MQ
         High performing JMS implementation
     >
         HA for ...
GlassFish v2 for Enterprises
Management & Monitoring

• Graphical, command-line, tools, ANT ...
      > JMX and Centralize...
Call Flow demo
Web Admin Console
Enterprise Management Tools

Demonstration
• Performance Advisor
• Performance Monitor



Other demos
• SNMP
Enterprise Management Tools
Performance
GlassFish Performance                                                                                                     ...
GlassFish v2 for the Developer

• Single, smaller, download • Cool Technologies
    > Around 60 MB total                  ...
Java EE 5 = (J2EE 1.4).next

• Java EE 5 Theme: Ease of Development
• POJO-based programming
    > More freedom, fewer req...
JBI support

Enterprise Integration
JBI – A Universal Plug 'n Play Layer
    A standard way to add new
●

    functionality to an existing
    platform
    St...
Open ESB: An Extensible Platform
JBI in a Nutshell
ESB Container Foundation
                                                                            Ser...
Request
          starts here!

        Calculate
         interest
Providerate based
values on type
from UI
           Mo...
JBI & BPEL Demo
GlassFish Next
Java EE 6 – JSR 316
                                                          New and updated:
                           ...
Java EE 6 – Enhancements
• Servlet 3.0
    > No more web.xml editing
    > ARP (Async. Request Processing)
    > File uplo...
Java EE 6 – EJB 3.1
• Packaging simplification
     > No more ejb-jar. Easier to share libraries, persistence units
• Sing...
Java EE 6 – New APIs
• Web Beans 1.0
    > Brings together JSF and EJB
    > Inspired by JBoss' Seam
          > JBoss (Ga...
GlassFish v3
    Fast startup
•
    Modular (OSGi), extensible architecture
•
    Dynamic resource and runtime loading
•
 ...
GlassFish v3 (cont.)
    OSGi: Apache Felix as default
•
    21 MB download, 1-sec startup
•
    Admin and update tool dow...
GlassFish ESB
GlassFish Project v3 + Open ESB v3
(Some) Distributions & Contributors
                                 Tools
                                               ...
Glassfish
Where to go next

 • Add-ons
    > Glassfish Enterprise Server
    > Glassfish ESB
    > Glassfish Web Space Ser...
Glassfish
Where to go next

 • http://glassfish.org
 • http://wiki.glassfish.java.net
 • http://blogs.sun.com/theaquarium
...
Questions ?
Eugene.bogaart@sun.com

                         41
Glassfish Overview for Sogeti 20090225
Upcoming SlideShare
Loading in...5
×

Glassfish Overview for Sogeti 20090225

1,666

Published on

This is 2 hour presentations on Glassfish
with 4 different demonstrations was compiled for Sogeti. It is based on the public work from Alexis MP and WebCast from John Clingan

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,666
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
74
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "Glassfish Overview for Sogeti 20090225"

  1. 1. GlassFish Technical Overview February 2009 1
  2. 2. Sun's Open Stack Flexible and Heterogeneous with Zero Barrier to Exit Database Platform Application Infrastructure Sun xVM Virtualization VirtualBox Operating System Partners Architecture
  3. 3. What Is GlassFish? • A Java EE 5-compliant Application Server > Can run J2EE applications too • Open Source > CDDL (like OpenSolaris, NetBeans) > GPLv2 (like Java and NetBeans) • Enterprise Quality > GlassFish Enterprise Application Server > Adds support, indemnification, and 99.999% availability
  4. 4. What Is GlassFish? (Cont.) • Community at http://glassfish.org > Sources, bug DBs, discussions > Roadmaps > Architecture Documents • Governance Board > 2 Sun members: Simon Phipps, Eduardo Pelegri- Llopart > 3 Non-Sun individual members from Google, Wotif.Com, Amex
  5. 5. GlassFish around You Get your own local snapshot from: http://beta.glassfish.java.net:81/maps/
  6. 6. GlassFish Adoption • Millions of downloads • Dozens of external committers • Over 8,000 members • Excellent analyst reviews > Gartner, Forrester, etc...
  7. 7. GlassFish http://glassfish.org Best of class App Server • 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, ...) >
  8. 8. Timeline of Project GlassFish Tomcat Jasper Catalina v1 v2 v3 GlassFish JSTL v2.1 v1 UR1 Struts UR1 UR2 Launch Crimson XSLTC Xalan Xerces 2008/2009 Sept. JAXB J1'05 J1'06 JAX-RPC (you are here) 2007 June 2005 May 2006 JSF
  9. 9. 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
  10. 10. Clustering in GlassFish v2 JMX = Java Management Extensions
  11. 11. Out of the Box Full Clustering? ● ●Let's create one ● 1 Install GlassFish with cluster profile ● Create a Domain Admin Server ● Create a NodeAgent 1 ● Create Instance 1 & Instance 2 ● Deploy a sample app with session state ● Test Cluster
  12. 12. Node 1
  13. 13. HADB Node 1 Node 2 HADB
  14. 14. 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
  15. 15. 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
  16. 16. Call Flow demo
  17. 17. Web Admin Console
  18. 18. Enterprise Management Tools Demonstration • Performance Advisor • Performance Monitor Other demos • SNMP
  19. 19. Enterprise Management Tools Performance
  20. 20. GlassFish Performance SPECjAppServer 2004 Results 1000 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 JBoss Sun BEA IBM 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 above reflect 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/.
  21. 21. GlassFish v2 for the Developer • Single, smaller, download • Cool Technologies > Around 60 MB total > Grizzly's Comet, jRuby > on Rails, jMaki, … > • Multiple User Profiles > • Update Center > Developer, Cluster, Enterprise > Provision and install new > Upgrade from one to another > features, frameworks, … > > • Better startup time • Tools support > Almost matches Tomcat > NetBeans, (My)Eclipse, > (see also GlassFish v3) > IntelliJ, etc...
  22. 22. 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 • Resource Injection • New APIs and frameworks
  23. 23. JBI support Enterprise Integration
  24. 24. JBI – A Universal Plug 'n Play Layer A standard way to add new ● functionality to an existing platform Standard Installation and life ● cycle for components Standard WSDL based ● communication across components Standard deployment model for ● all components Result of the experience we ● had with our own Products: Integration Server EAI, SeeBeyond ICAN
  25. 25. Open ESB: An Extensible Platform
  26. 26. JBI in a Nutshell ESB Container Foundation Service Engines (SEs) as logic Orchestration Transformation containers J2EE Platform (BPEL) (XSLT) Management System Normalized Message Router JBI Core The “JBI Bus”: a fast, reliable, in-memory Services • messaging bus Mediates all message exchanges between • WS-I Basic AS2 JMS consumers and providers SOAP Message payloads are opaque data sent along to • the receiver (no canonicalization) Binding Components J2EE™ PlatformNormalization not performed when consumer and (BCs) • as proxies to outside world provider in same JBI container
  27. 27. Request starts here! Calculate interest Providerate based values on type from UI Monthly Payment! Copy Record to Provide Database values to UI Drop Quote on Message Queue
  28. 28. JBI & BPEL Demo
  29. 29. GlassFish Next
  30. 30. Java EE 6 – JSR 316 New and updated: • Extensibility • JSF 2.0 (JSR 314) • JSP 2.2 • Profiles • JAX-RS (JSR 311) • Pruning • WebBeans 1.0 (JSR 299) • More ease of • Servlets 3.0 (JSR 315) • development EJB 3.1 • Java Persistence 2.0 • Rightsizing JAX-WS 2.2 • 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
  31. 31. 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
  32. 32. 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=quot;12quot;,dayOfMonth=quot;2quot;) > Automatic creation (on deploy) • Asynchronous operations > @Asynchronous public void init (...) { ... } > @Asynchronous Future doWork (...) { ... }
  33. 33. 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 >
  34. 34. 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
  35. 35. 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
  36. 36. GlassFish ESB GlassFish Project v3 + Open ESB v3
  37. 37. (Some) Distributions & Contributors Tools Communities Java EE RI & SDK NetBeans™ IDE Eclipse Plugin Distributions OpenSSO Derby GlassFish Enterprise Hudson MQ Project JBoss 5 GlassFish GlassFish TmaxSoft JEUS 6 Portal Oracle oc4j OpenESB SailFin BEA WebLogic 10 Maven Rep OpenDS Users and Other Groups
  38. 38. Glassfish Where to go next • Add-ons > Glassfish Enterprise Server > Glassfish ESB > Glassfish Web Space Server > Glassfish Web Stack
  39. 39. Glassfish Where to go next • http://glassfish.org • http://wiki.glassfish.java.net • http://blogs.sun.com/theaquarium > Daily news, broader GlassFish community • http://java.sun.com/javaone > Presentations and Hands-on-Labs
  40. 40. Questions ? Eugene.bogaart@sun.com 41
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×