SlideShare ist ein Scribd-Unternehmen logo
1 von 31
Downloaden Sie, um offline zu lesen
The Java EE 7 Platform: Developing for the Cloud
Arun Gupta, Java EE & GlassFish Guy
blogs.oracle.com/arungupta, @arungupta
 1   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Java EE 6 Implementations




                 Fastest implementations of a Java EE release ever!
2   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Java EE – Developer Adoption
                                                                                      Downloads                    40 Million+
           45
Millions



           40
           35
           30
           25
           20
           15
           10
            5
            0
                              FY 06                            FY 07               FY 08   FY 09   FY 10   FY 11   FY 12

       3    Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
And Today’s Cloud Offerings Are Vendor-
    Specific
    Infrastructure as                                                       Platform as   Software as
         a Service                                                            a Service    a Service




                                                                                …

4    Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Java EE 7




5   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Java EE 7 Focus: Platform as a Service

    • Provide way for customers and users to leverage public,
      private, and hybrid clouds

    • PaaS support entails evolutionary change

    • Next logical step for Java EE
          – J2EE  Java EE 6 : The Java EE Platform provides services
          – Java EE 7 : The Java EE Platform IS a service



6   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Java EE 7 PaaS Roadmap
    • Define new platform roles to accommodate PaaS model
    • Add metadata
          –      For service provisioning and configuration
          –      For QoS, elasticity
          –      For sharing of applications and resources
          –      For (re)configurability and customization
    • Add useful APIs for cloud environment
          – JAX-RS client API, Caching API, State Management, JSON,…
    • Extend existing APIs with support for multitenancy
7   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Roles

            Developer
                                                                                                               PaaS Provider

     PaaS
 Customer/                                                      JVM JVM JVM       JVM JVM JVM   JVM JVM JVM
    Tenant                                                              Machine     Machine       Machine
                                                                                                                     PaaS Product
                                                                                                                     Provider

                                                                JVM JVM JVM       JVM JVM JVM   JVM JVM JVM
Deployer
                                                                        Machine     Machine       Machine           PaaS Account
                                                                     Tenant 1      Tenant 2      Tenant 3           Manager
 Application
  Submitter
                                                                                                              PaaS
                                                                                                              Administrator
                          Application
                        Administrator

  8   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Java EE 7 Focus Area: Cloud Services, Not Just
      APIs
• In the cloud tenant applications                                           Tenant App               Tenant App              Tenant App

  consume services                                                                   Java EE Application Level Services
• PaaS administrators host,                                                    Queuing
                                                                               Service
                                                                                                Persistence
                                                                                                  Service
                                                                                                                 Caching
                                                                                                                  Service
                                                                                                                                  …

  configure, and manage
                                                                                          PaaS Infrastructure Services
  application and infrastructure                                               Security         Provisioning    File
                                                                                                                                  …
  services                                                                      Service            Service         Service

                                                                                      Platform as a Service - Services
• Existing APIs in Java EE need to
                                                                                          IaaS Infrastructure Services
  be updated to be service-enabled
                                                                              Virt        VIP       VLAN       Volume       LBR       …
  and tenant-aware
  – Example: pluggable services, late binding                                              Infrastructure as a Service
    and tenant id injection
  9   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Java EE 7 Focus Area: Auto-Provision
     Services from Application Dependencies
• Old Java EE Model                                                         1
                                                                                Deploy Application
                                                                                (EAR/GAR/SAR …)
                                                                                                     Cloud Administration
                                                                                                           Service
     • Configure Java EE resources –
       JDBC, JMS etc
                                                                                  Provision and          Database
     • Deploy Application EAR                                               2       Initialize            Service
• Java EE 7 Model
     • Provision and deploy application                                          Provision and            LDAP
                                                                            3
       resources                                                                   Initialize             Service
       (e.g. LDAP stripe, data source
       instantiation and connection …)                                            Provision and          Messaging
                                                                            4
• Extensible Deployment                                                             Initialize            Service

  Models Supporting Multiple
                                                                                  Provision and         Application
  Frameworks                                                                5       Initialize           Container
       • Spring, Seam, Play …

10   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Services

     • Cloud apps consume services
           – Persistence, queueing, mail, caching, …
     • Service metadata facilitates ease of use when deploying
       into the cloud
           @DataSourceDefinition(
             name=“java:app/jdbc/myDB”,
             className=“oracle.jdbc.pool.OracleDataSource”,
             isolationLevel=TRANSACTION_REPEATABLE_READ,
             initialPoolSize=5
           )



11   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Services

     • Cloud apps consume services
           – Persistence, queueing, mail, caching, …
     • Service metadata facilitates ease of use when deploying
       into the cloud
           @JMSConnectionFactory (
            name=“java:app/myJMSConnectionFactory”,
            resourceType=“javax.jms.QueueConnectionFactory”)

           @JMSDestination(
            name=“java:app/myQueue”,
            resourceType=“javax.jms.Queue”)

