SlideShare uma empresa Scribd logo
1 de 45
JBoss Application Server /
Enterprise Application Platform
Jasoct
AS Project Lead
…and Java EE 6
May 4, 2011
Dimitris Andreadis

Software Engineering Manager
JBoss Application Server
Agenda

• A Brief History of JBoss AS
• The Path to Java EE6
 • JBoss AS6
 • JBoss AS7
• Enterprise Application Platform 6 (EAP)
• Beyond Java EE6
About Me

JBoss AS, Engineering Manager                dandreadis.blogspot.com

  •2001, JBoss User
  •2003, JBoss Committer
  •2004, JBoss Full-time Core Developer
  •2006, JBoss AS Lead (v3.2.8+, v4.0.4+, v4.2.x, 5.0.x)
  •2009 - present, Manager of JBoss AS Core Team

And before JBoss?
 •7y experience in distributed systems (telcos, NMS/OSS)
 •BSc/MSc Computer Science (Athens/Dublin)
Agenda

• A Brief History of JBoss AS
• The Path to Java EE6
 • JBoss AS6
 • JBoss AS7
• Enterprise Application Platform 6 (EAP)
• Beyond Java EE6
JBoss AS Timeline
                                                                                                   JavaEE 6 Web Profile, JDK6
                                                                                                   Modular Service Container Architecture


                                                                                    JavaEE 6 Web Profile, JDK6
                                                                                                                           JBoss AS 7.0, 7.0.1, 7.0.2


                                                                                                                  JBoss AS 6.0, 6.1
                                           JavaEE 5 certification, JDK5 & 6
                                           MicroContainer Architecture
                                                                                                   JBoss AS 5.1


                  J2EE 1.4 certification                      JBoss AS 5: 5.0.0.GA, 5.0.1.GA
                  JDK 1.4
 JBoss Versions




                                                                        JBoss AS 4.2.0 – 4.2.3


                                       JBoss AS 4.0.0     – 4.0.5                JEE 5.0 compatible,
                                                                                 not certified (95% pass)
                                                                                 JDK5.0
                         JBoss AS 3.2.0     –     3.2.8
                                                                                                       Time

                  2003         2004             2005       2006         2007         2008          2009           2010        2011

                                    J2EE 1.3, JDK 1.3
                                    JMX MicroKernel Architecture
Agenda

• A Brief History of JBoss AS
• The Path to Java EE6
 • JBoss AS6
 • JBoss AS7
• Enterprise Application Platform 6 (EAP)
• Beyond Java EE6
JBoss AS 6.0/6.1 – Java EE6

• JBoss AS 6.0/6.1
  • Java EE6 Web Profile++ (or EE6 Full--)
  • Based on the 5.x Microcontainer
  • More lightweight than AS5

• New Stuff
  •   HornetQ (Messaging)
  •   Infinispan (Caching)
  •   Apache CXF (Web Services)
  •   mod_cluster
  •   …
JBoss AS 6.0/6.1 – Java EE6 (cont.)

• JBoss AS 6.0/6.1
  •   Deliver faster on Java EE6
  •   Stepping stone for AS7/EAP6
  •   Baking time for EE subsystems
  •   Measure interest on EE profiles


• Gotchas
  • JBoss AS6 will *not* be productized!
  • Currently in community maintenance mode
Planning for AS 7.0

• A hard look at the mirror
  •   Excess baggage (legacy subsystems and abstractions)
  •   Boot time & memory footprint
  •   Embeadability/testability
  •   Administration options


• It’s “free” and it doesn’t suck not enough anymore
  • Give me my Mojo back!
Planning for AS 7.0 (cont.)

• Major Goals
  • Make it Smaller, Faster, Sexier
  • Improve Manageability
  • Simplify Configuration

• Clean things up!
  • Remove abstraction layers
  • Remove legacy stuff
  • Modularize
Agenda

• A Brief History of JBoss AS
• The Path to Java EE6
 • JBoss AS6
 • JBoss AS7
• Enterprise Application Platform 6 (EAP)
• Beyond Java EE6
Introducing JBoss AS 7*!

• AS 7.0 – released Jul/2011
 • EE6 – Web Profile (+JCA, +JAX-RS) certified
 • EE6 “everything” distro

• AS 7.0.1 – released Aug/2011
 • MDB support, JSR-88, JPA w. older Hibernate 3

• AS 7.0.2 – released Sep/2011
 • JSF 2.1, @Asynchronous, PicketLink SSO, etc.


                      *A blazingly fast modular lightweight elegantly administrable
                           compliant application server with easy testing facilities!
AS7 Key Features

