SlideShare una empresa de Scribd logo
1 de 52
JBoss Application Server 7
Jasoct
AS Project Lead

Dimitris Andreadis
May 4, 2011
Engineering Manager
JBoss Application Server
2
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 Application Server 7
 • Architecture
 • Modularity
 • Management
• Enterprise Application Platform 6 (EAP)
JBoss AS Timeline
                                                                                                   JavaEE 6 Web Profile, JDK6/JDK7
                                                                                                   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
Andiamo



      Java EE 6
The path to Java EE6

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


• New Stuff
  •   HornetQ (Messaging)
  •   Infinispan (Caching)
  •   Apache CXF (Web Services)
  •   Embedded Jopr Console
  •   mod_cluster
The path to Java EE6 (cont.)

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

• Gotchas
  • JBoss AS6 will *not* be productized!
  • Currently in community maintenance mode
…in the meantime
A hard look in the mirror

• Typical Pain Points
   •   Excess baggage (legacy subsystems and abstractions)
   •   Boot time & memory footprint
   •   Embeadability/testability
   •   Administration options
   •   Modularity


• It’s “free and it doesn’t suck”
  not enough anymore
Getting our Mojo back!

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

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

JBoss AS 7
        *A blazingly fast modular lightweight elegantly administrable
compliant application server with easy testing facilities – Carlo De Wolf, 2011
JBoss AS 7 releases

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

    •   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.



• AS 7.1 – released Feb/2012
 • Full EE6, clustering, improved security, etc.

    •   AS 7.1.1 – released Mar/2012
        •   maintenance release
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
JBoss Kernel Taxonomy

• JBoss AS 2.x, 3.x, 4.x
 • JBoss JMX MicroKernel

• JBoss AS 5.x, 6.x
 • JBoss MC - MicroContainer

• JBoss AS7.x
 • JBoss MSC - Modular Service Container
Key attributes of MSC

Small, lightweight, and efficient
Highly concurrent & scalable state machine
Services are primarily interface based
Only two states, Up & Down
Multiple startup modes
   •Active, Passive, On-Demand, Lazy, Never

                                                  Service Builder

                                                 Service Registry

                                                 Service Controller

                                Service   Deps         Value        Listeners   Injectors

                                          Concurrent Service Container
So What?
#@*%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 of reflection metadata
• Lazy loading of (some) services
• StAX based descriptor parsing
• Starting from scratch 
Modularity*
    *The Class Path is Dead – Mark Reinhold, 2009
Hierarchical Class Loading

• Issues
 •   All jars always loaded, whether used or no
 •   Version conflicts, especially with servers libs
 •   Increased lookup/load time
 •   Hard to debug (big ball of mud)


• JBoss AS 5 introduced
  module-like capabilities
 • jboss-classloading.xml
Modular Class Loading
• A graph of Class Loaders, not a tree
 •   Modules delegate to one another as peers
 •   A module imports modules it directly uses
 •   Transitive dependencies are hidden, by default
 •   Different module versions may co-exist
JBoss Modules

Small, lightweight, and efficient
   •Highly concurrent class loading
   •Fast with O(1) dependency resolution

“Pure” modular class loading
   •Modules only see what they import
   •Including JDK classes

External module definitions
   •Don’t have to break open the JAR
modulesorghornetqmainmodule.xml
<module xmlns="urn:jboss:module:1.0" name="org.hornetq">
  <resources>
    <resource-root path="hornetq-core-2.2.10.Final.jar"/>
    <resource-root path="hornetq-jms-2.2.10.Final.jar"/>
  </resources>

  <dependencies>
    <module name="javax.api"/>
    <module name="javax.jms.api"/>
    <module name="javax.resource.api"/>
    <module name="org.jboss.jts"/>
    <module name="org.jboss.netty"/>
  </dependencies>
</module>
User Deployments

• Deployments are also modules (.ear, .war, etc.)

    deployment.foo.ear
    deployment.foo.ear.bar.war
    deployment.foo.ear.bar.jar



• Cannot access server implementation details,
  unless explicitly specified

    META-INF/MANIFEST.MF
    Dependencies: org.javassist, org.apache.velocity
Implicit Module Dependencies