12   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Services

     • Cloud apps consume services
           – Persistence, queueing, mail, caching, …
     • Service metadata facilitates ease of use when deploying
       into the cloud
           @MailSession (
             name=“java:app/mailSession”,
             from=“MyService@ExtraServices.com”
           )




13   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Services

     • Cloud apps consume services
           – Persistence, queueing, mail, caching, …
     • Service metadata facilitates ease of use when deploying
       into the cloud
           @ConnectorService (
             name=“java:app/myCustomConnector”,
             type=“com.extraServices.customConnector.class”,
             properties = {…}
           )




14   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Java EE 7 Focus Area: Elasticity
                                                                                   Java EE 7 Focus:
                                                                                  Move the Bar Right



                                                                             Elasticity Continuum


                                                                                  Java EE Cluster            Elastic Cluster
                                                                                                                Elastic Cluster
                                                                                                                                   Capacity
                                                                                                                                      Ca
                                                                                                                                  on Demand



Single node                                                                    Java EE Multi-Node        Dynamic Self Adjusting
Non-Elastic                                                                  Multi-Instance Clustering    SLA Driven Elasticity

      • Service Levels
      • Minimum and Maximum Instances
      • Futures – Self Adjustment, Capacity On Demand
 15   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Demo
     PaaSing a Java EE Application in the Cloud




16   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Conference Planning in the Cloud

    Java EE Application

           JSF                                JPA                               Deploy

                                       Services
          EJB                          Metadata
                                                                                   <glassfish-services>
                                                                                   <service-description init-type="LB" name="ConferencePlanner-lb">
                                                                                      <template id="LBNative"/>
                                                                                      <configurations>
                                                                                        <configuration name="https-port" value="50443"/>
                                                                                        <configuration name="ssl-enabled" value="false"/>
                                                                                        <configuration name="http-port" value="50080"/>
                                                                                      </configurations></service-description>
                                                                                   <service-description init-type="JavaEE" name="ConferencePlanner">
http://glassfish.org/javaone2011                                                      <characteristics>
                                                                                        <characteristic name="service-type" value="JavaEE"/>
                                                                                      </characteristics>
                                                                                      <configurations>
                                                                                        <configuration name="max.clustersize" value="4"/>
                                                                                        <configuration name="min.clustersize" value="2"/>
                                                                                      </configurations>
                                                                                   </service-description>
                                                                                   ...
                                                                                   </glassfish-services>
    17   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Service Provisioning

                                                                              Load
                                                                             Balancer



                                                 Java EE                    Java EE    ...   Java EE


                                                                            Database



18   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Multi-tenancy in Java EE 7
     • Support for separate isolated instances of the same app for
       different tenants
           –      One application instance per tenant
           –      Tenants correspond to units of isolation
           –      Multitenant apps are declared as such
           –      Each instance customized and deployed for a single tenant
           –      Limited form of SaaS

     • Mapping to tenant done by the container
     • Tenant id available to application
           – E.g., under java:comp/tenantId or by injection

19   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Java EE 7 Focus Area: Application Level Multi
     Tenancy
     • Goal: Simple configuration
     • Flexible tenant discriminator support
     • Other areas impacted - JNDI, JMS, EJB …
@Entity
@Table(name=‚EMP‛)
@MultiTenant(SINGLE_TABLE) depart_id                DEPT_ID
@TenantDiscriminator(name=‚company-id‛, columnName=‚COMPANY‛)
public class Employee {
                     EMP
                             EMP_ID                           VERSION        F_NAME   L_NAME   GENDER   DEPT_ID
                                  1                                  1        John     Doe       M         1
                                  2                                  3        Jane     Doe       F         2


     SELECT * FROM EMPLOYEE WHERE L_NAME LIKE ‘D%’ AND DEPT_ID= 1

20    Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Persistence Layer
     Multi-tenant Taxonomies
     •   Dedicated App, Dedicated Database
     •   Shared App, Dedicated Database
     •   Dedicated App, Shared Database
     •   Shared App, Shared Database




21   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Dedicated App, Dedicated Database
     Persistence Layer Multi-Tenant Taxonomies




                                                                            App is configured for tenant-id
                                                                             at bootstrap and connects to
                                                                                   the data source



22   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Shared App, Dedicated Database
     Persistence Layer Multi-Tenant Taxonomies




                                                                               App knows tenant-id and
                                                                            connects with the tenant-specific
                                                                                     data source



23   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Dedicated App, Shared Database
     Persistence Layer Multi-Tenant Taxonomies




                                                                             Tenant-id configured at bootstrap
                                                                            and connects to tenant-specific table
                                                                                      or striped table



24   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Shared App, Shared Database
     Persistence Layer Multi-Tenant Taxonomies