• Fast and Lightweight
• Modular, OSGi enabled
• Unified, user focused configuration
• Multiple management interfaces
• Support for multi-node management
AS7 Architecture
                                         JBoss
               MSC                                                          DMR                          Controller                                Threads
                                        Modules


                                                     Server Controller Service

        Deployers                       VFS                      Jandex                      Reflect Cache                                      Repository

                                                                 Core Infrastructure




                                                                                                              FS Secanner

                                                                                                                            Transaction
               Datasource




                                                     Messaging
   Connector




                                                                                  Remoting



                                                                                                   Security




                                                                                                                                                       JAX-RS
                                                                  Naming

                                                                           OSGi
                                 EJB3

                                        Weld




                                                                                             SAR




                                                                                                                                          Web




                                                                                                                                                                JMX
                                               JPA




                                                                                                                                                  WS
                            EE




                                                                       Subsystems
MSC Architecture


                     Service Builder


                    Service Registry


                    Service Controller


   Service   Deps         Value        Listeners   Injectors


              Concurrent Service Container
Key attributes of MSC

Small, lightweight, and efficient
   •216K JAR, Tiny memory overhead
Highly concurrent & scalable state machine
   •State transitions are “tasks”
Services are primarily interface based
   •No reflection or XML required!
Only two non-error, non-transition states
   •UP & DOWN
Multiple startup modes
   •Active, Passive, On-Demand, Lazy, Never
#@*%ing fast!




   http://community.jboss.org/wiki/AS7StartupTimeShowdown
Boot Time Results
Memory Comparison
How is it done?

• Concurrent startup/deployments
• Faster resource lookup/classloading
• Annotation indexing
• Caching reflection metadata
• Lazy loading of (some) services
• StAX based descriptor parsing
• Starting from scratch 
Modularity
Modularity - JBoss Modules
Small, lightweight, and efficient
   •O(1) Dep resolution
   •Concurrent class loading (lockless on most VMs)
   •207k JAR
“Pure” modular class loading
   •Modules only see what they import (includes JDK classes!)
External module definitions
   •Don’t have to break open the JAR
Dynamic
   •Modules can be redefined
Extensible
   •JBoss OSGi implemented on modules
modulesorghornetqmainmodule.xml
<module xmlns="urn:jboss:module:1.0" name="org.hornetq">
  <resources>
    <resource-root path="hornetq-core-2.2.7.Final.jar"/>
    <resource-root path="hornetq-jms-2.2.7.Final.jar"/>
</resources>


  <dependencies>
    <module name="javax.api"/>
    <module name="javax.jms.api" />
    <module name="org.jboss.jts"/>
    <module name="org.jboss.netty"/>
  </dependencies>
</module>
Two Operational Modes

Standalone
  •Traditional JBoss single JVM server
  •Management facilities IN-VM
  •No lifecycle management (only shutdown)
Domain
  •Multi-JVM, multi-server model
  •Management coordinated by Domain Controller Process
  •Multiple server instances (JVMs) per Host
  •Full lifecycle managed by Process Controller
Domain Mode Physical Topology
Filesystem Layout
  jboss-7.1.x
    bin
          standalone.conf        Standalone Mode JVM Parameters

          standalone.sh          Standalone Mode

          domain.sh              Domain Mode
          jboss-admin.sh         Command Line Interface

    bundles      OSGi Bundles

                 Static JBoss Module Definitions
    modules
    standalone
          configuration
                    standalone.xml     Standalone Unified Configuration
          deployments                  File System Deployment
          logs
          data                         Internal Data (includes repository)
Filesystem Layout (cont)

   jboss-7.1.x
     domain
           configuration
                     standalone.xml   Domain Wide Unified Configuration
                     host.xml         Host Controller Configuration

           servers
                     server-one       Server “One” JVM instance data
                              logs
                              data
                     server-two       Server “Two” JVM instance data
                              logs
                              data
User-focused Configuration
<bean name="TransactionManager" class="com.arjuna.ats.jbossatx.jta.TransactionManagerService">
    <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss:service=TransactionManager",
exposedInterface=com.arjuna.ats.jbossatx.jta.TransactionManagerServiceMBean.class, registerDirectly=true)</annotation>

<annotation>@org.jboss.managed.api.annotation.ManagementObject(name="TransactionManager",componentType=@org.jb
oss.managed.api.annotation.ManagementComponent(type = "MCBean", subtype =
"JTA"),targetInterface=com.arjuna.ats.jbossatx.jta.TransactionManagerServiceMBean.class)
     </annotation>

    <property name="transactionTimeout">300</property>
    <property name="objectStoreDir">${jboss.server.data.dir}/tx-object-store</property>




