SlideShare une entreprise Scribd logo
1  sur  37
Télécharger pour lire hors ligne
GlassFish Server 3.1
Deploying your Java EE 6 Applications


Arun Gupta, Java EE & GlassFish Guy
blogs.oracle.com/arungupta, @arungupta


                                         1
The following is intended to outline our general
product direction. It is intended for information
purposes only, and may not be incorporated into
any contract. It is not a commitment to deliver any
material, code, or functionality, and should not be
relied upon in making purchasing decisions.

The development, release, and timing of any
features or functionality described for Oracle's
products remains at the sole discretion of Oracle.
Java EE 6 and GlassFish Server 3
    shipped final releases on
                     th
       December 10 2009
World's First Java EE 6 Compatible
          App Server with
 Clustering & High Availability
                      th
      Shipped Feb 28 2011
GlassFish Around You




http://maps.glassfish.org
GlassFish Server Chronology*
 2006     2007      2008       2009        2010    2011                …

  GlassFish v1
  Java EE 5, Single Instance
            GlassFish v2
            Java EE 5, High Availability

                               GlassFish Server 3
                               Java EE 6, Single Instance
                                                  GlassFish Server 3.1
                                                  Java EE 6, High Availability

                                                           GlassFish.next
                                                           Java EE 7



* GlassFish Server Open Source Edition
GlassFish Community
●   Proven by developers
    ●   Over 24 million downloads
    ●   Over 22 million active users (cumulative in past 4
        yrs)
    ●   900K+ upgrades from GlassFish Server 3 to 3.1 in
        just 2 months
    ●   Active user forums
    ●   Sub-projects
        –   Jersey (JAX-RS), Metro (JAX-WS), Grizzly (nio),
            Atmosphere, OpenMQ (JMS), and more
Deliverables
●   Application Server
    ●   Open Source and high-quality runtime
    ●    Java EE 5 / 6 Reference Implementation, early access
        to latest standards
    ●   Clustering and High Availability
    ●   Full Commercial Support from Oracle
●   Continued Investment in Open Source
    ●    Open Source license, governance, participation,
        transparency, ...
General Picture of Distributions
GlassFish and WebLogic together
•
    Best open source application server with    •
                                                    Best commercial application server for
    support from Oracle                             transactional Java EE applications
•
    Open source platform of choice for light-   •
                                                    Platform of choice for standardization
    weight Web applications                     •
                                                    Focus on lowest operational cost and
•
    Focus on latest Java EE standards and           mission critical applications
    community driven innovation                 •
                                                    integration with Oracle Database, Fusion
•
    Certified interoperability with Fusion          Middleware & Fusion Applications
    Middleware
•
    Differentiated innovation, scout thread




                 Production Java                                 Production Java
              Application Deployment                          Application Deployment


              GlassFish Server                                WebLogic Server
Painless Java EE development !
    The save/reload paradigm

●   Auto-deploy of all Java EE and static artifacts
Session Retention

●   Deployment option to maintain stateful
     sessions across re-deployments

$ asadmin redeploy --properties
 keepSessions=true myapp.war

●   Greatly simplifies the
     development paradigm

●   Integrated in IDEs
Yes, Eclipse too !




OEPE : http://www.oracle.com/technetwork/developer-tools/eclipse
Introducing GlassFish Server 3
GlassFish Server Goals
Java EE 6 Themes           Oracle GlassFish Server

• Flexibility              • Flexibility

• Extensibility            • Extensibility

• Developer Productivity   • Developer Productivity

                           • Modularity / OSGi / Hybrid Apps

                           • Manageability

                           • High availability clustering

                           • 24 x 7 x 365 support
3.1 Overview
●   Built on GlassFish 3
●   Modular and Extensible HK2 Kernel
    ●   ~260+ modules
●   Clustering and High Availability
    ●   HTTP, EJB, IIOP, SSO, Metro