                                                                             App knows tenant-id and
                                                                            connects to tenant specific
                                                                               table or striped table



25   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Java EE 7 Is Not Just Cloud-y
     • Alignment of ManagedBeans across CDI, EJB, JSF,…
           – POJO  ManagedBean  Enterprise JavaBean
           – Extension of container-managed transactions beyond EJB

     • Further simplifications for ease-of-development
           – JMS 2.0 focus on ease-of-development
           – Expanded use of dependency injection
           – Expanded service metadata; improved configuration

     • Pruning
           – EJB CMP and BMP, JAX-RPC, Deployment API

     • Update to Web Profile

26   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Java EE 7 JSRs
          •     Platform 7 / Web Profile 7                                  •   JCache 1.0 (JSR 107)
          •     JPA 2.1                                                     •   Concurrency Utilities 1.0
          •     JAX-RS 2.0                                                  •   State Management 1.0
          •     EJB 3.2                                                     •   Batch Processing 1.0
          •     JMS 2.0                                                     •   JSON 1.0
          •     Servlet 3.1                                                 •   Common Annotations 1.2 MR
          •     EL 3.0                                                      •   JAX-WS 2.3 MR
          •     JSF 2.2                                                     •   JTA 1.2 MR
          •     CDI 1.1                                                     •   JSP 2.3 MR
          •     Bean Validation 1.1                                         •   JASPIC 1.2 MR


27   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Transparency
     • Our Java EE 7 JSRs are run in the open on java.net
           – http://javaee-spec.java.net
           – One project per spec – e.g., jpa-spec, jax-rs-spec, jms-spec…
     • Publicly viewable Expert Group mail archive
           – Users observer list gets copies of all Expert Group emails
     • Publicly viewable download area
     • Publicly viewable issue tracker
     • Commitment to match JCP 2.8 Process

28   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Status and Schedule


     • Nearly all JSRs up and running
     • Remaining ones to be filed in next few weeks
     • Final release target: Q3 2012
     • Date-driven release: anything not ready will be
       deferred to Java EE 8



29   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
How to Get in the Loop