<subsystem xmlns="urn:jboss:domain:transactions:1.0">
       <recovery-environment socket-binding="txn-recovery-environment"
                status-socket-binding="txn-status-manager"/>
       <core-environment socket-binding="txn-socket-process-id"/>
</subsystem>
Management APIs

• Command Line Interface (CLI)
• Remote Java API
• HTTP/JSON API
• GWT-based console
Dynamic Model Representation (DMR)

• Central Detyped Management API
   •All management operations operate with/on DMR
   •Strictly backwards compatible
• Represents simple and complex types
   •int, long, big int, double, big dec, boolean, string, bytes, list,
   object, property, expression
• Auto-converts like dynamic languages
• Self describing
• Convertible to/from JSON
• Also has a defined binary protocol (optionally b64)
Roadmap

AS 7.0.2 last version of 7.0 series


AS 7.1 – Targeting EE 6 Full Profile
   • 7.1 Alpha, really soon
   • 7.1 Beta, Oct/2011
   • 7.1 CR/Final, end of 2011

JBoss AS 7.1 will be the base for JBoss
  Enterprise Application Platform 6 (EAP)
Agenda

• A Brief History of JBoss AS
• The Path to Java EE6
 • JBoss AS6
 • JBoss AS7
• Enterprise Application Platform 6 (EAP)
• Beyond Java EE6
The Community JBoss Application Server (AS)
vs. the Enterprise Application Platform (EAP)


• Community Project (JBoss AS)
  •- JBoss As We Know It
  •- Sponsored by JBoss/Red Hat
  •- Allow innovation at a faster pace


• Enterprise Application Platform (EAP)
  •- Forks the community project at stable points
  •- Integrates with JBoss Developer Studio / JBoss Operations Network
  •- Rigorously tested (performance, scalability, SpecJ, etc.)
  •- Certified on multiple OS, JVM, DBs combinations
  •- Cumulative Patch cycles
  •- Supported for 5 + 2 years.
JBoss AS vs JBoss EAP
Agenda

• A Brief History of JBoss AS
• The Path to Java EE6
 • JBoss AS6
 • JBoss AS7
• Enterprise Application Platform 6 (EAP)
• Beyond Java EE6
AS7 PaaS - www.jboss.org/openshift.html
dimitris.andreadis@redhat.com   http://dandreadis.blogspot.com

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

January OpenNTF Webinar - Backup your Domino Server - New Options in V12
January OpenNTF Webinar - Backup your Domino Server - New Options in V12January OpenNTF Webinar - Backup your Domino Server - New Options in V12
January OpenNTF Webinar - Backup your Domino Server - New Options in V12
 
R12.2 dba
R12.2 dbaR12.2 dba
R12.2 dba
 
Solr Presentation
Solr PresentationSolr Presentation
Solr Presentation
 
VMware ESXi 6.0 Installation Process
VMware ESXi 6.0 Installation ProcessVMware ESXi 6.0 Installation Process
VMware ESXi 6.0 Installation Process
 
Domino Server Health - Monitoring and Managing
 Domino Server Health - Monitoring and Managing Domino Server Health - Monitoring and Managing
Domino Server Health - Monitoring and Managing
 
IBM Spectrum Scale Authentication For Object - Deep Dive
IBM Spectrum Scale Authentication For Object - Deep Dive IBM Spectrum Scale Authentication For Object - Deep Dive
IBM Spectrum Scale Authentication For Object - Deep Dive
 
Spring Boot and REST API
Spring Boot and REST APISpring Boot and REST API
Spring Boot and REST API
 
IBM Notes Traveler Administration and Log Troubleshooting tips - Part 2
IBM Notes Traveler Administration and Log Troubleshooting tips - Part 2IBM Notes Traveler Administration and Log Troubleshooting tips - Part 2
IBM Notes Traveler Administration and Log Troubleshooting tips - Part 2
 
Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...
Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...
Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...
 
Postman Collection Format v2.0 (pre-draft)
Postman Collection Format v2.0 (pre-draft)Postman Collection Format v2.0 (pre-draft)
Postman Collection Format v2.0 (pre-draft)
 
Expressjs
ExpressjsExpressjs
Expressjs
 
Monitoramento de Bancos de Dados MS SQL Server com Zabbix - SQL Technology Da...
Monitoramento de Bancos de Dados MS SQL Server com Zabbix - SQL Technology Da...Monitoramento de Bancos de Dados MS SQL Server com Zabbix - SQL Technology Da...
Monitoramento de Bancos de Dados MS SQL Server com Zabbix - SQL Technology Da...
 
