Docstoc

glassfish glassfish Day Jazoon

Document Sample
glassfish glassfish Day Jazoon Powered By Docstoc
					GlassFish V3
GlassFish Day @
Jazoon
Jerome Dochez
●


  > Principal Engineer
     – Sun Microsystems, Inc.

                                1
GlassFish V3
• Modular application server
  > OSGi
• Service based architecture
  > Extensibility
  > Flexibitlity
  > Embedable
• Java EE 6
  > profiles
  > annotations in webtier
  > EJB 3.1/JPA
                        Sun Confidential: Internal Only   2
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
                         Sun Confidential: Internal Only     3
                    GlassFish V3 Runtime

                                                             Applications




                   3rd Party                                GlassFish
Random Lib                                                   bundles
             GlassFish extensions



                                              HK2
   BND




                                        Application Model


                          OSGi (Felix)


                        Java 5/6

                                    Sun Confidential: Internal Only         4
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

                      Sun Confidential: Internal Only   5
  GlassFish Bundles

          JRuby/Rails                                 Security    Config

           Web                                        Naming     Injection
              dispatch

                         GlassFish Kernel

browser
               Grizzly                                                 requests
                                       HK2 Services
                                         OSGi Runtime
                                                                       services


                           Sun Confidential: Internal Only                        6
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.

                           Sun Confidential: Internal Only   7
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
                         Sun Confidential: Internal Only   8
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
                        Sun Confidential: Internal Only       9
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
                           Sun Confidential: Internal Only   10
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

                             Sun Confidential: Internal Only       11
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
                            Sun Confidential: Internal Only           12
Send requests and ideas to
users@glassfish.dev.java.net
Jerome Dochez
●


  > jerome.dochez@sun.com



                               13

				
DOCUMENT INFO
Shared By:
Categories:
Stats:
views:52
posted:3/31/2011
language:English
pages:13