Setup by the appserver/deployers automatically, e.g.

    META-INF/ejb-jar.xml, @Stateless,
    @Stateful, @MessageDriven
     import javaee.api module

    @PersistenceUnit, @PersistenceContext,
    <persistence-unit-ref>, <persistence-context-ref>
     import javaee.api module
     import org.jboss.as.jpa module
     import org.hibernate module
     import org.javaassist module
What about OSGi?
JBoss OSGi

• AS7 is fully compliant with OSGi v4.2 Core
• Implemented on top of JBoss MSC/Modules
• OSGi bundles become JBoss Modules
• Deploy your OSGi bundles, as usual
JBoss OSGi

• Out-of-the-box
 • OSGi Core 4.2, Config Admin, JNDI, JTA, JMX*

• Extras with installer
 • Web Apps, HTTP Service, Blueprint, Web Console




                                           *This may change
Management*
     *Keeping Administrators Happy
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-cli.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
• JMX mapping
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)
Tx configuration snippet from standalone.xml
...
<subsystem
  xmlns="urn:jboss:domain:transactions:1.1">
  <core-environment>
    <process-id>
      <uuid/>
    </process-id>
  </core-environment>
  <recovery-environment socket-binding="txn-
  recovery-environment" status-socket-binding="txn-
  status-manager"/>
  <coordinator-environment default-timeout="300"/>
</subsystem>
...
…maps to Domain Model
...
 "transactions" : {
   "default-timeout" : 300,
   "enable-statistics" : false,
   "enable-tsm-status" : false,
   "jts" : false,
   "node-identifier" : "1",
   "object-store-path" : "tx-object-store",
   "object-store-relative-to" : "jboss.server.data.dir",
   "path" : "var",
   "process-id-socket-max-ports" : 10,
   "process-id-uuid" : true,
   "recovery-listener" : false,
   "relative-to" : "jboss.server.data.dir",
   "socket-binding" : "txn-recovery-environment",
   "status-socket-binding" : "txn-status-manager"
 },
Components*
       *First Class Only!
Roadmap

AS 7.0.2 – last version of 7.0 series
AS 7.1.1 – last version of 7.1 series


JBoss AS 7.1 is the base for JBoss
  Enterprise Application Platform 6 (EAP)


AS 7.2.x – feature enhancements
   •   Patching
   •   Graceful shutdown
   •   Audit logging
   •   …
JBoss EAP*
    *Professional Support from Professionals!
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
Ευχαριστώ*




             *Thank You!
dimitris@redhat.com   dandreadis.blogspot.com

Más contenido relacionado

La actualidad más candente

Java Spring framework, Dependency Injection, DI, IoC, Inversion of Control
Java Spring framework, Dependency Injection, DI, IoC, Inversion of ControlJava Spring framework, Dependency Injection, DI, IoC, Inversion of Control
Java Spring framework, Dependency Injection, DI, IoC, Inversion of ControlArjun Thakur
 
VMworld 2015: VMware NSX Deep Dive
VMworld 2015: VMware NSX Deep DiveVMworld 2015: VMware NSX Deep Dive
VMworld 2015: VMware NSX Deep DiveVMworld
 
IBM JVM GC_Wh apm
IBM JVM GC_Wh apmIBM JVM GC_Wh apm
IBM JVM GC_Wh apm엑셈
 
IBM Websphere concepts
IBM Websphere conceptsIBM Websphere concepts
IBM Websphere conceptsKuldeep Saxena
 
Embedding Jaspersoft into your PHP application
Embedding Jaspersoft into your PHP applicationEmbedding Jaspersoft into your PHP application
Embedding Jaspersoft into your PHP applicationMariano Luna
 
Generate schema using wcf sql adapter 
Generate schema using wcf sql adapter Generate schema using wcf sql adapter 
Generate schema using wcf sql adapter ahmed zewita
 
Heap Dump Analysis - AEM: Real World Issues
Heap Dump Analysis - AEM: Real World IssuesHeap Dump Analysis - AEM: Real World Issues
Heap Dump Analysis - AEM: Real World IssuesKanika Gera
 
Java EE 再入門
Java EE 再入門Java EE 再入門
Java EE 再入門minazou67
 