●   Dynamic Invocation of Services
●   End-to-end extensibility
Fast and Furious ...
  ●   29% better startup/deploy/re-deploy cycle over
      3.0.1
  ●   33% better HA performance over 2.1.1
      ●   Scalable Grizzly Adapter based on Java NIO
      ●
          Full-session and Modified-attribute* scope
  ●   Multiple Standalone instances and Clusters per
      domain



http://weblogs.java.net/blog/sdo/archive/2011/03/01/whats-new-glassfish-v31-performance
Modular and Dynamic
●   Modular : Apache Felix (OSGi)
●   Extensible : HK2
●   Yet very Fast !
More Painless Development
●   Fast auto-deploy of all Java EE and static
    artifacts
●   Application runner
    ●   java -jar glassfish.jar toto.war
●   Maven integration
    ●   mvn gf:run, gf:start, gf:deploy, ...
●   Containers added dynamically and transparently
●   Excellent Tools support
Embedded uses
●   Testing
    ●   EJBContainer API (EJB 3.1)
    ●   Simple testing using Java SE (JUnit, Maven, ...)
        using EJB container

●   Packaging / Bundling
    ●   Beyond the specification: control all of GlassFish
        Server with an API = GlassFish Embedded
    ●   Integration testing & ship the server inside the app
What's the deal with OSGi?
●   GlassFish Server runs on top of OSGi (Felix)
    ●   Also runs unmodified on Equinox (and Knopflerfish)
    ●   GlassFish ships as 260+ bundles
    ●   Can run without OSGi (Static mode)
    ●   Can use OSGi management tools (CLI or Web)
    ●   Can be installed on top of existing OSGi runtime

●   Any OSGi bundle will run in GlassFish Server
    ●   Drop it in glassfish/modules{/autostart}
    ●   Can also asadmin deploy it using --type osgi
    ●   GlassFish OSGi admin console
Extending GlassFish
       OSGi-style – an example, a demo and a picture


                                                               ●   OSGi declarative service
                                                               ●   Service-Component
                                                                   entry in the JAR Manifest
                                                               ●   Invoke the service from a
                                                                   servlet using standard
                                                                   @Resource injection
                                                               ●   Never use a GlassFish
                                                                   API !
                                                               ●   No need to chose
                                                                   between OSGi and
                                                                   Java EE

Step by step: http://blogs.sun.com/dochez/entry/glassfish_v3_extensions_part_4
Update Center
Monitoring and Management
    Beyond web console and asadmin
●   Dynamic and non-intrusive monitoring
    ●   BTrace integration
        –   Portable, dynamic and safe tracing tool for Java
        –   Btrace annotations and API to write scripts
    ●   Java-defined Probe Providers
    ●   RESTful interface
    ●   DTrace for end-to-end
●   JavaScript Monitoring tool (add-on)
●   Still exposed via JMX
    ●   jconsole and visualvm as natural clients
RESTful admin
●   Jersey + Grizzly to provide REST interfaces to :
    ●   Configure runtime (via GET, POST, DELETE)
    ●   Invoke commands (restart, stop, deploy, etc..)
    ●   Monitoring (GET only)
●   Available from :
    ●   http://localhost:4848/management/domain
    ●   http://localhost:4848/monitoring/domain
●   Use REST clients as Admin GUI substitute
    ●   Use your favorite glue/scripting language or tool
●   Data offered as either XML, HTML or JSON
●   Extensible
More GlassFish Server 3.x
●   Developer performance
●   Embedded API
●   RESTful API
●   Update Center
●   Metro 2.0
●   OpenMQ 4.x
●   Admin console
●   Btrace monitoring
●   ...
GlassFish Server Users
GlassFish Server 3.1
Developer Highlights
●   Developer Productivity
    ●   Improved embedded API support
    ●   Updated NetBeans and Eclipse plugin

●   Updated Technologies
    ●   Grizzly WebSocket support
    ●   Improved CDI, JSON, hypermedia support in Jersey
    ●   Technology refresh – JSF, CDI, Grizzly, OSGi, JPA,
        Jersey, Bean Validation, Metro, UC, etc.
    ●   Implementation of various Enterprise OSGi Specs
