GlassFish v3 - Architecture
Upcoming SlideShare
Loading in...5

GlassFish v3 - Architecture



GlassFish architect Jerome Dochez presents the architecture (kernel, services, extensibility) and the status of GlassFish v3, a lightweight and modular application server based on OSGi and able to run ...

GlassFish architect Jerome Dochez presents the architecture (kernel, services, extensibility) and the status of GlassFish v3, a lightweight and modular application server based on OSGi and able to run both Java (EE) and scripting (Rails, Grails, PHP, etc...) applications. Fairly technical.



Total Views
Views on SlideShare
Embed Views



3 Embeds 29 26 2 1



Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

GlassFish v3 - Architecture GlassFish v3 - Architecture Presentation Transcript

  • GlassFish V3 @ Jazoon
    • Jerome Dochez
    • Principal Engineer
    • Sun Microsystems, Inc.
  • GlassFish V3
    • Modular application server
      • OSGi
    • Service based architecture
      • Extensibility
      • Flexibitlity
      • Embedable
    • Java EE 6
      • profiles
      • annotations in webtier
      • EJB 3.1/JPA
  • Modularity in GlassFish
    • OSGi based
    • Modules are nice but the APIs matters more
      • Service based architecture
      • Smart loading/starting of modules leading to unmatched startup time.
      • Once the APIs are figured out, easy to replace implementations of parts of your software.
    • Modules are unit of distribution
      • not a service implementation artifact
    • Modules must be hidden from average developers
      • no intrinsic value
  • GlassFish V3 Runtime
  • GlassFish V3 Runtime
    • Kernel
      • startup/shutdown sequences
      • basic services (deployment)
      • configuration reading
    • Services for cross containers functionalities
      • Security, Naming Manager...
      • Admin Console
    • Containers
      • handle user's applications
      • independent of each others
  • requests GlassFish Bundles HK2 Services browser dispatch services
  • GlassFish v3 Future
    • GlassFish has 3 main themes :
      • Extensibility
      • Modularity
      • Embedability
    • plus one recurrent : Java EE 6
      • Profiles
      • Developer's features
    • most of the new V3 features will revolve around OSGi and extensibility.
  • Extensibility
    • GlassFish v3 supports already
      • Java EE applications
      • native RoR apps (no war repackaging)
      • Phobos
      • Grails
    • What's next ?
      • any server side runtime can be plugged in GlassFish
        • simplified deployment
        • administration/configuration
        • clustering
      • monitoring, QoS, converged applications
  • Extensibility
    • Trouble with your custom stack ?
      • concentrate on the value add rather than the underlying runtime
    • Reuse GlassFish modules independently
      • leverage service based architecture
      • OSGi not indispensable
    • All GlassFish modules are in maven repositories.
    • Use the distribution facility to build your own GlassFish
      • Branding support included
  • Modularity
    • Build your own stack
      • take GlassFish nucleus or web distribution
      • build on top
        • more containers
        • more services (CLI, admin gui plugins...)
    • OSGi related features
      • consumption on any OSGi bundles trivial
      • adding soon : plain old jar importing
        • visible to applications with minimal effort
        • package wiring automatic
      • Admin GUI/OSGi console integration
  • Modularity (2)
    • HK2 Features
      • service resolution for containers
      • service resolution for applications
      • automatic services wiring
        • make your own extensible framework
        • leverage GlassFish functionality to do the heavy lifting.
    • OSGi in applications
      • deployment through Bundle.install()
      • OSGi bundle class loader for OSGi(ezed) applications
      • Admin Gui integration
  • Embedability
    • Today, we already have web container embedable.
    • what for ?
      • maven
        • testing : local EJB testing without starting GlassFish
      • need a container in your application, yet don't need a full Java EE stack.
    • HK2 features
      • OSGi isolation
      • Can run GlassFish in non modular mode
        • single class loader
        • useful for applications that do not need modular environment
  • Send requests and ideas to
    • Jerome Dochez
    • [email_address]