June OpenNTF Webinar - Domino V12 Certification Manager
June OpenNTF Webinar - Domino V12 Certification ManagerJune OpenNTF Webinar - Domino V12 Certification Manager
June OpenNTF Webinar - Domino V12 Certification Manager
 
Engage 2015 - 10 Mistakes You and Every XPages Developer Make. Yes, I said YOU!
Engage 2015 - 10 Mistakes You and Every XPages Developer Make. Yes, I said YOU!Engage 2015 - 10 Mistakes You and Every XPages Developer Make. Yes, I said YOU!
Engage 2015 - 10 Mistakes You and Every XPages Developer Make. Yes, I said YOU!
 
Express js
Express jsExpress js
Express js
 
OMEGAMON XE for z/OS V530 Long client presentation
OMEGAMON XE for z/OS V530 Long client presentationOMEGAMON XE for z/OS V530 Long client presentation
OMEGAMON XE for z/OS V530 Long client presentation
 
introduction and configuration of IIS (in addition with printer)
introduction and configuration of IIS (in addition with printer)introduction and configuration of IIS (in addition with printer)
introduction and configuration of IIS (in addition with printer)
 
Getting Started with Infrastructure as Code
Getting Started with Infrastructure as CodeGetting Started with Infrastructure as Code
Getting Started with Infrastructure as Code
 
HCL Sametime V11 installation - tips
HCL Sametime V11 installation - tipsHCL Sametime V11 installation - tips
HCL Sametime V11 installation - tips
 
CUST-10 Customizing the Upload File(s) dialog in Alfresco Share
CUST-10 Customizing the Upload File(s) dialog in Alfresco ShareCUST-10 Customizing the Upload File(s) dialog in Alfresco Share
CUST-10 Customizing the Upload File(s) dialog in Alfresco Share
 

Destaque

EAP6 performance Tuning
EAP6 performance TuningEAP6 performance Tuning
EAP6 performance Tuning
Praveen Adupa
 
JBoss Enterprise Overview by Quinten Laureijs
JBoss Enterprise Overview by Quinten LaureijsJBoss Enterprise Overview by Quinten Laureijs
JBoss Enterprise Overview by Quinten Laureijs
Joram Barrez
 
JBoss AS7 Overview
JBoss AS7 OverviewJBoss AS7 Overview
JBoss AS7 Overview
JBug Italy
 

Destaque (20)

JBoss Enterprise Application Platform 6 Troubleshooting
JBoss Enterprise Application Platform 6 TroubleshootingJBoss Enterprise Application Platform 6 Troubleshooting
JBoss Enterprise Application Platform 6 Troubleshooting
 
JBoss AS 7
JBoss AS 7JBoss AS 7
JBoss AS 7
 
EAP6 performance Tuning
EAP6 performance TuningEAP6 performance Tuning
EAP6 performance Tuning
 
J boss
J bossJ boss
J boss
 
JBoss at Work: Using JBoss AS 6
JBoss at Work: Using JBoss AS 6JBoss at Work: Using JBoss AS 6
JBoss at Work: Using JBoss AS 6
 
JBoss AS web services - Curso JBoss JB366 Día 4
JBoss AS web services - Curso JBoss JB366 Día 4 JBoss AS web services - Curso JBoss JB366 Día 4
JBoss AS web services - Curso JBoss JB366 Día 4
 
Monitoring Oracle SOA Suite - UKOUG Tech15 2015
Monitoring Oracle SOA Suite - UKOUG Tech15 2015Monitoring Oracle SOA Suite - UKOUG Tech15 2015
Monitoring Oracle SOA Suite - UKOUG Tech15 2015
 
JBoss AS: Desarrollo con JBoss Portal 2.6.1GA “Ninja”
JBoss AS: Desarrollo con JBoss Portal 2.6.1GA “Ninja”JBoss AS: Desarrollo con JBoss Portal 2.6.1GA “Ninja”
JBoss AS: Desarrollo con JBoss Portal 2.6.1GA “Ninja”
 
JBoss Analyst tour Sept 2003
JBoss Analyst tour Sept 2003JBoss Analyst tour Sept 2003
JBoss Analyst tour Sept 2003
 
Jboss App Server
Jboss App ServerJboss App Server
Jboss App Server
 
The JBoss Way, the Added Value of Open Source Middleware
The JBoss Way, the Added Value of Open Source MiddlewareThe JBoss Way, the Added Value of Open Source Middleware
The JBoss Way, the Added Value of Open Source Middleware
 