GlassFish Server 3.1
Clustering Highlights
● HTTP, EJB, IIOP, SSO, Metro

    ●   New - RM Sequence, Secure Conversations
●   Session-based replication using Shoal
    ●   Distributes session state uniformly & consistently
        among instances
●   Shoal OSGi module, loaded when HA-enabled
    apps are deployed
●   Support for conventional clustering of MQs
    brokers in embedded mode
GlassFish Server 3.1
Manageability Highlights
●   SSH based remote management and
    provisioning
●   Application versioning support
●   Application scoped resources
●   Statement leak detection and reclaim
●   Improved monitoring
●   Console based on RESTful API
Application-Scoped Resources
“glassfish-resources.xml”
● Created/deleted with app deploy/undeploy


● Supported in NetBeans

                        glassfish-resources.xml
                                   java:app/...




            glassfish-resources.xml           glassfish-resources.xml

                              Servlet         EJB
            java:module/...                            java:module/...


                                X                 X
  http://blogs.oracle.com/arungupta/entry/totd_163_application_scoped_resources
Application Versioning
●   Deploy multiple versions of an application, only
    one enabled
●   Commands
    ● asadmin deploy foo.war
    ● asadmin deploy –name=foo:BETA-1 foo.war

    ● asadmin deploy –name=foo:BETA-1.1

         –enable=false foo.war
    ● asadmin enable foo:BETA-1.1


    ● asadmin deploy –name=foo:RC1 foo.war


    ● asadmin undeploy foo:BETA*
    ● asadmin undeploy foo:*
GlassFish Server Control
                                                   Monitoring
  DAS Backup & Recovery   Performance Tuner      Scripting Client




Coherence Active Cache       Oracle Access        Load Balancer
                           Manager Integration   Plugin & Installer
Strategy for continued success
●   Continue to deliver outstanding performance
●   Continue to improve developer productivity
●   Continue product execution
    ●   Deliver Java EE 7 first
    ●   Deliver on product roadmap
●   Continue to innovate
    ●   Improve manageability
    ●   Hybrid OSGi / Java EE applications
●   Find out what's new with Java technology
●   See new tools and techniques
●   Learn how to create solutions
●   Network with peers
●   Meet with experts
●   Influence the future of the Java platform
●   400+ sessions/BoFs/HOLs
●   ...
References

●   oracle.com/javaee
●   glassfish.org
●   oracle.com/goto/glassfish
●   blogs.oracle.com/theaquarium
●   youtube.com/GlassFishVideos
●   Follow @glassfish

Contenu connexe

Tendances

Jfokus 2012: PaaSing a Java EE Application
Jfokus 2012: PaaSing a Java EE ApplicationJfokus 2012: PaaSing a Java EE Application
Jfokus 2012: PaaSing a Java EE Application
Arun Gupta
 

Tendances (20)

Java Summit Chennai: Java EE 7
Java Summit Chennai: Java EE 7Java Summit Chennai: Java EE 7
Java Summit Chennai: Java EE 7
 
GlassFish & Java EE Business Update @ CEJUG
GlassFish & Java EE Business Update @ CEJUGGlassFish & Java EE Business Update @ CEJUG
GlassFish & Java EE Business Update @ CEJUG
 
Java EE Technical Keynote at JavaOne Latin America 2011
Java EE Technical Keynote at JavaOne Latin America 2011Java EE Technical Keynote at JavaOne Latin America 2011
Java EE Technical Keynote at JavaOne Latin America 2011
 
TDC 2011: OSGi-enabled Java EE Application
TDC 2011: OSGi-enabled Java EE ApplicationTDC 2011: OSGi-enabled Java EE Application
TDC 2011: OSGi-enabled Java EE Application
 
GlassFish REST Administration Backend
GlassFish REST Administration BackendGlassFish REST Administration Backend
GlassFish REST Administration Backend
 
The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011
 
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
 
The Java EE 7 Platform: Developing for the Cloud
The Java EE 7 Platform: Developing for the CloudThe Java EE 7 Platform: Developing for the Cloud
The Java EE 7 Platform: Developing for the Cloud
 