     • Java EE 7 Expert Group Project
           – http://javaee-spec.java.net
     • Java EE 7 Reference Implementation
           – http://glassfish.org
     • The Aquarium
           – http://blogs.oracle.com/theaquarium

30   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
31   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.

Weitere ähnliche Inhalte

Was ist angesagt?

GlassFish Community Update @ JavaOne 2011
GlassFish Community Update @ JavaOne 2011GlassFish Community Update @ JavaOne 2011
GlassFish Community Update @ JavaOne 2011Arun Gupta
 
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 ApplicationArun Gupta
 
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, JohannesburgArun Gupta
 
Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...
Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...
Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...Arun Gupta
 
The Java EE 7 Platform: Developing for the Cloud (FISL 12)
The Java EE 7 Platform: Developing for the Cloud  (FISL 12)The Java EE 7 Platform: Developing for the Cloud  (FISL 12)
The Java EE 7 Platform: Developing for the Cloud (FISL 12)Arun Gupta
 
WebLogic 12c Developer Deep Dive at Oracle Develop India 2012
WebLogic 12c Developer Deep Dive at Oracle Develop India 2012WebLogic 12c Developer Deep Dive at Oracle Develop India 2012
WebLogic 12c Developer Deep Dive at Oracle Develop India 2012Arun Gupta
 
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 2012Arun Gupta
 
GlassFish 3.1 at JCertif 2011
GlassFish 3.1 at JCertif 2011GlassFish 3.1 at JCertif 2011
GlassFish 3.1 at JCertif 2011Arun Gupta
 
PaaSing a Java EE 6 Application at Geecon 2012
PaaSing a Java EE 6 Application at Geecon 2012PaaSing a Java EE 6 Application at Geecon 2012
PaaSing a Java EE 6 Application at Geecon 2012Arun Gupta
 
JAX-RS 2.0: RESTful Web services on steroids at Geecon 2012
JAX-RS 2.0: RESTful Web services on steroids at Geecon 2012JAX-RS 2.0: RESTful Web services on steroids at Geecon 2012
JAX-RS 2.0: RESTful Web services on steroids at Geecon 2012Arun Gupta
 
OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010
OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010
OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010Arun Gupta
 
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 Cloudcodemotion_es
 
JAX-RS 2.0: RESTful Web services on steroids
JAX-RS 2.0: RESTful Web services on steroidsJAX-RS 2.0: RESTful Web services on steroids
JAX-RS 2.0: RESTful Web services on steroidscodemotion_es
 
Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010
Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010
Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010Arun Gupta
 
GIDS 2012: Java Message Service 2.0
GIDS 2012: Java Message Service 2.0GIDS 2012: Java Message Service 2.0
GIDS 2012: Java Message Service 2.0Arun Gupta
 
GIDS 2012: PaaSing a Java EE Application
GIDS 2012: PaaSing a Java EE ApplicationGIDS 2012: PaaSing a Java EE Application
GIDS 2012: PaaSing a Java EE ApplicationArun Gupta
 
TDC 2011: The Java EE 7 Platform: Developing for the Cloud
TDC 2011: The Java EE 7 Platform: Developing for the CloudTDC 2011: The Java EE 7 Platform: Developing for the Cloud
TDC 2011: The Java EE 7 Platform: Developing for the CloudArun Gupta
 
Java EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for futureJava EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for futureArun Gupta
 
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...Arun Gupta
 
Java EE 7 and HTML5: Developing for the Cloud
Java EE 7 and HTML5: Developing for the CloudJava EE 7 and HTML5: Developing for the Cloud
Java EE 7 and HTML5: Developing for the CloudArun Gupta
 

Was ist angesagt? (20)

GlassFish Community Update @ JavaOne 2011
GlassFish Community Update @ JavaOne 2011GlassFish Community Update @ JavaOne 2011
GlassFish Community Update @ JavaOne 2011
 
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
 
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
 
Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...
Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...
Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...
 
The Java EE 7 Platform: Developing for the Cloud (FISL 12)
The Java EE 7 Platform: Developing for the Cloud  (FISL 12)The Java EE 7 Platform: Developing for the Cloud  (FISL 12)
The Java EE 7 Platform: Developing for the Cloud (FISL 12)
 
WebLogic 12c Developer Deep Dive at Oracle Develop India 2012
WebLogic 12c Developer Deep Dive at Oracle Develop India 2012WebLogic 12c Developer Deep Dive at Oracle Develop India 2012
WebLogic 12c Developer Deep Dive at Oracle Develop India 2012
 
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
 
GlassFish 3.1 at JCertif 2011
GlassFish 3.1 at JCertif 2011GlassFish 3.1 at JCertif 2011
GlassFish 3.1 at JCertif 2011
 
PaaSing a Java EE 6 Application at Geecon 2012
PaaSing a Java EE 6 Application at Geecon 2012PaaSing a Java EE 6 Application at Geecon 2012
PaaSing a Java EE 6 Application at Geecon 2012
 
JAX-RS 2.0: RESTful Web services on steroids at Geecon 2012
JAX-RS 2.0: RESTful Web services on steroids at Geecon 2012JAX-RS 2.0: RESTful Web services on steroids at Geecon 2012
JAX-RS 2.0: RESTful Web services on steroids at Geecon 2012
 
OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010
OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010
OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010
 
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
 
JAX-RS 2.0: RESTful Web services on steroids
JAX-RS 2.0: RESTful Web services on steroidsJAX-RS 2.0: RESTful Web services on steroids
JAX-RS 2.0: RESTful Web services on steroids
 
Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010
Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010
Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010
 
GIDS 2012: Java Message Service 2.0
GIDS 2012: Java Message Service 2.0GIDS 2012: Java Message Service 2.0
GIDS 2012: Java Message Service 2.0
 
GIDS 2012: PaaSing a Java EE Application
GIDS 2012: PaaSing a Java EE ApplicationGIDS 2012: PaaSing a Java EE Application
GIDS 2012: PaaSing a Java EE Application
 
TDC 2011: The Java EE 7 Platform: Developing for the Cloud
TDC 2011: The Java EE 7 Platform: Developing for the CloudTDC 2011: The Java EE 7 Platform: Developing for the Cloud
TDC 2011: The Java EE 7 Platform: Developing for the Cloud
 
Java EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for futureJava EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for future
 
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...
 
Java EE 7 and HTML5: Developing for the Cloud
Java EE 7 and HTML5: Developing for the CloudJava EE 7 and HTML5: Developing for the Cloud
Java EE 7 and HTML5: Developing for the Cloud
 

Ähnlich wie The Java EE 7 Platform: Developing for the Cloud

Java ee 7 platform developing for the cloud kshitiz saxena
Java ee 7 platform developing for the cloud   kshitiz saxenaJava ee 7 platform developing for the cloud   kshitiz saxena
Java ee 7 platform developing for the cloud kshitiz saxenaIndicThreads
 
GlassFish in the Virtual World
GlassFish in the Virtual WorldGlassFish in the Virtual World
GlassFish in the Virtual WorldArun Gupta
 
Java EE7: Developing for the Cloud
Java EE7: Developing for the CloudJava EE7: Developing for the Cloud
Java EE7: Developing for the CloudDmitry Buzdin
 
Cloud foundry elastic architecture and deploy based on openstack
Cloud foundry elastic architecture and deploy based on openstackCloud foundry elastic architecture and deploy based on openstack
Cloud foundry elastic architecture and deploy based on openstackOpenCity Community
 
Mach Technology
Mach Technology Mach Technology
Mach Technology Open Stack
 
彭—Elastic architecture in cloud foundry and deploy with openstack
彭—Elastic architecture in cloud foundry and deploy with openstack彭—Elastic architecture in cloud foundry and deploy with openstack
彭—Elastic architecture in cloud foundry and deploy with openstackOpenCity Community
 
Andre Tost Service Models Java
Andre  Tost    Service Models JavaAndre  Tost    Service Models Java
Andre Tost Service Models JavaSOA Symposium
 
Java one brazil_keynote_dochez
Java one brazil_keynote_dochezJava one brazil_keynote_dochez
Java one brazil_keynote_dochezJerome Dochez
 
JavaOne 2012 - BOF7955 ­ Avoiding Java EE Application Design Traps to Achieve...
JavaOne 2012 - BOF7955 ­ Avoiding Java EE Application Design Traps to Achieve...JavaOne 2012 - BOF7955 ­ Avoiding Java EE Application Design Traps to Achieve...
JavaOne 2012 - BOF7955 ­ Avoiding Java EE Application Design Traps to Achieve...Danival Calegari
 
Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...
Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...
Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...Dr. Spock
 
Java EE 7 - Into the Cloud
Java EE 7 - Into the CloudJava EE 7 - Into the Cloud
Java EE 7 - Into the CloudMarkus Eisele
 
10 reasons why Nuxeo is using GlassFish
10 reasons why Nuxeo is using GlassFish10 reasons why Nuxeo is using GlassFish
10 reasons why Nuxeo is using GlassFishNuxeo
 
SPEC INDIA Java Case Study
SPEC INDIA Java Case StudySPEC INDIA Java Case Study
SPEC INDIA Java Case StudySPEC INDIA
 
IBM Pulse 2013 session - DevOps for Mobile Apps
IBM Pulse 2013 session - DevOps for Mobile AppsIBM Pulse 2013 session - DevOps for Mobile Apps
IBM Pulse 2013 session - DevOps for Mobile AppsSanjeev Sharma
 
JUG Darmstadt - Java EE 7 - Auf in die Wolken!
JUG Darmstadt - Java EE 7 - Auf in die Wolken!JUG Darmstadt - Java EE 7 - Auf in die Wolken!
JUG Darmstadt - Java EE 7 - Auf in die Wolken!Markus Eisele
 
Leveraging The Clouds For Reliable Web Applications Presentation
Leveraging The Clouds For Reliable Web Applications PresentationLeveraging The Clouds For Reliable Web Applications Presentation
Leveraging The Clouds For Reliable Web Applications PresentationWeb 2.0 Expo
 
Paving the Way to IT-as-a-Service
Paving the Way to IT-as-a-ServicePaving the Way to IT-as-a-Service
Paving the Way to IT-as-a-Servicebuildacloud
 
Handling Service Orchestration in the Cloud for GlassFish - JavaOne, San Fran...
Handling Service Orchestration in the Cloud for GlassFish - JavaOne, San Fran...Handling Service Orchestration in the Cloud for GlassFish - JavaOne, San Fran...
Handling Service Orchestration in the Cloud for GlassFish - JavaOne, San Fran...Sivakumar Thyagarajan
 
CloudStack Collaboration Conference 12; Refactoring cloud stack
CloudStack Collaboration Conference 12; Refactoring cloud stackCloudStack Collaboration Conference 12; Refactoring cloud stack
CloudStack Collaboration Conference 12; Refactoring cloud stackbuildacloud
 

Ähnlich wie The Java EE 7 Platform: Developing for the Cloud (20)

Java ee 7 platform developing for the cloud kshitiz saxena
Java ee 7 platform developing for the cloud   kshitiz saxenaJava ee 7 platform developing for the cloud   kshitiz saxena
Java ee 7 platform developing for the cloud kshitiz saxena
 
GlassFish in the Virtual World
GlassFish in the Virtual WorldGlassFish in the Virtual World
GlassFish in the Virtual World
 
Java EE7: Developing for the Cloud
Java EE7: Developing for the CloudJava EE7: Developing for the Cloud
Java EE7: Developing for the Cloud
 
Cloud foundry elastic architecture and deploy based on openstack
Cloud foundry elastic architecture and deploy based on openstackCloud foundry elastic architecture and deploy based on openstack
Cloud foundry elastic architecture and deploy based on openstack
 
Mach Technology
Mach Technology Mach Technology
Mach Technology
 
彭—Elastic architecture in cloud foundry and deploy with openstack
彭—Elastic architecture in cloud foundry and deploy with openstack彭—Elastic architecture in cloud foundry and deploy with openstack
彭—Elastic architecture in cloud foundry and deploy with openstack
 
Andre Tost Service Models Java
Andre  Tost    Service Models JavaAndre  Tost    Service Models Java
Andre Tost Service Models Java
 
Java one brazil_keynote_dochez
Java one brazil_keynote_dochezJava one brazil_keynote_dochez
Java one brazil_keynote_dochez
 
JavaOne 2012 - BOF7955 ­ Avoiding Java EE Application Design Traps to Achieve...
JavaOne 2012 - BOF7955 ­ Avoiding Java EE Application Design Traps to Achieve...JavaOne 2012 - BOF7955 ­ Avoiding Java EE Application Design Traps to Achieve...
JavaOne 2012 - BOF7955 ­ Avoiding Java EE Application Design Traps to Achieve...
 
Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...
Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...
Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...
 
Java EE 7 - Into the Cloud
Java EE 7 - Into the CloudJava EE 7 - Into the Cloud
Java EE 7 - Into the Cloud
 
10 reasons why Nuxeo is using GlassFish
10 reasons why Nuxeo is using GlassFish10 reasons why Nuxeo is using GlassFish
10 reasons why Nuxeo is using GlassFish
 
SPEC INDIA Java Case Study
SPEC INDIA Java Case StudySPEC INDIA Java Case Study
SPEC INDIA Java Case Study
 
IBM Pulse 2013 session - DevOps for Mobile Apps
IBM Pulse 2013 session - DevOps for Mobile AppsIBM Pulse 2013 session - DevOps for Mobile Apps
IBM Pulse 2013 session - DevOps for Mobile Apps
 
Enterprise Service Bus Part 1
Enterprise Service Bus Part 1Enterprise Service Bus Part 1
Enterprise Service Bus Part 1
 
JUG Darmstadt - Java EE 7 - Auf in die Wolken!
JUG Darmstadt - Java EE 7 - Auf in die Wolken!JUG Darmstadt - Java EE 7 - Auf in die Wolken!
JUG Darmstadt - Java EE 7 - Auf in die Wolken!
 
Leveraging The Clouds For Reliable Web Applications Presentation
Leveraging The Clouds For Reliable Web Applications PresentationLeveraging The Clouds For Reliable Web Applications Presentation
Leveraging The Clouds For Reliable Web Applications Presentation
 
Paving the Way to IT-as-a-Service
Paving the Way to IT-as-a-ServicePaving the Way to IT-as-a-Service
Paving the Way to IT-as-a-Service
 
Handling Service Orchestration in the Cloud for GlassFish - JavaOne, San Fran...
Handling Service Orchestration in the Cloud for GlassFish - JavaOne, San Fran...Handling Service Orchestration in the Cloud for GlassFish - JavaOne, San Fran...
Handling Service Orchestration in the Cloud for GlassFish - JavaOne, San Fran...
 
CloudStack Collaboration Conference 12; Refactoring cloud stack
CloudStack Collaboration Conference 12; Refactoring cloud stackCloudStack Collaboration Conference 12; Refactoring cloud stack
CloudStack Collaboration Conference 12; Refactoring cloud stack
 

Mehr von Arun Gupta

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.pdfArun Gupta
 
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 2019Arun Gupta
 
Machine Learning using Kubeflow and Kubernetes
Machine Learning using Kubeflow and KubernetesMachine Learning using Kubeflow and Kubernetes
Machine Learning using Kubeflow and KubernetesArun Gupta
 
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 FirecrackerArun Gupta
 
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 2019Arun Gupta
 
Why Amazon Cares about Open Source
Why Amazon Cares about Open SourceWhy Amazon Cares about Open Source
Why Amazon Cares about Open SourceArun Gupta
 
Machine learning using Kubernetes
Machine learning using KubernetesMachine learning using Kubernetes
Machine learning using KubernetesArun Gupta
 
Building Cloud Native Applications
Building Cloud Native ApplicationsBuilding Cloud Native Applications
Building Cloud Native ApplicationsArun Gupta
 
Chaos Engineering with Kubernetes
Chaos Engineering with KubernetesChaos Engineering with Kubernetes
Chaos Engineering with KubernetesArun Gupta
 
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 STEAMArun Gupta
 
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 2018Arun Gupta
 
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 KeynoteArun Gupta
 
Introduction to Amazon EKS - KubeCon 2018
Introduction to Amazon EKS - KubeCon 2018Introduction to Amazon EKS - KubeCon 2018
Introduction to Amazon EKS - KubeCon 2018Arun Gupta
 
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 SummitArun Gupta
 
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 LandscapeArun Gupta
 
Container Landscape in 2017
Container Landscape in 2017Container Landscape in 2017
Container Landscape in 2017Arun Gupta
 
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 OpenShiftArun Gupta
 
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 developersArun Gupta
 
Thanks Managers!
Thanks Managers!Thanks Managers!
Thanks Managers!Arun Gupta
 
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 ContainersArun Gupta
 

Mehr von 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
 

Kürzlich hochgeladen

Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
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 2024Rafal Los
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 

Kürzlich hochgeladen (20)

Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
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
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 

The Java EE 7 Platform: Developing for the Cloud