IBM WebSphere application server
IBM WebSphere application serverIBM WebSphere application server
IBM WebSphere application serverIBM Sverige
 
Application server vs Web Server
Application server vs Web ServerApplication server vs Web Server
Application server vs Web ServerGagandeep Singh
 
Spring - Part 1 - IoC, Di and Beans
Spring - Part 1 - IoC, Di and Beans Spring - Part 1 - IoC, Di and Beans
Spring - Part 1 - IoC, Di and Beans Hitesh-Java
 
Spring Boot in Action
Spring Boot in Action Spring Boot in Action
Spring Boot in Action Alex Movila
 
An introduction to maven gradle and sbt
An introduction to maven gradle and sbtAn introduction to maven gradle and sbt
An introduction to maven gradle and sbtFabio Fumarola
 
WebSphere application server 8.5.5 - quick overview
WebSphere application server 8.5.5 - quick overviewWebSphere application server 8.5.5 - quick overview
WebSphere application server 8.5.5 - quick overviewChris Sparshott
 
Find Number of VM message in Mule
Find Number of VM message in MuleFind Number of VM message in Mule
Find Number of VM message in MuleSunil Kumar
 
IBM WebSphere Application Server (Clustering) Concept
IBM WebSphere Application Server (Clustering) ConceptIBM WebSphere Application Server (Clustering) Concept
IBM WebSphere Application Server (Clustering) Conceptejlp12
 

La actualidad más candente (20)

Java Spring framework, Dependency Injection, DI, IoC, Inversion of Control
Java Spring framework, Dependency Injection, DI, IoC, Inversion of ControlJava Spring framework, Dependency Injection, DI, IoC, Inversion of Control
Java Spring framework, Dependency Injection, DI, IoC, Inversion of Control
 
VMworld 2015: VMware NSX Deep Dive
VMworld 2015: VMware NSX Deep DiveVMworld 2015: VMware NSX Deep Dive
VMworld 2015: VMware NSX Deep Dive
 
IBM JVM GC_Wh apm
IBM JVM GC_Wh apmIBM JVM GC_Wh apm
IBM JVM GC_Wh apm
 
IBM Websphere concepts
IBM Websphere conceptsIBM Websphere concepts
IBM Websphere concepts
 
Embedding Jaspersoft into your PHP application
Embedding Jaspersoft into your PHP applicationEmbedding Jaspersoft into your PHP application
Embedding Jaspersoft into your PHP application
 
Generate schema using wcf sql adapter 
Generate schema using wcf sql adapter Generate schema using wcf sql adapter 
Generate schema using wcf sql adapter 
 
Heap Dump Analysis - AEM: Real World Issues
Heap Dump Analysis - AEM: Real World IssuesHeap Dump Analysis - AEM: Real World Issues
Heap Dump Analysis - AEM: Real World Issues
 
Spring Boot
Spring BootSpring Boot
Spring Boot
 
Java logging
Java loggingJava logging
Java logging
 
Java virtual machine
Java virtual machineJava virtual machine
Java virtual machine
 
Java EE 再入門
Java EE 再入門Java EE 再入門
Java EE 再入門
 
IBM WebSphere application server
IBM WebSphere application serverIBM WebSphere application server
IBM WebSphere application server
 
Application server vs Web Server
Application server vs Web ServerApplication server vs Web Server
Application server vs Web Server
 
Spring - Part 1 - IoC, Di and Beans
Spring - Part 1 - IoC, Di and Beans Spring - Part 1 - IoC, Di and Beans
Spring - Part 1 - IoC, Di and Beans
 
Spring Boot in Action
Spring Boot in Action Spring Boot in Action
Spring Boot in Action
 
An introduction to maven gradle and sbt
An introduction to maven gradle and sbtAn introduction to maven gradle and sbt
An introduction to maven gradle and sbt
 
WebSphere application server 8.5.5 - quick overview
WebSphere application server 8.5.5 - quick overviewWebSphere application server 8.5.5 - quick overview
WebSphere application server 8.5.5 - quick overview
 
Aix install via nim
Aix install via nimAix install via nim
Aix install via nim
 
Find Number of VM message in Mule
Find Number of VM message in MuleFind Number of VM message in Mule
Find Number of VM message in Mule
 