Java EE 7: Developing for the Cloud at Java Day, Istanbul, May 2012
Java EE 7: Developing for the Cloud at Java Day, Istanbul, May 2012Java EE 7: Developing for the Cloud at Java Day, Istanbul, May 2012
Java EE 7: Developing for the Cloud at Java Day, Istanbul, May 2012
 
Java EE 7: Developing for the Cloud at Geecon, JEEConf, Johannesburg
Java EE 7: Developing for the Cloud at Geecon, JEEConf, JohannesburgJava EE 7: Developing for the Cloud at Geecon, JEEConf, Johannesburg
Java EE 7: Developing for the Cloud at Geecon, JEEConf, Johannesburg
 
Running your Java EE 6 applications in the Cloud
Running your Java EE 6 applications in the CloudRunning your Java EE 6 applications in the Cloud
Running your Java EE 6 applications in the Cloud
 
GlassFish OSGi Server
GlassFish OSGi ServerGlassFish OSGi Server
GlassFish OSGi Server
 
Java EE / GlassFish Strategy & Roadmap @ JavaOne 2011
Java EE / GlassFish Strategy & Roadmap @ JavaOne 2011Java EE / GlassFish Strategy & Roadmap @ JavaOne 2011
Java EE / GlassFish Strategy & Roadmap @ JavaOne 2011
 
Java Summit Chennai: JAX-RS 2.0
Java Summit Chennai: JAX-RS 2.0Java Summit Chennai: JAX-RS 2.0
Java Summit Chennai: JAX-RS 2.0
 
OSGi and Java EE in GlassFish - Tech Days 2010 India
OSGi and Java EE in GlassFish - Tech Days 2010 IndiaOSGi and Java EE in GlassFish - Tech Days 2010 India
OSGi and Java EE in GlassFish - Tech Days 2010 India
 
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
 
Glassfish Overview 29 Oktober 2009
Glassfish Overview 29 Oktober 2009Glassfish Overview 29 Oktober 2009
Glassfish Overview 29 Oktober 2009
 
GlassFish REST Administration Backend at JavaOne India 2012
GlassFish REST Administration Backend at JavaOne India 2012GlassFish REST Administration Backend at JavaOne India 2012
GlassFish REST Administration Backend at JavaOne India 2012
 
Jfokus 2012: PaaSing a Java EE Application
Jfokus 2012: PaaSing a Java EE ApplicationJfokus 2012: PaaSing a Java EE Application
Jfokus 2012: PaaSing a Java EE Application
 
Whats Cool in Java E 6
Whats Cool in Java E 6Whats Cool in Java E 6
Whats Cool in Java E 6
 

Similaire à GlassFish 3.1 at JCertif 2011

Java EE 6 Clustering with Glassfish 3.1
Java EE 6 Clustering with Glassfish 3.1 Java EE 6 Clustering with Glassfish 3.1
Java EE 6 Clustering with Glassfish 3.1
Shreedhar Ganapathy
 
Andrei Niculae - glassfish - 24mai2011
Andrei Niculae - glassfish - 24mai2011Andrei Niculae - glassfish - 24mai2011
Andrei Niculae - glassfish - 24mai2011
Agora Group
 
Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2
Abhishek Gupta
 

Similaire à GlassFish 3.1 at JCertif 2011 (20)

Deploying Java EE 6 Apps in a Cluster: GlassFish 3.1 at Dallas Tech Fest 2011
Deploying Java EE 6 Apps in a Cluster: GlassFish 3.1 at Dallas Tech Fest 2011Deploying Java EE 6 Apps in a Cluster: GlassFish 3.1 at Dallas Tech Fest 2011
Deploying Java EE 6 Apps in a Cluster: GlassFish 3.1 at Dallas Tech Fest 2011
 
Java EE 6 Clustering with Glassfish 3.1
Java EE 6 Clustering with Glassfish 3.1 Java EE 6 Clustering with Glassfish 3.1
Java EE 6 Clustering with Glassfish 3.1
 