  • 1. The Java EE 7 Platform: Developing for the Cloud Arun Gupta, Java EE & GlassFish Guy blogs.oracle.com/arungupta, @arungupta 1 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 2. Java EE 6 Implementations Fastest implementations of a Java EE release ever! 2 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 3. Java EE – Developer Adoption Downloads 40 Million+ 45 Millions 40 35 30 25 20 15 10 5 0 FY 06 FY 07 FY 08 FY 09 FY 10 FY 11 FY 12 3 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 4. And Today’s Cloud Offerings Are Vendor- Specific Infrastructure as Platform as Software as a Service a Service a Service … 4 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 5. Java EE 7 5 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 6. Java EE 7 Focus: Platform as a Service • Provide way for customers and users to leverage public, private, and hybrid clouds • PaaS support entails evolutionary change • Next logical step for Java EE – J2EE  Java EE 6 : The Java EE Platform provides services – Java EE 7 : The Java EE Platform IS a service 6 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 7. Java EE 7 PaaS Roadmap • Define new platform roles to accommodate PaaS model • Add metadata – For service provisioning and configuration – For QoS, elasticity – For sharing of applications and resources – For (re)configurability and customization • Add useful APIs for cloud environment – JAX-RS client API, Caching API, State Management, JSON,… • Extend existing APIs with support for multitenancy 7 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 8. Roles Developer PaaS Provider PaaS Customer/ JVM JVM JVM JVM JVM JVM JVM JVM JVM Tenant Machine Machine Machine PaaS Product Provider JVM JVM JVM JVM JVM JVM JVM JVM JVM Deployer Machine Machine Machine PaaS Account Tenant 1 Tenant 2 Tenant 3 Manager Application Submitter PaaS Administrator Application Administrator 8 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 9. Java EE 7 Focus Area: Cloud Services, Not Just APIs • In the cloud tenant applications Tenant App Tenant App Tenant App consume services Java EE Application Level Services • PaaS administrators host, Queuing Service Persistence Service Caching Service … configure, and manage PaaS Infrastructure Services application and infrastructure Security Provisioning File … services Service Service Service Platform as a Service - Services • Existing APIs in Java EE need to IaaS Infrastructure Services be updated to be service-enabled Virt VIP VLAN Volume LBR … and tenant-aware – Example: pluggable services, late binding Infrastructure as a Service and tenant id injection 9 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 10. Java EE 7 Focus Area: Auto-Provision Services from Application Dependencies • Old Java EE Model 1 Deploy Application (EAR/GAR/SAR …) Cloud Administration Service • Configure Java EE resources – JDBC, JMS etc Provision and Database • Deploy Application EAR 2 Initialize Service • Java EE 7 Model • Provision and deploy application Provision and LDAP 3 resources Initialize Service (e.g. LDAP stripe, data source instantiation and connection …) Provision and Messaging 4 • Extensible Deployment Initialize Service Models Supporting Multiple Provision and Application Frameworks 5 Initialize Container • Spring, Seam, Play … 10 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 11. Services • Cloud apps consume services – Persistence, queueing, mail, caching, … • Service metadata facilitates ease of use when deploying into the cloud @DataSourceDefinition( name=“java:app/jdbc/myDB”, className=“oracle.jdbc.pool.OracleDataSource”, isolationLevel=TRANSACTION_REPEATABLE_READ, initialPoolSize=5 ) 11 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 12. Services • Cloud apps consume services – Persistence, queueing, mail, caching, … • Service metadata facilitates ease of use when deploying into the cloud @JMSConnectionFactory ( name=“java:app/myJMSConnectionFactory”, resourceType=“javax.jms.QueueConnectionFactory”) @JMSDestination( name=“java:app/myQueue”, resourceType=“javax.jms.Queue”) 12 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 13. Services • Cloud apps consume services – Persistence, queueing, mail, caching, … • Service metadata facilitates ease of use when deploying into the cloud @MailSession ( name=“java:app/mailSession”, from=“MyService@ExtraServices.com” ) 13 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 14. Services • Cloud apps consume services – Persistence, queueing, mail, caching, … • Service metadata facilitates ease of use when deploying into the cloud @ConnectorService ( name=“java:app/myCustomConnector”, type=“com.extraServices.customConnector.class”, properties = {…} ) 14 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 15. Java EE 7 Focus Area: Elasticity Java EE 7 Focus: Move the Bar Right Elasticity Continuum Java EE Cluster Elastic Cluster Elastic Cluster Capacity Ca on Demand Single node Java EE Multi-Node Dynamic Self Adjusting Non-Elastic Multi-Instance Clustering SLA Driven Elasticity • Service Levels • Minimum and Maximum Instances • Futures – Self Adjustment, Capacity On Demand 15 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 16. Demo PaaSing a Java EE Application in the Cloud 16 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 17. Conference Planning in the Cloud Java EE Application JSF JPA Deploy Services EJB Metadata <glassfish-services> <service-description init-type="LB" name="ConferencePlanner-lb"> <template id="LBNative"/> <configurations> <configuration name="https-port" value="50443"/> <configuration name="ssl-enabled" value="false"/> <configuration name="http-port" value="50080"/> </configurations></service-description> <service-description init-type="JavaEE" name="ConferencePlanner"> http://glassfish.org/javaone2011 <characteristics> <characteristic name="service-type" value="JavaEE"/> </characteristics> <configurations> <configuration name="max.clustersize" value="4"/> <configuration name="min.clustersize" value="2"/> </configurations> </service-description> ... </glassfish-services> 17 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 18. Service Provisioning Load Balancer Java EE Java EE ... Java EE Database 18 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 19. Multi-tenancy in Java EE 7 • Support for separate isolated instances of the same app for different tenants – One application instance per tenant – Tenants correspond to units of isolation – Multitenant apps are declared as such – Each instance customized and deployed for a single tenant – Limited form of SaaS • Mapping to tenant done by the container • Tenant id available to application – E.g., under java:comp/tenantId or by injection 19 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 20. Java EE 7 Focus Area: Application Level Multi Tenancy • Goal: Simple configuration • Flexible tenant discriminator support • Other areas impacted - JNDI, JMS, EJB … @Entity @Table(name=‚EMP‛) @MultiTenant(SINGLE_TABLE) depart_id DEPT_ID @TenantDiscriminator(name=‚company-id‛, columnName=‚COMPANY‛) public class Employee { EMP EMP_ID VERSION F_NAME L_NAME GENDER DEPT_ID 1 1 John Doe M 1 2 3 Jane Doe F 2 SELECT * FROM EMPLOYEE WHERE L_NAME LIKE ‘D%’ AND DEPT_ID= 1 20 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 21. Persistence Layer Multi-tenant Taxonomies • Dedicated App, Dedicated Database • Shared App, Dedicated Database • Dedicated App, Shared Database • Shared App, Shared Database 21 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 22. Dedicated App, Dedicated Database Persistence Layer Multi-Tenant Taxonomies App is configured for tenant-id at bootstrap and connects to the data source 22 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 23. Shared App, Dedicated Database Persistence Layer Multi-Tenant Taxonomies App knows tenant-id and connects with the tenant-specific data source 23 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 24. Dedicated App, Shared Database Persistence Layer Multi-Tenant Taxonomies Tenant-id configured at bootstrap and connects to tenant-specific table or striped table 24 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 25. Shared App, Shared Database Persistence Layer Multi-Tenant Taxonomies App knows tenant-id and connects to tenant specific table or striped table 25 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 26. Java EE 7 Is Not Just Cloud-y • Alignment of ManagedBeans across CDI, EJB, JSF,… – POJO  ManagedBean  Enterprise JavaBean – Extension of container-managed transactions beyond EJB • Further simplifications for ease-of-development – JMS 2.0 focus on ease-of-development – Expanded use of dependency injection – Expanded service metadata; improved configuration • Pruning – EJB CMP and BMP, JAX-RPC, Deployment API • Update to Web Profile 26 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 27. Java EE 7 JSRs • Platform 7 / Web Profile 7 • JCache 1.0 (JSR 107) • JPA 2.1 • Concurrency Utilities 1.0 • JAX-RS 2.0 • State Management 1.0 • EJB 3.2 • Batch Processing 1.0 • JMS 2.0 • JSON 1.0 • Servlet 3.1 • Common Annotations 1.2 MR • EL 3.0 • JAX-WS 2.3 MR • JSF 2.2 • JTA 1.2 MR • CDI 1.1 • JSP 2.3 MR • Bean Validation 1.1 • JASPIC 1.2 MR 27 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 28. Transparency • Our Java EE 7 JSRs are run in the open on java.net – http://javaee-spec.java.net – One project per spec – e.g., jpa-spec, jax-rs-spec, jms-spec… • Publicly viewable Expert Group mail archive – Users observer list gets copies of all Expert Group emails • Publicly viewable download area • Publicly viewable issue tracker • Commitment to match JCP 2.8 Process 28 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 29. Status and Schedule • Nearly all JSRs up and running • Remaining ones to be filed in next few weeks • Final release target: Q3 2012 • Date-driven release: anything not ready will be deferred to Java EE 8 29 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 30. How to Get in the Loop • Java EE 7 Expert Group Project – http://javaee-spec.java.net • Java EE 7 Reference Implementation – http://glassfish.org • The Aquarium – http://blogs.oracle.com/theaquarium 30 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 31. 31 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.