IBM WebSphere Application Server (Clustering) Concept
IBM WebSphere Application Server (Clustering) ConceptIBM WebSphere Application Server (Clustering) Concept
IBM WebSphere Application Server (Clustering) Concept
 

Destacado

JBoss Application Server 7
JBoss Application Server 7JBoss Application Server 7
JBoss Application Server 7Ray Ploski
 
JBoss EAP / WildFly, State of the Union
JBoss EAP / WildFly, State of the UnionJBoss EAP / WildFly, State of the Union
JBoss EAP / WildFly, State of the UnionDimitris Andreadis
 
WildFly AppServer - State of the Union
WildFly AppServer - State of the UnionWildFly AppServer - State of the Union
WildFly AppServer - State of the UnionDimitris Andreadis
 
JBoss AS7 Overview
JBoss AS7 OverviewJBoss AS7 Overview
JBoss AS7 OverviewJBug Italy
 
Instruction on creating a cluster on jboss eap environment
Instruction on creating a cluster on jboss eap environmentInstruction on creating a cluster on jboss eap environment
Instruction on creating a cluster on jboss eap environmentMadhusudan Pisipati
 
Weblogic Application Server training-course-navi-mumbai-weblogic application ...
Weblogic Application Server training-course-navi-mumbai-weblogic application ...Weblogic Application Server training-course-navi-mumbai-weblogic application ...
Weblogic Application Server training-course-navi-mumbai-weblogic application ...VibrantGroup
 
WebLogic JMX for DevOps
WebLogic JMX for DevOpsWebLogic JMX for DevOps
WebLogic JMX for DevOpsFrank Munz
 
Creating a Domain with Oracle WebLogic 11g
Creating a Domain with Oracle WebLogic 11gCreating a Domain with Oracle WebLogic 11g
Creating a Domain with Oracle WebLogic 11gLuis Carlos Berrocal
 
Building WebLogic Domains With WLST
Building WebLogic Domains With WLSTBuilding WebLogic Domains With WLST
Building WebLogic Domains With WLSTC2B2 Consulting
 
Weblogic server administration
Weblogic server administrationWeblogic server administration
Weblogic server administrationbispsolutions
 
WebLogic im Docker Container
WebLogic im Docker ContainerWebLogic im Docker Container
WebLogic im Docker ContainerAndreas Koop
 
Weblogic configuration & administration
Weblogic   configuration & administrationWeblogic   configuration & administration
Weblogic configuration & administrationMuhammad Mansoor
 
Weblogic 11g admin basic with screencast
Weblogic 11g admin basic with screencastWeblogic 11g admin basic with screencast
Weblogic 11g admin basic with screencastRajiv Gupta
 
Java WebApps und Services on Oracle Java Cloud Service
Java WebApps und Services on Oracle Java Cloud ServiceJava WebApps und Services on Oracle Java Cloud Service
Java WebApps und Services on Oracle Java Cloud Serviceenpit GmbH & Co. KG
 
Administration von ADF Anwendungen
Administration von ADF AnwendungenAdministration von ADF Anwendungen
Administration von ADF Anwendungenenpit GmbH & Co. KG
 
Oracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic ConceptsOracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic ConceptsJames Bayer
 

Destacado (18)

JBoss Application Server 7
JBoss Application Server 7JBoss Application Server 7
JBoss Application Server 7
 
JBoss EAP / WildFly, State of the Union
JBoss EAP / WildFly, State of the UnionJBoss EAP / WildFly, State of the Union
JBoss EAP / WildFly, State of the Union
 
WildFly AppServer - State of the Union
WildFly AppServer - State of the UnionWildFly AppServer - State of the Union
WildFly AppServer - State of the Union
 
JBoss AS7 Overview
JBoss AS7 OverviewJBoss AS7 Overview
JBoss AS7 Overview
 
Instruction on creating a cluster on jboss eap environment
Instruction on creating a cluster on jboss eap environmentInstruction on creating a cluster on jboss eap environment
Instruction on creating a cluster on jboss eap environment
 
JBoss AS / EAP and Java EE6
JBoss AS / EAP and Java EE6JBoss AS / EAP and Java EE6
JBoss AS / EAP and Java EE6
 