JBoss presentation 2003 11 for matrix
JBoss presentation 2003 11 for matrixJBoss presentation 2003 11 for matrix
JBoss presentation 2003 11 for matrix
 
JBoss Enterprise Overview by Quinten Laureijs
JBoss Enterprise Overview by Quinten LaureijsJBoss Enterprise Overview by Quinten Laureijs
JBoss Enterprise Overview by Quinten Laureijs
 
JBoss AS7 Overview
JBoss AS7 OverviewJBoss AS7 Overview
JBoss AS7 Overview
 
JBoss AS7 Reloaded
JBoss AS7 ReloadedJBoss AS7 Reloaded
JBoss AS7 Reloaded
 
What is Kernel, basic idea of kernel
What is Kernel, basic idea of kernelWhat is Kernel, basic idea of kernel
What is Kernel, basic idea of kernel
 
What makes JBoss AS7 tick?
What makes JBoss AS7 tick?What makes JBoss AS7 tick?
What makes JBoss AS7 tick?
 
JBoss BRMS - The enterprise platform for business logic
JBoss BRMS - The enterprise platform for business logicJBoss BRMS - The enterprise platform for business logic
JBoss BRMS - The enterprise platform for business logic
 
Kernel mode vs user mode in linux
Kernel mode vs user mode in linuxKernel mode vs user mode in linux
Kernel mode vs user mode in linux
 
WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)
WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)
WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)
 

Semelhante a JBoss AS / EAP and Java EE6

Java EE 6 Component Model Explained
Java EE 6 Component Model Explained Java EE 6 Component Model Explained
Java EE 6 Component Model Explained
Shreedhar Ganapathy
 
Understanding the nuts & bolts of Java EE 6
Understanding the nuts & bolts of Java EE 6Understanding the nuts & bolts of Java EE 6
Understanding the nuts & bolts of Java EE 6
Arun Gupta
 
Andrei Niculae - JavaEE6 - 24mai2011
Andrei Niculae - JavaEE6 - 24mai2011Andrei Niculae - JavaEE6 - 24mai2011
Andrei Niculae - JavaEE6 - 24mai2011
Agora Group
 

Semelhante a JBoss AS / EAP and Java EE6 (20)

Server Day 2009: JBoss 5.0 by Alessio Soldano
Server Day 2009: JBoss 5.0 by Alessio SoldanoServer Day 2009: JBoss 5.0 by Alessio Soldano
Server Day 2009: JBoss 5.0 by Alessio Soldano
 
soft-shake.ch - JBoss AS 7, la révolution
soft-shake.ch - JBoss AS 7, la révolutionsoft-shake.ch - JBoss AS 7, la révolution
soft-shake.ch - JBoss AS 7, la révolution
 
Spark IT 2011 - Java EE 6 Workshop
Spark IT 2011 - Java EE 6 WorkshopSpark IT 2011 - Java EE 6 Workshop
Spark IT 2011 - Java EE 6 Workshop
 
JBoss AS 7, la révolution
JBoss AS 7, la révolutionJBoss AS 7, la révolution
JBoss AS 7, la révolution
 
Java EE 6 Component Model Explained
Java EE 6 Component Model Explained Java EE 6 Component Model Explained
Java EE 6 Component Model Explained
 
Understanding the nuts & bolts of Java EE 6
Understanding the nuts & bolts of Java EE 6Understanding the nuts & bolts of Java EE 6
Understanding the nuts & bolts of Java EE 6
 
Java EE6 Overview
Java EE6 OverviewJava EE6 Overview
Java EE6 Overview
 
Java EE 6 Aquarium Paris
Java EE 6 Aquarium ParisJava EE 6 Aquarium Paris
Java EE 6 Aquarium Paris
 
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!
 
Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010
Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010
Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010
 
Glass Fishv3 March2010
Glass Fishv3 March2010Glass Fishv3 March2010
Glass Fishv3 March2010
 
The Java Ee 6 Platform Normandy Jug
The Java Ee 6 Platform Normandy JugThe Java Ee 6 Platform Normandy Jug
The Java Ee 6 Platform Normandy Jug
 
Andrei Niculae - JavaEE6 - 24mai2011
Andrei Niculae - JavaEE6 - 24mai2011Andrei Niculae - JavaEE6 - 24mai2011
Andrei Niculae - JavaEE6 - 24mai2011
 
JavaEE 6 and GlassFish v3 at SFJUG
JavaEE 6 and GlassFish v3 at SFJUGJavaEE 6 and GlassFish v3 at SFJUG
JavaEE 6 and GlassFish v3 at SFJUG
 
Java EE 6
Java EE 6Java EE 6
Java EE 6
 