Boston 2011 OTN Developer Days - GlassFish
Boston 2011 OTN Developer Days - GlassFishBoston 2011 OTN Developer Days - GlassFish
Boston 2011 OTN Developer Days - GlassFish
 
GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...
GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...
GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...
 
OTN Developer Days - GlassFish
OTN Developer Days - GlassFishOTN Developer Days - GlassFish
OTN Developer Days - GlassFish
 
Andrei Niculae - glassfish - 24mai2011
Andrei Niculae - glassfish - 24mai2011Andrei Niculae - glassfish - 24mai2011
Andrei Niculae - glassfish - 24mai2011
 
GlassFish OSGi - Java2days 2010
GlassFish OSGi - Java2days 2010GlassFish OSGi - Java2days 2010
GlassFish OSGi - Java2days 2010
 
Glassfish An Introduction
Glassfish An IntroductionGlassfish An Introduction
Glassfish An Introduction
 
GlassFish Community and future larochelle
GlassFish Community and future larochelleGlassFish Community and future larochelle
GlassFish Community and future larochelle
 
Java EE 6 & GlassFish V3 - Alexis Moussine-Pouchkine - May 2010
Java EE 6 & GlassFish V3 - Alexis Moussine-Pouchkine - May 2010Java EE 6 & GlassFish V3 - Alexis Moussine-Pouchkine - May 2010
Java EE 6 & GlassFish V3 - Alexis Moussine-Pouchkine - May 2010
 
Enterprise GlassFish
Enterprise GlassFishEnterprise GlassFish
Enterprise GlassFish
 
Glass Fishv3 March2010
Glass Fishv3 March2010Glass Fishv3 March2010
Glass Fishv3 March2010
 
Running your Java EE applications in the Cloud
Running your Java EE applications in the CloudRunning your Java EE applications in the Cloud
Running your Java EE applications in the Cloud
 
Enterprise java unit-1_chapter-1
Enterprise java unit-1_chapter-1Enterprise java unit-1_chapter-1
Enterprise java unit-1_chapter-1
 
Java EE 7 Soup to Nuts at JavaOne 2014
Java EE 7 Soup to Nuts at JavaOne 2014Java EE 7 Soup to Nuts at JavaOne 2014
Java EE 7 Soup to Nuts at JavaOne 2014
 
Development with JavaFX 9 in JDK 9.0.1
Development with JavaFX 9 in JDK 9.0.1Development with JavaFX 9 in JDK 9.0.1
Development with JavaFX 9 in JDK 9.0.1
 
GlassFish and JavaEE, Today and Future
GlassFish and JavaEE, Today and FutureGlassFish and JavaEE, Today and Future
GlassFish and JavaEE, Today and Future
 
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12cDeveloping Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c
 
Project Zero For Javapolis 2007
Project Zero For Javapolis 2007Project Zero For Javapolis 2007
Project Zero For Javapolis 2007
 
Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2
 

Plus de Arun Gupta

Plus de Arun Gupta (20)

5 Skills To Force Multiply Technical Talents.pdf
5 Skills To Force Multiply Technical Talents.pdf5 Skills To Force Multiply Technical Talents.pdf
5 Skills To Force Multiply Technical Talents.pdf
 
Machine Learning using Kubernetes - AI Conclave 2019
Machine Learning using Kubernetes - AI Conclave 2019Machine Learning using Kubernetes - AI Conclave 2019
Machine Learning using Kubernetes - AI Conclave 2019
 
Machine Learning using Kubeflow and Kubernetes
Machine Learning using Kubeflow and KubernetesMachine Learning using Kubeflow and Kubernetes
Machine Learning using Kubeflow and Kubernetes
 
Secure and Fast microVM for Serverless Computing using Firecracker
Secure and Fast microVM for Serverless Computing using FirecrackerSecure and Fast microVM for Serverless Computing using Firecracker
Secure and Fast microVM for Serverless Computing using Firecracker
 
Building Java in the Open - j.Day at OSCON 2019
Building Java in the Open - j.Day at OSCON 2019Building Java in the Open - j.Day at OSCON 2019
Building Java in the Open - j.Day at OSCON 2019
 