Weblogic Application Server training-course-navi-mumbai-weblogic application ...
Weblogic Application Server training-course-navi-mumbai-weblogic application ...Weblogic Application Server training-course-navi-mumbai-weblogic application ...
Weblogic Application Server training-course-navi-mumbai-weblogic application ...
 
WebLogic JMX for DevOps
WebLogic JMX for DevOpsWebLogic JMX for DevOps
WebLogic JMX for DevOps
 
J boss
J bossJ boss
J boss
 
Creating a Domain with Oracle WebLogic 11g
Creating a Domain with Oracle WebLogic 11gCreating a Domain with Oracle WebLogic 11g
Creating a Domain with Oracle WebLogic 11g
 
Building WebLogic Domains With WLST
Building WebLogic Domains With WLSTBuilding WebLogic Domains With WLST
Building WebLogic Domains With WLST
 
Weblogic server administration
Weblogic server administrationWeblogic server administration
Weblogic server administration
 
WebLogic im Docker Container
WebLogic im Docker ContainerWebLogic im Docker Container
WebLogic im Docker Container
 
Weblogic configuration & administration
Weblogic   configuration & administrationWeblogic   configuration & administration
Weblogic configuration & administration
 
Weblogic 11g admin basic with screencast
Weblogic 11g admin basic with screencastWeblogic 11g admin basic with screencast
Weblogic 11g admin basic with screencast
 
Java WebApps und Services on Oracle Java Cloud Service
Java WebApps und Services on Oracle Java Cloud ServiceJava WebApps und Services on Oracle Java Cloud Service
Java WebApps und Services on Oracle Java Cloud Service
 
Administration von ADF Anwendungen
Administration von ADF AnwendungenAdministration von ADF Anwendungen
Administration von ADF Anwendungen
 
Oracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic ConceptsOracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic Concepts
 

Similar a JBoss AS7 Reloaded

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 SoldanoJUG Genova
 
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
 
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 WorkshopArun Gupta
 
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 6Arun Gupta
 
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évolutionsoft-shake.ch
 
JBoss AS 7, la révolution
JBoss AS 7, la révolutionJBoss AS 7, la révolution
JBoss AS 7, la révolutionAlexis Hassler
 
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
 
Andrei Niculae - JavaEE6 - 24mai2011
Andrei Niculae - JavaEE6 - 24mai2011Andrei Niculae - JavaEE6 - 24mai2011
Andrei Niculae - JavaEE6 - 24mai2011Agora Group
 
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 SFJUGMarakana Inc.
 
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 2010Arun Gupta
 
Java EE 6 & GlassFish 3
Java EE 6 & GlassFish 3Java EE 6 & GlassFish 3
Java EE 6 & GlassFish 3Arun Gupta
 
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 JugSaagie
 
Java EE 7 - Into the Cloud
Java EE 7 - Into the CloudJava EE 7 - Into the Cloud
Java EE 7 - Into the CloudMarkus Eisele
 
Java EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexusJava EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexusArun Gupta
 
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 FutureIndicThreads
 