Java EE 6 & GlassFish 3
Java EE 6 & GlassFish 3Java EE 6 & GlassFish 3
Java EE 6 & GlassFish 3
 
WildFly AppServer - State of the Union
WildFly AppServer - State of the UnionWildFly AppServer - State of the Union
WildFly AppServer - State of the Union
 
Jboss
JbossJboss
Jboss
 
Java EE 7 - Into the Cloud
Java EE 7 - Into the CloudJava EE 7 - Into the Cloud
Java EE 7 - Into the Cloud
 
Java EE 6 : Paving The Path For The Future
Java EE 6 : Paving The Path For The FutureJava EE 6 : Paving The Path For The Future
Java EE 6 : Paving The Path For The Future
 

Mais de Dimitris Andreadis

Mais de Dimitris Andreadis (10)

Turn you Java EE Monoliths into Microservices with WildFly Swarm
Turn you Java EE Monoliths into Microservices with WildFly SwarmTurn you Java EE Monoliths into Microservices with WildFly Swarm
Turn you Java EE Monoliths into Microservices with WildFly Swarm
 
WildFly & WildFly Swarm
WildFly & WildFly SwarmWildFly & WildFly Swarm
WildFly & WildFly Swarm
 
WildFly v9 - State of the Union Session at Voxxed, Istanbul, May/9th 2015.
WildFly v9 - State of the Union Session at Voxxed, Istanbul, May/9th 2015.WildFly v9 - State of the Union Session at Voxxed, Istanbul, May/9th 2015.
WildFly v9 - State of the Union Session at Voxxed, Istanbul, May/9th 2015.
 
Secrets of Successful OpenSource Developers, Ignite Session @ Devoxx 2014
Secrets of Successful OpenSource Developers, Ignite Session @ Devoxx 2014Secrets of Successful OpenSource Developers, Ignite Session @ Devoxx 2014
Secrets of Successful OpenSource Developers, Ignite Session @ Devoxx 2014
 
WildFly BOF and V9 update @ Devoxx 2014
WildFly BOF and V9 update @ Devoxx 2014WildFly BOF and V9 update @ Devoxx 2014
WildFly BOF and V9 update @ Devoxx 2014
 
Introduction to Role Based Administration in WildFly 8
Introduction to Role Based Administration in WildFly 8Introduction to Role Based Administration in WildFly 8
Introduction to Role Based Administration in WildFly 8
 
Devoxx 2013, WildFly BOF
Devoxx 2013, WildFly BOFDevoxx 2013, WildFly BOF
Devoxx 2013, WildFly BOF
 
2012 Devoxx - JBossAS BOF
2012 Devoxx - JBossAS BOF2012 Devoxx - JBossAS BOF
2012 Devoxx - JBossAS BOF
 
jboss.org-jboss.com
jboss.org-jboss.comjboss.org-jboss.com
jboss.org-jboss.com
 
7 secrets of successful opensource developers
7 secrets of successful opensource developers7 secrets of successful opensource developers
7 secrets of successful opensource developers
 

Último

Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Peter Udo Diehl
 

Último (20)

What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
Intro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджераIntro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджера
 
The UX of Automation by AJ King, Senior UX Researcher, Ocado
The UX of Automation by AJ King, Senior UX Researcher, OcadoThe UX of Automation by AJ King, Senior UX Researcher, Ocado
The UX of Automation by AJ King, Senior UX Researcher, Ocado
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
 
Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdf
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 