Why Amazon Cares about Open Source
Why Amazon Cares about Open SourceWhy Amazon Cares about Open Source
Why Amazon Cares about Open Source
 
Machine learning using Kubernetes
Machine learning using KubernetesMachine learning using Kubernetes
Machine learning using Kubernetes
 
Building Cloud Native Applications
Building Cloud Native ApplicationsBuilding Cloud Native Applications
Building Cloud Native Applications
 
Chaos Engineering with Kubernetes
Chaos Engineering with KubernetesChaos Engineering with Kubernetes
Chaos Engineering with Kubernetes
 
How to be a mentor to bring more girls to STEAM
How to be a mentor to bring more girls to STEAMHow to be a mentor to bring more girls to STEAM
How to be a mentor to bring more girls to STEAM
 
Java in a World of Containers - DockerCon 2018
Java in a World of Containers - DockerCon 2018Java in a World of Containers - DockerCon 2018
Java in a World of Containers - DockerCon 2018
 
The Serverless Tidal Wave - SwampUP 2018 Keynote
The Serverless Tidal Wave - SwampUP 2018 KeynoteThe Serverless Tidal Wave - SwampUP 2018 Keynote
The Serverless Tidal Wave - SwampUP 2018 Keynote
 
Introduction to Amazon EKS - KubeCon 2018
Introduction to Amazon EKS - KubeCon 2018Introduction to Amazon EKS - KubeCon 2018
Introduction to Amazon EKS - KubeCon 2018
 
Mastering Kubernetes on AWS - Tel Aviv Summit
Mastering Kubernetes on AWS - Tel Aviv SummitMastering Kubernetes on AWS - Tel Aviv Summit
Mastering Kubernetes on AWS - Tel Aviv Summit
 
Top 10 Technology Trends Changing Developer's Landscape
Top 10 Technology Trends Changing Developer's LandscapeTop 10 Technology Trends Changing Developer's Landscape
Top 10 Technology Trends Changing Developer's Landscape
 
Container Landscape in 2017
Container Landscape in 2017Container Landscape in 2017
Container Landscape in 2017
 
Java EE and NoSQL using JBoss EAP 7 and OpenShift
Java EE and NoSQL using JBoss EAP 7 and OpenShiftJava EE and NoSQL using JBoss EAP 7 and OpenShift
Java EE and NoSQL using JBoss EAP 7 and OpenShift
 
Docker, Kubernetes, and Mesos recipes for Java developers
Docker, Kubernetes, and Mesos recipes for Java developersDocker, Kubernetes, and Mesos recipes for Java developers
Docker, Kubernetes, and Mesos recipes for Java developers
 
Thanks Managers!
Thanks Managers!Thanks Managers!
Thanks Managers!
 
Migrate your traditional VM-based Clusters to Containers
Migrate your traditional VM-based Clusters to ContainersMigrate your traditional VM-based Clusters to Containers
Migrate your traditional VM-based Clusters to Containers
 

Dernier