Similar a JBoss AS7 Reloaded (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
 
Java EE 6 Component Model Explained
Java EE 6 Component Model Explained Java EE 6 Component Model Explained
Java EE 6 Component Model Explained
 
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
 
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
 
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
 
JBoss AS 7, la révolution
JBoss AS 7, la révolutionJBoss AS 7, la révolution
JBoss AS 7, la révolution
 
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 EE6 Overview
Java EE6 OverviewJava EE6 Overview
Java EE6 Overview
 
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 & 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
 
Java EE 6 Aquarium Paris
Java EE 6 Aquarium ParisJava EE 6 Aquarium Paris
Java EE 6 Aquarium Paris
 
Java EE 6 & GlassFish 3
Java EE 6 & GlassFish 3Java EE 6 & GlassFish 3
Java EE 6 & GlassFish 3
 
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
 
Java EE 7 - Into the Cloud
Java EE 7 - Into the CloudJava EE 7 - Into the Cloud
Java EE 7 - Into the Cloud
 
Glass Fishv3 March2010
Glass Fishv3 March2010Glass Fishv3 March2010
Glass Fishv3 March2010
 
Java EE 6
Java EE 6Java EE 6
Java EE 6
 
Jboss
JbossJboss
Jboss
 
Java EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexusJava EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexus
 
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
 

Más de Dimitris Andreadis

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 SwarmDimitris Andreadis
 
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.Dimitris Andreadis
 
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 2014Dimitris Andreadis
 
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 2014Dimitris Andreadis
 
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 8Dimitris Andreadis
 
7 secrets of successful opensource developers
7 secrets of successful opensource developers7 secrets of successful opensource developers
7 secrets of successful opensource developersDimitris Andreadis
 

Más 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

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 

Último (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 

JBoss AS7 Reloaded

  • 1. JBoss Application Server 7 Jasoct AS Project Lead Dimitris Andreadis May 4, 2011 Engineering Manager JBoss Application Server
  • 2. 2
  • 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 Application Server 7 • Architecture • Modularity • Management • Enterprise Application Platform 6 (EAP)
  • 5. JBoss AS Timeline JavaEE 6 Web Profile, JDK6/JDK7 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. Andiamo Java EE 6
  • 7. The path to Java EE6 • JBoss AS 6.0 • Deliver faster on Java EE6 • Baking time for EE subsystems • Measure interest on EE profiles • Stepping stone for AS7 • New Stuff • HornetQ (Messaging) • Infinispan (Caching) • Apache CXF (Web Services) • Embedded Jopr Console • mod_cluster
  • 8. The path to Java EE6 (cont.) • JBoss AS 6.0/6.1 • Java EE6 Web Profile++ (or EE6 Full--) • Based on the 5.x Microcontainer • More lightweight than AS5 • Gotchas • JBoss AS6 will *not* be productized! • Currently in community maintenance mode
  • 10. A hard look in the mirror • Typical Pain Points • Excess baggage (legacy subsystems and abstractions) • Boot time & memory footprint • Embeadability/testability • Administration options • Modularity • It’s “free and it doesn’t suck” not enough anymore
  • 11. Getting our Mojo back! • Major Goals • Make it Smaller, Faster • Improve Manageability • Simplify Configuration • Clean things up! • Remove abstraction layers • Remove legacy stuff • Modularize
  • 12.
  • 13.
  • 14. Introducing JBoss AS 7 *A blazingly fast modular lightweight elegantly administrable compliant application server with easy testing facilities – Carlo De Wolf, 2011
  • 15. JBoss AS 7 releases • AS 7.0 – released Jul/2011, • EE6 – Web Profile (+JCA, +JAX-RS) certified • 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. • AS 7.1 – released Feb/2012 • Full EE6, clustering, improved security, etc. • AS 7.1.1 – released Mar/2012 • maintenance release
  • 16. AS7 Key Features • Fast and Lightweight • Modular, OSGi enabled • Unified, user focused configuration • Multiple management interfaces • Support for multi-node management
  • 17. 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
  • 18. JBoss Kernel Taxonomy • JBoss AS 2.x, 3.x, 4.x • JBoss JMX MicroKernel • JBoss AS 5.x, 6.x • JBoss MC - MicroContainer • JBoss AS7.x • JBoss MSC - Modular Service Container
  • 19. Key attributes of MSC Small, lightweight, and efficient Highly concurrent & scalable state machine Services are primarily interface based Only two states, Up & Down Multiple startup modes •Active, Passive, On-Demand, Lazy, Never Service Builder Service Registry Service Controller Service Deps Value Listeners Injectors Concurrent Service Container
  • 21. #@*%ing fast! http://community.jboss.org/wiki/AS7StartupTimeShowdown
  • 24. How is it done? • Concurrent startup/deployments • Faster resource lookup/classloading • Annotation indexing • Caching of reflection metadata • Lazy loading of (some) services • StAX based descriptor parsing • Starting from scratch 
  • 25. Modularity* *The Class Path is Dead – Mark Reinhold, 2009
  • 26. Hierarchical Class Loading • Issues • All jars always loaded, whether used or no • Version conflicts, especially with servers libs • Increased lookup/load time • Hard to debug (big ball of mud) • JBoss AS 5 introduced module-like capabilities • jboss-classloading.xml
  • 27. Modular Class Loading • A graph of Class Loaders, not a tree • Modules delegate to one another as peers • A module imports modules it directly uses • Transitive dependencies are hidden, by default • Different module versions may co-exist
  • 28. JBoss Modules Small, lightweight, and efficient •Highly concurrent class loading •Fast with O(1) dependency resolution “Pure” modular class loading •Modules only see what they import •Including JDK classes External module definitions •Don’t have to break open the JAR
  • 29. modulesorghornetqmainmodule.xml <module xmlns="urn:jboss:module:1.0" name="org.hornetq"> <resources> <resource-root path="hornetq-core-2.2.10.Final.jar"/> <resource-root path="hornetq-jms-2.2.10.Final.jar"/> </resources> <dependencies> <module name="javax.api"/> <module name="javax.jms.api"/> <module name="javax.resource.api"/> <module name="org.jboss.jts"/> <module name="org.jboss.netty"/> </dependencies> </module>
  • 30. User Deployments • Deployments are also modules (.ear, .war, etc.) deployment.foo.ear deployment.foo.ear.bar.war deployment.foo.ear.bar.jar • Cannot access server implementation details, unless explicitly specified META-INF/MANIFEST.MF Dependencies: org.javassist, org.apache.velocity
  • 31. Implicit Module Dependencies Setup by the appserver/deployers automatically, e.g. META-INF/ejb-jar.xml, @Stateless, @Stateful, @MessageDriven  import javaee.api module @PersistenceUnit, @PersistenceContext, <persistence-unit-ref>, <persistence-context-ref>  import javaee.api module  import org.jboss.as.jpa module  import org.hibernate module  import org.javaassist module
  • 33. JBoss OSGi • AS7 is fully compliant with OSGi v4.2 Core • Implemented on top of JBoss MSC/Modules • OSGi bundles become JBoss Modules • Deploy your OSGi bundles, as usual
  • 34. JBoss OSGi • Out-of-the-box • OSGi Core 4.2, Config Admin, JNDI, JTA, JMX* • Extras with installer • Web Apps, HTTP Service, Blueprint, Web Console *This may change
  • 35. Management* *Keeping Administrators Happy
  • 36. 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
  • 38. Filesystem Layout jboss-7.1.x bin standalone.conf Standalone Mode JVM Parameters standalone.sh Standalone Mode domain.sh Domain Mode jboss-cli.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)
  • 39. 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
  • 40. 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>
  • 41. Management APIs • Command Line Interface (CLI) • Remote Java API • HTTP/JSON API • GWT-based console • JMX mapping
  • 42. 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)
  • 43. Tx configuration snippet from standalone.xml ... <subsystem xmlns="urn:jboss:domain:transactions:1.1"> <core-environment> <process-id> <uuid/> </process-id> </core-environment> <recovery-environment socket-binding="txn- recovery-environment" status-socket-binding="txn- status-manager"/> <coordinator-environment default-timeout="300"/> </subsystem> ...
  • 44. …maps to Domain Model ... "transactions" : { "default-timeout" : 300, "enable-statistics" : false, "enable-tsm-status" : false, "jts" : false, "node-identifier" : "1", "object-store-path" : "tx-object-store", "object-store-relative-to" : "jboss.server.data.dir", "path" : "var", "process-id-socket-max-ports" : 10, "process-id-uuid" : true, "recovery-listener" : false, "relative-to" : "jboss.server.data.dir", "socket-binding" : "txn-recovery-environment", "status-socket-binding" : "txn-status-manager" },
  • 45. Components* *First Class Only!
  • 46.
  • 47. Roadmap AS 7.0.2 – last version of 7.0 series AS 7.1.1 – last version of 7.1 series JBoss AS 7.1 is the base for JBoss Enterprise Application Platform 6 (EAP) AS 7.2.x – feature enhancements • Patching • Graceful shutdown • Audit logging • …
  • 48. JBoss EAP* *Professional Support from Professionals!
  • 49. 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.
  • 50. JBoss AS vs JBoss EAP
  • 51. Ευχαριστώ* *Thank You!
  • 52. dimitris@redhat.com dandreadis.blogspot.com