JBoss AS / EAP and Java EE6

  • 1. JBoss Application Server / Enterprise Application Platform Jasoct AS Project Lead …and Java EE 6 May 4, 2011 Dimitris Andreadis Software Engineering Manager JBoss Application Server
  • 2. Agenda • A Brief History of JBoss AS • The Path to Java EE6 • JBoss AS6 • JBoss AS7 • Enterprise Application Platform 6 (EAP) • Beyond Java EE6
  • 3. About Me JBoss AS, Engineering Manager dandreadis.blogspot.com •2001, JBoss User •2003, JBoss Committer •2004, JBoss Full-time Core Developer •2006, JBoss AS Lead (v3.2.8+, v4.0.4+, v4.2.x, 5.0.x) •2009 - present, Manager of JBoss AS Core Team And before JBoss? •7y experience in distributed systems (telcos, NMS/OSS) •BSc/MSc Computer Science (Athens/Dublin)
  • 4. Agenda • A Brief History of JBoss AS • The Path to Java EE6 • JBoss AS6 • JBoss AS7 • Enterprise Application Platform 6 (EAP) • Beyond Java EE6
  • 5. JBoss AS Timeline JavaEE 6 Web Profile, JDK6 Modular Service Container Architecture JavaEE 6 Web Profile, JDK6 JBoss AS 7.0, 7.0.1, 7.0.2 JBoss AS 6.0, 6.1 JavaEE 5 certification, JDK5 & 6 MicroContainer Architecture JBoss AS 5.1 J2EE 1.4 certification JBoss AS 5: 5.0.0.GA, 5.0.1.GA JDK 1.4 JBoss Versions JBoss AS 4.2.0 – 4.2.3 JBoss AS 4.0.0 – 4.0.5 JEE 5.0 compatible, not certified (95% pass) JDK5.0 JBoss AS 3.2.0 – 3.2.8 Time 2003 2004 2005 2006 2007 2008 2009 2010 2011 J2EE 1.3, JDK 1.3 JMX MicroKernel Architecture
  • 6. Agenda • A Brief History of JBoss AS • The Path to Java EE6 • JBoss AS6 • JBoss AS7 • Enterprise Application Platform 6 (EAP) • Beyond Java EE6
  • 7. JBoss AS 6.0/6.1 – Java EE6 • JBoss AS 6.0/6.1 • Java EE6 Web Profile++ (or EE6 Full--) • Based on the 5.x Microcontainer • More lightweight than AS5 • New Stuff • HornetQ (Messaging) • Infinispan (Caching) • Apache CXF (Web Services) • mod_cluster • …
  • 8. JBoss AS 6.0/6.1 – Java EE6 (cont.) • JBoss AS 6.0/6.1 • Deliver faster on Java EE6 • Stepping stone for AS7/EAP6 • Baking time for EE subsystems • Measure interest on EE profiles • Gotchas • JBoss AS6 will *not* be productized! • Currently in community maintenance mode
  • 9. Planning for AS 7.0 • A hard look at the mirror • Excess baggage (legacy subsystems and abstractions) • Boot time & memory footprint • Embeadability/testability • Administration options • It’s “free” and it doesn’t suck not enough anymore • Give me my Mojo back!
  • 10. Planning for AS 7.0 (cont.) • Major Goals • Make it Smaller, Faster, Sexier • Improve Manageability • Simplify Configuration • Clean things up! • Remove abstraction layers • Remove legacy stuff • Modularize
  • 11. Agenda • A Brief History of JBoss AS • The Path to Java EE6 • JBoss AS6 • JBoss AS7 • Enterprise Application Platform 6 (EAP) • Beyond Java EE6
  • 12.
  • 13. Introducing JBoss AS 7*! • AS 7.0 – released Jul/2011 • EE6 – Web Profile (+JCA, +JAX-RS) certified • EE6 “everything” distro • AS 7.0.1 – released Aug/2011 • MDB support, JSR-88, JPA w. older Hibernate 3 • AS 7.0.2 – released Sep/2011 • JSF 2.1, @Asynchronous, PicketLink SSO, etc. *A blazingly fast modular lightweight elegantly administrable compliant application server with easy testing facilities!
  • 14. AS7 Key Features • Fast and Lightweight • Modular, OSGi enabled • Unified, user focused configuration • Multiple management interfaces • Support for multi-node management
  • 15. AS7 Architecture JBoss MSC DMR Controller Threads Modules Server Controller Service Deployers VFS Jandex Reflect Cache Repository Core Infrastructure FS Secanner Transaction Datasource Messaging Connector Remoting Security JAX-RS Naming OSGi EJB3 Weld SAR Web JMX JPA WS EE Subsystems
  • 16. MSC Architecture Service Builder Service Registry Service Controller Service Deps Value Listeners Injectors Concurrent Service Container
  • 17. Key attributes of MSC Small, lightweight, and efficient •216K JAR, Tiny memory overhead Highly concurrent & scalable state machine •State transitions are “tasks” Services are primarily interface based •No reflection or XML required! Only two non-error, non-transition states •UP & DOWN Multiple startup modes •Active, Passive, On-Demand, Lazy, Never
  • 18. #@*%ing fast! http://community.jboss.org/wiki/AS7StartupTimeShowdown
  • 21. How is it done? • Concurrent startup/deployments • Faster resource lookup/classloading • Annotation indexing • Caching reflection metadata • Lazy loading of (some) services • StAX based descriptor parsing • Starting from scratch 
  • 23. Modularity - JBoss Modules Small, lightweight, and efficient •O(1) Dep resolution •Concurrent class loading (lockless on most VMs) •207k JAR “Pure” modular class loading •Modules only see what they import (includes JDK classes!) External module definitions •Don’t have to break open the JAR Dynamic •Modules can be redefined Extensible •JBoss OSGi implemented on modules
  • 24. modulesorghornetqmainmodule.xml <module xmlns="urn:jboss:module:1.0" name="org.hornetq"> <resources> <resource-root path="hornetq-core-2.2.7.Final.jar"/> <resource-root path="hornetq-jms-2.2.7.Final.jar"/> </resources> <dependencies> <module name="javax.api"/> <module name="javax.jms.api" /> <module name="org.jboss.jts"/> <module name="org.jboss.netty"/> </dependencies> </module>
  • 25. Two Operational Modes Standalone •Traditional JBoss single JVM server •Management facilities IN-VM •No lifecycle management (only shutdown) Domain •Multi-JVM, multi-server model •Management coordinated by Domain Controller Process •Multiple server instances (JVMs) per Host •Full lifecycle managed by Process Controller
  • 27. Filesystem Layout jboss-7.1.x bin standalone.conf Standalone Mode JVM Parameters standalone.sh Standalone Mode domain.sh Domain Mode jboss-admin.sh Command Line Interface bundles OSGi Bundles Static JBoss Module Definitions modules standalone configuration standalone.xml Standalone Unified Configuration deployments File System Deployment logs data Internal Data (includes repository)
  • 28. Filesystem Layout (cont) jboss-7.1.x domain configuration standalone.xml Domain Wide Unified Configuration host.xml Host Controller Configuration servers server-one Server “One” JVM instance data logs data server-two Server “Two” JVM instance data logs data
  • 29. User-focused Configuration <bean name="TransactionManager" class="com.arjuna.ats.jbossatx.jta.TransactionManagerService"> <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss:service=TransactionManager", exposedInterface=com.arjuna.ats.jbossatx.jta.TransactionManagerServiceMBean.class, registerDirectly=true)</annotation> <annotation>@org.jboss.managed.api.annotation.ManagementObject(name="TransactionManager",componentType=@org.jb oss.managed.api.annotation.ManagementComponent(type = "MCBean", subtype = "JTA"),targetInterface=com.arjuna.ats.jbossatx.jta.TransactionManagerServiceMBean.class) </annotation> <property name="transactionTimeout">300</property> <property name="objectStoreDir">${jboss.server.data.dir}/tx-object-store</property> <subsystem xmlns="urn:jboss:domain:transactions:1.0"> <recovery-environment socket-binding="txn-recovery-environment" status-socket-binding="txn-status-manager"/> <core-environment socket-binding="txn-socket-process-id"/> </subsystem>
  • 30. Management APIs • Command Line Interface (CLI) • Remote Java API • HTTP/JSON API • GWT-based console
  • 31. Dynamic Model Representation (DMR) • Central Detyped Management API •All management operations operate with/on DMR •Strictly backwards compatible • Represents simple and complex types •int, long, big int, double, big dec, boolean, string, bytes, list, object, property, expression • Auto-converts like dynamic languages • Self describing • Convertible to/from JSON • Also has a defined binary protocol (optionally b64)
  • 32. Roadmap AS 7.0.2 last version of 7.0 series AS 7.1 – Targeting EE 6 Full Profile • 7.1 Alpha, really soon • 7.1 Beta, Oct/2011 • 7.1 CR/Final, end of 2011 JBoss AS 7.1 will be the base for JBoss Enterprise Application Platform 6 (EAP)
  • 33. Agenda • A Brief History of JBoss AS • The Path to Java EE6 • JBoss AS6 • JBoss AS7 • Enterprise Application Platform 6 (EAP) • Beyond Java EE6
  • 34. The Community JBoss Application Server (AS) vs. the Enterprise Application Platform (EAP) • Community Project (JBoss AS) •- JBoss As We Know It •- Sponsored by JBoss/Red Hat •- Allow innovation at a faster pace • Enterprise Application Platform (EAP) •- Forks the community project at stable points •- Integrates with JBoss Developer Studio / JBoss Operations Network •- Rigorously tested (performance, scalability, SpecJ, etc.) •- Certified on multiple OS, JVM, DBs combinations •- Cumulative Patch cycles •- Supported for 5 + 2 years.
  • 35. JBoss AS vs JBoss EAP
  • 36.
  • 37. Agenda • A Brief History of JBoss AS • The Path to Java EE6 • JBoss AS6 • JBoss AS7 • Enterprise Application Platform 6 (EAP) • Beyond Java EE6
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44. AS7 PaaS - www.jboss.org/openshift.html
  • 45. dimitris.andreadis@redhat.com http://dandreadis.blogspot.com