Dernier (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

GlassFish 3.1 at JCertif 2011

  • 1. GlassFish Server 3.1 Deploying your Java EE 6 Applications Arun Gupta, Java EE & GlassFish Guy blogs.oracle.com/arungupta, @arungupta 1
  • 2. The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle's products remains at the sole discretion of Oracle.
  • 3. Java EE 6 and GlassFish Server 3 shipped final releases on th December 10 2009
  • 4. World's First Java EE 6 Compatible App Server with Clustering & High Availability th Shipped Feb 28 2011
  • 6. GlassFish Server Chronology* 2006 2007 2008 2009 2010 2011 … GlassFish v1 Java EE 5, Single Instance GlassFish v2 Java EE 5, High Availability GlassFish Server 3 Java EE 6, Single Instance GlassFish Server 3.1 Java EE 6, High Availability GlassFish.next Java EE 7 * GlassFish Server Open Source Edition
  • 7. GlassFish Community ● Proven by developers ● Over 24 million downloads ● Over 22 million active users (cumulative in past 4 yrs) ● 900K+ upgrades from GlassFish Server 3 to 3.1 in just 2 months ● Active user forums ● Sub-projects – Jersey (JAX-RS), Metro (JAX-WS), Grizzly (nio), Atmosphere, OpenMQ (JMS), and more
  • 8. Deliverables ● Application Server ● Open Source and high-quality runtime ● Java EE 5 / 6 Reference Implementation, early access to latest standards ● Clustering and High Availability ● Full Commercial Support from Oracle ● Continued Investment in Open Source ● Open Source license, governance, participation, transparency, ...
  • 9. General Picture of Distributions
  • 10. GlassFish and WebLogic together • Best open source application server with • Best commercial application server for support from Oracle transactional Java EE applications • Open source platform of choice for light- • Platform of choice for standardization weight Web applications • Focus on lowest operational cost and • Focus on latest Java EE standards and mission critical applications community driven innovation • integration with Oracle Database, Fusion • Certified interoperability with Fusion Middleware & Fusion Applications Middleware • Differentiated innovation, scout thread Production Java Production Java Application Deployment Application Deployment GlassFish Server WebLogic Server
  • 11. Painless Java EE development ! The save/reload paradigm ● Auto-deploy of all Java EE and static artifacts
  • 12. Session Retention ● Deployment option to maintain stateful sessions across re-deployments $ asadmin redeploy --properties keepSessions=true myapp.war ● Greatly simplifies the development paradigm ● Integrated in IDEs
  • 13. Yes, Eclipse too ! OEPE : http://www.oracle.com/technetwork/developer-tools/eclipse
  • 15. GlassFish Server Goals Java EE 6 Themes Oracle GlassFish Server • Flexibility • Flexibility • Extensibility • Extensibility • Developer Productivity • Developer Productivity • Modularity / OSGi / Hybrid Apps • Manageability • High availability clustering • 24 x 7 x 365 support
  • 16. 3.1 Overview ● Built on GlassFish 3 ● Modular and Extensible HK2 Kernel ● ~260+ modules ● Clustering and High Availability ● HTTP, EJB, IIOP, SSO, Metro ● Dynamic Invocation of Services ● End-to-end extensibility
  • 17. Fast and Furious ... ● 29% better startup/deploy/re-deploy cycle over 3.0.1 ● 33% better HA performance over 2.1.1 ● Scalable Grizzly Adapter based on Java NIO ● Full-session and Modified-attribute* scope ● Multiple Standalone instances and Clusters per domain http://weblogs.java.net/blog/sdo/archive/2011/03/01/whats-new-glassfish-v31-performance
  • 18. Modular and Dynamic ● Modular : Apache Felix (OSGi) ● Extensible : HK2 ● Yet very Fast !
  • 19.
  • 20. More Painless Development ● Fast auto-deploy of all Java EE and static artifacts ● Application runner ● java -jar glassfish.jar toto.war ● Maven integration ● mvn gf:run, gf:start, gf:deploy, ... ● Containers added dynamically and transparently ● Excellent Tools support
  • 21. Embedded uses ● Testing ● EJBContainer API (EJB 3.1) ● Simple testing using Java SE (JUnit, Maven, ...) using EJB container ● Packaging / Bundling ● Beyond the specification: control all of GlassFish Server with an API = GlassFish Embedded ● Integration testing & ship the server inside the app
  • 22. What's the deal with OSGi? ● GlassFish Server runs on top of OSGi (Felix) ● Also runs unmodified on Equinox (and Knopflerfish) ● GlassFish ships as 260+ bundles ● Can run without OSGi (Static mode) ● Can use OSGi management tools (CLI or Web) ● Can be installed on top of existing OSGi runtime ● Any OSGi bundle will run in GlassFish Server ● Drop it in glassfish/modules{/autostart} ● Can also asadmin deploy it using --type osgi ● GlassFish OSGi admin console
  • 23. Extending GlassFish OSGi-style – an example, a demo and a picture ● OSGi declarative service ● Service-Component entry in the JAR Manifest ● Invoke the service from a servlet using standard @Resource injection ● Never use a GlassFish API ! ● No need to chose between OSGi and Java EE Step by step: http://blogs.sun.com/dochez/entry/glassfish_v3_extensions_part_4
  • 25. Monitoring and Management Beyond web console and asadmin ● Dynamic and non-intrusive monitoring ● BTrace integration – Portable, dynamic and safe tracing tool for Java – Btrace annotations and API to write scripts ● Java-defined Probe Providers ● RESTful interface ● DTrace for end-to-end ● JavaScript Monitoring tool (add-on) ● Still exposed via JMX ● jconsole and visualvm as natural clients
  • 26. RESTful admin ● Jersey + Grizzly to provide REST interfaces to : ● Configure runtime (via GET, POST, DELETE) ● Invoke commands (restart, stop, deploy, etc..) ● Monitoring (GET only) ● Available from : ● http://localhost:4848/management/domain ● http://localhost:4848/monitoring/domain ● Use REST clients as Admin GUI substitute ● Use your favorite glue/scripting language or tool ● Data offered as either XML, HTML or JSON ● Extensible
  • 27. More GlassFish Server 3.x ● Developer performance ● Embedded API ● RESTful API ● Update Center ● Metro 2.0 ● OpenMQ 4.x ● Admin console ● Btrace monitoring ● ...
  • 29. GlassFish Server 3.1 Developer Highlights ● Developer Productivity ● Improved embedded API support ● Updated NetBeans and Eclipse plugin ● Updated Technologies ● Grizzly WebSocket support ● Improved CDI, JSON, hypermedia support in Jersey ● Technology refresh – JSF, CDI, Grizzly, OSGi, JPA, Jersey, Bean Validation, Metro, UC, etc. ● Implementation of various Enterprise OSGi Specs
  • 30. GlassFish Server 3.1 Clustering Highlights ● HTTP, EJB, IIOP, SSO, Metro ● New - RM Sequence, Secure Conversations ● Session-based replication using Shoal ● Distributes session state uniformly & consistently among instances ● Shoal OSGi module, loaded when HA-enabled apps are deployed ● Support for conventional clustering of MQs brokers in embedded mode
  • 31. GlassFish Server 3.1 Manageability Highlights ● SSH based remote management and provisioning ● Application versioning support ● Application scoped resources ● Statement leak detection and reclaim ● Improved monitoring ● Console based on RESTful API
  • 32. Application-Scoped Resources “glassfish-resources.xml” ● Created/deleted with app deploy/undeploy ● Supported in NetBeans glassfish-resources.xml java:app/... glassfish-resources.xml glassfish-resources.xml Servlet EJB java:module/... java:module/... X X http://blogs.oracle.com/arungupta/entry/totd_163_application_scoped_resources
  • 33. Application Versioning ● Deploy multiple versions of an application, only one enabled ● Commands ● asadmin deploy foo.war ● asadmin deploy –name=foo:BETA-1 foo.war ● asadmin deploy –name=foo:BETA-1.1 –enable=false foo.war ● asadmin enable foo:BETA-1.1 ● asadmin deploy –name=foo:RC1 foo.war ● asadmin undeploy foo:BETA* ● asadmin undeploy foo:*
  • 34. GlassFish Server Control Monitoring DAS Backup & Recovery Performance Tuner Scripting Client Coherence Active Cache Oracle Access Load Balancer Manager Integration Plugin & Installer
  • 35. Strategy for continued success ● Continue to deliver outstanding performance ● Continue to improve developer productivity ● Continue product execution ● Deliver Java EE 7 first ● Deliver on product roadmap ● Continue to innovate ● Improve manageability ● Hybrid OSGi / Java EE applications
  • 36. Find out what's new with Java technology ● See new tools and techniques ● Learn how to create solutions ● Network with peers ● Meet with experts ● Influence the future of the Java platform ● 400+ sessions/BoFs/HOLs ● ...
  • 37. References ● oracle.com/javaee ● glassfish.org ● oracle.com/goto/glassfish ● blogs.oracle.com/theaquarium ● youtube.com/GlassFishVideos ● Follow @glassfish