SlideShare a Scribd company logo
1 of 32
AS7, Domain Models, Cloud and how can I be
on-demand?
Bruno R. Machado
Samuel Tauil
Agenda
What is JBoss AS7?
Standalone Topology
Domain Mode

Domain Terminology

Domain Topology

Domain configuration
Management Interfaces Topology
Domain Architecture Examples
DEMO
What is JBoss AS7?
Also known AS7 or JBoss EAP6 (enterprise version)

stable, innovative and supported Platform

implements the Java EE 6 Specification consisting of 2
profiles
Web profile

contains the web-based technologies of Java EE:
Servlets, JSP, JSF, CDI, JPA and EJB Lite ...
Full profile

contains all of the Java EE technologies
Cloud-ready architecture
High degree of automation
Flexible Management
Frugal use of resources
Lean, agile development
Open Platform
PHYSICAL VIRTUAL PRIVATE PUBLIC
JBOSS ENTERPRISE MIDDLEWARE
New Features
New concept and new architecture

completely different from previous versions
– 3.x/4.x (microkernel)
– 5.x/6.x (microcontainer)
Lightning fast!

services are started on-demand and concurrently and all
non-critical services remain passive
Single configuration file

all configuration details are viewed in a single file
(standalone.xml for standalone and domain.xml and
host.xml for domain server)
New Features
True modularity

small core with most of its features and capabilities
contained in modules

application isolation with smarter class loading

can be introduced and configured as needed
Lightweight style

small memory footprint
Management flexibility

new Command Line Interface (CLI)

new user-friendly web console

comprehensive Native Management API and HTTP
management API
User-focused configuration
<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>
<bean name="TransactionManager"
class="com.arjuna.ats.jbossatx.jta.TransactionManagerService">
<annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss:s
ervice=TransactionManager",
exposedInterface=com.arjuna.ats.jbossatx.jta.TransactionManagerServiceM
Bean.class, registerDirectly=true)</annotation>
<annotation>@org.jboss.managed.api.annotation.ManagementObject(name="Tr
ansactionManager",componentType=@org.jboss.managed.api.annotation.Manag
ementComponent(type = "MCBean", subtype =
"JTA"),targetInterface=com.arjuna.ats.jbossatx.jta.TransactionManagerSe
rviceMBean.class)
</annotation>
Web Console
Simple
Fast
Lightweight
Avoids XML config
Single instance and
Domains
Mostly Configuration
Web Console
JBoss AS 5.x
Architecture
JBoss Modules
Standalone implementation of modular (non-hierachical)
class loading and execution environment for JAVA

libraries packed in modules

link against the exact modules they depends on, and
nothing more

works with any library or application without changes

makes on-demand services possible
Class loader model is ...

thread-safe

fast

highly concurrent delegating
Module Definition - Static FS
Repository
<!-- definitions are in module.xml -->
<module xmlns="urn:jboss:module:1.1"
name="org.jboss.logging">
<resources>
<resource-root path="jboss-logging-3.x.x.jar"/>
</resources>
<dependencies>
<module name="org.jboss.logmanager"/>
</dependencies>
</module>
<!-- definitions are in module.xml -->
<module xmlns="urn:jboss:module:1.1"
name="org.jboss.logging">
<resources>
<resource-root path="jboss-logging-3.x.x.jar"/>
</resources>
<dependencies>
<module name="org.jboss.logmanager"/>
</dependencies>
</module>
Class Loading
Is based on the principles of modular class loading

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

Every application deployment is a module

Core module libraries are implicitly provided by the Server

Other modules need to be explicitly declared in MANIFEST or
custom deployment file (jboss-deployment-structure.xml)
Operating Modes

Domain Operating Mode (new)
– Spawns multiple JVMs (servers) on multiple physical /
virtual machines which build up the domain
– Ability to manage multiple JVMs (servers)
from a single control point
– Servers in the Domain share a common management
policy

Standalone Operating Mode (Similar to JBoss
AS 4/5)

Which Operating Mode fits into my
Environment?
Subsystems
... are sets of capabilities added by an extension
Adding features and attributes of an extension in a server is done
within <subsystem> element in the standalone and domain
configuration file (as part of the <profile> configuration)
Configurations of systems are schema-file driven
see $EAP6_HOME/docs/schema
Profile
... is a set of configured subsystems
The <profile> element only allows child element
<subsystem>
Standalone Mode

defines only one single and unnamed profile

can be used as multiplier for other standalone instances
Domain Mode

can provide several profiles

each profile has specific name and can be used by
server groups
Profiles available out-of-the-box
default
most commonly used subsystems: logging, configadmin,
datasources, ee, ejb3, infinispan, mail, jaxrs, jca, jdr, jmx, jpa,
mail, naming, osji, pojo, remoting, resource-adapters, sar,
security, threads, transactions, web, webservices and weld
ha
default + jgroups and modcluster subsystems (cluster)
full
default + messaging subsystem (HornetQ), cmp, jacorb, jaxr,
jsr77
full-ha
full + jgroups and modcluster subsystems (cluster)
Standalone Topology
Only
distinction
No centralized
management
capability!
Domain Terminology
Host = physical or virtual machine
Domain Terminology
Master = Domain Controller (DC)
acts as the central management
control point for the entire domain
Slave = host in the domain
interacts with the DC to
control the JVMs’ lifecycle
according to the domain policy
Domain Terminology
Process controller
is started by domain to
spawn server and host
controller processes
and to manage their I/O
Domain Terminology
Server groups
set of server instances
that will be managed and
configured as one
Server
separate JVM process
representing an actual
Application Server
Server Groups
... are defined in domain.xml using the <server-groups> element
<server-groups> consists of a one or more <server-group> child elements
<server-groups>
<server-group name="server-group1" profile="full">
<jvm name="default">
<heap size="1303m" max-size="1303m"/>
<permgen max-size="256m"/>
</jvm>
<socket-binding-group ref="full-sockets"/>
<deployments>
<deployment name="LAB123App.war" runtime-
name="LAB123App.war"/>
</deployments>
</server-group>
</server-groups>
<server-groups>
<server-group name="server-group1" profile="full">
<jvm name="default">
<heap size="1303m" max-size="1303m"/>
<permgen max-size="256m"/>
</jvm>
<socket-binding-group ref="full-sockets"/>
<deployments>
<deployment name="LAB123App.war" runtime-
name="LAB123App.war"/>
</deployments>
</server-group>
</server-groups>
Host Configuration - Servers
... are defined in the <servers> element of the configuration file of the host controller
where server is going to run on
<servers> element can have one or more <server> child elements
<servers>
<server name="server1" group="server-group1" auto-start="true"/>
<server name="server2" group="server-group2" auto-start="false">
<socket-bindings port-offset="100"/>
</server>
</servers>
<servers>
<server name="server1" group="server-group1" auto-start="true"/>
<server name="server2" group="server-group2" auto-start="false">
<socket-bindings port-offset="100"/>
</server>
</servers>
Domain Topology - Big Picture
25
Domain - Configuration
domain controller
{192.168.178.60}
host.xml
<domain-controller>
<local/>
</domain-controller>
domain.xml
host controller 1
{192.168.178.61}
host.xml
<domain-controller>
<remote host=”192.168.178.60”
port=”9999” />
</domain-controller>
host controller 2
{192.168.178.62}
host.xml
<domain-controller>
<remote host=”192.168.178.60”
port=”9999” />
</domain-controller>
Management interfaces topology
27
Domain Architecture
Examples
28
This architecture is used
in one of the biggest
Health Insurance company
of Latin America
Dedicated Domain
Controller
4GiB of Memory +
2 virtual cores
can manage ~
100 hosts +
200 server domain
Probably 1.7GiB +
1 core would be fine
running the same 100 hosts
and 200 server domain
Domain Architecture Examples
DC doesn't need to be up all the time.
Start DC in the first startup, and then use
--backup --chached-dc
For failover, copy domain.xml and host.xml. Use
the same IP of the old one
DEMO
Awaiting Volunteers
Want to help us?
http://bit.ly/11FYCTh
JUDCon Brazil 2013 - Domain Models with JBoss AS 7

More Related Content

What's hot

Weblogic server administration
Weblogic server administrationWeblogic server administration
Weblogic server administrationbispsolutions
 
EAP6 performance Tuning
EAP6 performance TuningEAP6 performance Tuning
EAP6 performance TuningPraveen Adupa
 
weblogic training | oracle weblogic online training | weblogic server course
weblogic training | oracle weblogic online training | weblogic server courseweblogic training | oracle weblogic online training | weblogic server course
weblogic training | oracle weblogic online training | weblogic server courseNancy Thomas
 
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
 
JBoss AS7 web services
JBoss AS7 web servicesJBoss AS7 web services
JBoss AS7 web servicesalepalin
 
WebLogic 12c & WebLogic Mgmt Pack
WebLogic 12c & WebLogic Mgmt PackWebLogic 12c & WebLogic Mgmt Pack
WebLogic 12c & WebLogic Mgmt PackDLT Solutions
 
Weblogic 11g admin basic with screencast
Weblogic 11g admin basic with screencastWeblogic 11g admin basic with screencast
Weblogic 11g admin basic with screencastRajiv Gupta
 
Oracle WebLogic Diagnostics & Perfomance tuning
Oracle WebLogic Diagnostics & Perfomance tuningOracle WebLogic Diagnostics & Perfomance tuning
Oracle WebLogic Diagnostics & Perfomance tuningMichel Schildmeijer
 
As7 web services - JUG Milan April 2012
As7 web services - JUG Milan April 2012As7 web services - JUG Milan April 2012
As7 web services - JUG Milan April 2012alepalin
 
An introduction to weblogic console
An introduction to weblogic consoleAn introduction to weblogic console
An introduction to weblogic consolebispsolutions
 
Learn Oracle WebLogic Server 12c Administration
Learn Oracle WebLogic Server 12c AdministrationLearn Oracle WebLogic Server 12c Administration
Learn Oracle WebLogic Server 12c AdministrationRevelation Technologies
 
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
 
WebLogic Server Work Managers and Overload Protection
WebLogic Server Work Managers and Overload ProtectionWebLogic Server Work Managers and Overload Protection
WebLogic Server Work Managers and Overload ProtectionJames Bayer
 
Weblogic configuration
Weblogic configurationWeblogic configuration
Weblogic configurationAditya Bhuyan
 

What's hot (18)

Weblogic server administration
Weblogic server administrationWeblogic server administration
Weblogic server administration
 
EAP6 performance Tuning
EAP6 performance TuningEAP6 performance Tuning
EAP6 performance Tuning
 
weblogic training | oracle weblogic online training | weblogic server course
weblogic training | oracle weblogic online training | weblogic server courseweblogic training | oracle weblogic online training | weblogic server course
weblogic training | oracle weblogic online training | weblogic server course
 
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.
 
Weblogic security
Weblogic securityWeblogic security
Weblogic security
 
JBoss AS7 web services
JBoss AS7 web servicesJBoss AS7 web services
JBoss AS7 web services
 
WebLogic 12c & WebLogic Mgmt Pack
WebLogic 12c & WebLogic Mgmt PackWebLogic 12c & WebLogic Mgmt Pack
WebLogic 12c & WebLogic Mgmt Pack
 
Weblogic server cluster
Weblogic server clusterWeblogic server cluster
Weblogic server cluster
 
Weblogic 11g admin basic with screencast
Weblogic 11g admin basic with screencastWeblogic 11g admin basic with screencast
Weblogic 11g admin basic with screencast
 
WLS
WLSWLS
WLS
 
Introduction to weblogic
Introduction to weblogicIntroduction to weblogic
Introduction to weblogic
 
Oracle WebLogic Diagnostics & Perfomance tuning
Oracle WebLogic Diagnostics & Perfomance tuningOracle WebLogic Diagnostics & Perfomance tuning
Oracle WebLogic Diagnostics & Perfomance tuning
 
As7 web services - JUG Milan April 2012
As7 web services - JUG Milan April 2012As7 web services - JUG Milan April 2012
As7 web services - JUG Milan April 2012
 
An introduction to weblogic console
An introduction to weblogic consoleAn introduction to weblogic console
An introduction to weblogic console
 
Learn Oracle WebLogic Server 12c Administration
Learn Oracle WebLogic Server 12c AdministrationLearn Oracle WebLogic Server 12c Administration
Learn Oracle WebLogic Server 12c Administration
 
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
 
WebLogic Server Work Managers and Overload Protection
WebLogic Server Work Managers and Overload ProtectionWebLogic Server Work Managers and Overload Protection
WebLogic Server Work Managers and Overload Protection
 
Weblogic configuration
Weblogic configurationWeblogic configuration
Weblogic configuration
 

Viewers also liked

BRMS - Business Rules Management System
BRMS - Business Rules Management SystemBRMS - Business Rules Management System
BRMS - Business Rules Management SystemSamuel Tauil
 
TDC 2011 - HornetQ e SwitchYard
TDC 2011 - HornetQ e SwitchYardTDC 2011 - HornetQ e SwitchYard
TDC 2011 - HornetQ e SwitchYardSamuel Tauil
 
JUDCon Brazil 2013 - Vert.x an introduction
JUDCon Brazil 2013 - Vert.x an introductionJUDCon Brazil 2013 - Vert.x an introduction
JUDCon Brazil 2013 - Vert.x an introductionSamuel Tauil
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsLinkedIn
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerLuminary Labs
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017Drift
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheLeslie Samuel
 

Viewers also liked (8)

BRMS - Business Rules Management System
BRMS - Business Rules Management SystemBRMS - Business Rules Management System
BRMS - Business Rules Management System
 
TDC 2011 - HornetQ e SwitchYard
TDC 2011 - HornetQ e SwitchYardTDC 2011 - HornetQ e SwitchYard
TDC 2011 - HornetQ e SwitchYard
 
JUDCon Brazil 2013 - Vert.x an introduction
JUDCon Brazil 2013 - Vert.x an introductionJUDCon Brazil 2013 - Vert.x an introduction
JUDCon Brazil 2013 - Vert.x an introduction
 
JBoss AS / EAP and Java EE6
JBoss AS / EAP and Java EE6JBoss AS / EAP and Java EE6
JBoss AS / EAP and Java EE6
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving Cars
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
 

Similar to JUDCon Brazil 2013 - Domain Models with JBoss AS 7

HTTP Session Replication with Oracle Coherence, GlassFish, WebLogic
HTTP Session Replication with Oracle Coherence, GlassFish, WebLogicHTTP Session Replication with Oracle Coherence, GlassFish, WebLogic
HTTP Session Replication with Oracle Coherence, GlassFish, WebLogicOracle
 
Oracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic ConceptsOracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic ConceptsJames Bayer
 
Weblogicserveroverviewtopologyconfigurationadministration
WeblogicserveroverviewtopologyconfigurationadministrationWeblogicserveroverviewtopologyconfigurationadministration
WeblogicserveroverviewtopologyconfigurationadministrationGokhan Fazli Celik
 
JBoss AS Upgrade
JBoss AS UpgradeJBoss AS Upgrade
JBoss AS Upgradesharmami
 
Liberty dynacache ffw_iea_ste
Liberty dynacache ffw_iea_steLiberty dynacache ffw_iea_ste
Liberty dynacache ffw_iea_steRohit Kelapure
 
Jboss App Server
Jboss App ServerJboss App Server
Jboss App Serveracosdt
 
JBoss AS7 Webservices
JBoss AS7 WebservicesJBoss AS7 Webservices
JBoss AS7 WebservicesJBug Italy
 
JBoss AS 7 - YaJUG - nov. 2012
JBoss AS 7 - YaJUG - nov. 2012JBoss AS 7 - YaJUG - nov. 2012
JBoss AS 7 - YaJUG - nov. 2012Alexis Hassler
 
As7 at jbug Milan
As7 at jbug MilanAs7 at jbug Milan
As7 at jbug Milanmaeste
 
Changes in WebLogic 12.1.3 Every Administrator Must Know
Changes in WebLogic 12.1.3 Every Administrator Must KnowChanges in WebLogic 12.1.3 Every Administrator Must Know
Changes in WebLogic 12.1.3 Every Administrator Must KnowBruno Borges
 
Changes in weblogic12c_every_administrator_must_know-140812141929
Changes in weblogic12c_every_administrator_must_know-140812141929Changes in weblogic12c_every_administrator_must_know-140812141929
Changes in weblogic12c_every_administrator_must_know-140812141929Demodx Demodxz
 
WildFly AppServer - State of the Union
WildFly AppServer - State of the UnionWildFly AppServer - State of the Union
WildFly AppServer - State of the UnionDimitris Andreadis
 
The Top 10 Things Oracle UCM Users Need To Know About WebLogic
The Top 10 Things Oracle UCM Users Need To Know About WebLogicThe Top 10 Things Oracle UCM Users Need To Know About WebLogic
The Top 10 Things Oracle UCM Users Need To Know About WebLogicBrian Huff
 
Cloud 2010
Cloud 2010Cloud 2010
Cloud 2010steccami
 
JBoss AS 7 : Déployer sur terre et dans les nuages
JBoss AS 7 : Déployer sur terre et dans les nuagesJBoss AS 7 : Déployer sur terre et dans les nuages
JBoss AS 7 : Déployer sur terre et dans les nuagesAlexis Hassler
 
Li liq liqui liquibase
Li liq liqui liquibaseLi liq liqui liquibase
Li liq liqui liquibaseYoram Michaeli
 
Manage Java Applications in an Open Hybrid Cloud
Manage Java Applications in an Open Hybrid CloudManage Java Applications in an Open Hybrid Cloud
Manage Java Applications in an Open Hybrid CloudIsaac Christoffersen
 

Similar to JUDCon Brazil 2013 - Domain Models with JBoss AS 7 (20)

HTTP Session Replication with Oracle Coherence, GlassFish, WebLogic
HTTP Session Replication with Oracle Coherence, GlassFish, WebLogicHTTP Session Replication with Oracle Coherence, GlassFish, WebLogic
HTTP Session Replication with Oracle Coherence, GlassFish, WebLogic
 
Oracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic ConceptsOracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic Concepts
 
Weblogicserveroverviewtopologyconfigurationadministration
WeblogicserveroverviewtopologyconfigurationadministrationWeblogicserveroverviewtopologyconfigurationadministration
Weblogicserveroverviewtopologyconfigurationadministration
 
JBoss AS Upgrade
JBoss AS UpgradeJBoss AS Upgrade
JBoss AS Upgrade
 
Liberty dynacache ffw_iea_ste
Liberty dynacache ffw_iea_steLiberty dynacache ffw_iea_ste
Liberty dynacache ffw_iea_ste
 
Java8 - Under the hood
Java8 - Under the hoodJava8 - Under the hood
Java8 - Under the hood
 
Jboss App Server
Jboss App ServerJboss App Server
Jboss App Server
 
Jboss Tutorial Basics
Jboss Tutorial BasicsJboss Tutorial Basics
Jboss Tutorial Basics
 
JBoss AS7 Webservices
JBoss AS7 WebservicesJBoss AS7 Webservices
JBoss AS7 Webservices
 
JBoss AS 7 - YaJUG - nov. 2012
JBoss AS 7 - YaJUG - nov. 2012JBoss AS 7 - YaJUG - nov. 2012
JBoss AS 7 - YaJUG - nov. 2012
 
As7 at jbug Milan
As7 at jbug MilanAs7 at jbug Milan
As7 at jbug Milan
 
Changes in WebLogic 12.1.3 Every Administrator Must Know
Changes in WebLogic 12.1.3 Every Administrator Must KnowChanges in WebLogic 12.1.3 Every Administrator Must Know
Changes in WebLogic 12.1.3 Every Administrator Must Know
 
Changes in weblogic12c_every_administrator_must_know-140812141929
Changes in weblogic12c_every_administrator_must_know-140812141929Changes in weblogic12c_every_administrator_must_know-140812141929
Changes in weblogic12c_every_administrator_must_know-140812141929
 
WildFly AppServer - State of the Union
WildFly AppServer - State of the UnionWildFly AppServer - State of the Union
WildFly AppServer - State of the Union
 
The Top 10 Things Oracle UCM Users Need To Know About WebLogic
The Top 10 Things Oracle UCM Users Need To Know About WebLogicThe Top 10 Things Oracle UCM Users Need To Know About WebLogic
The Top 10 Things Oracle UCM Users Need To Know About WebLogic
 
JAX-WS Basics
JAX-WS BasicsJAX-WS Basics
JAX-WS Basics
 
Cloud 2010
Cloud 2010Cloud 2010
Cloud 2010
 
JBoss AS 7 : Déployer sur terre et dans les nuages
JBoss AS 7 : Déployer sur terre et dans les nuagesJBoss AS 7 : Déployer sur terre et dans les nuages
JBoss AS 7 : Déployer sur terre et dans les nuages
 
Li liq liqui liquibase
Li liq liqui liquibaseLi liq liqui liquibase
Li liq liqui liquibase
 
Manage Java Applications in an Open Hybrid Cloud
Manage Java Applications in an Open Hybrid CloudManage Java Applications in an Open Hybrid Cloud
Manage Java Applications in an Open Hybrid Cloud
 

Recently uploaded

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 

Recently uploaded (20)

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 

JUDCon Brazil 2013 - Domain Models with JBoss AS 7

  • 1. AS7, Domain Models, Cloud and how can I be on-demand? Bruno R. Machado Samuel Tauil
  • 2. Agenda What is JBoss AS7? Standalone Topology Domain Mode  Domain Terminology  Domain Topology  Domain configuration Management Interfaces Topology Domain Architecture Examples DEMO
  • 3. What is JBoss AS7? Also known AS7 or JBoss EAP6 (enterprise version)  stable, innovative and supported Platform  implements the Java EE 6 Specification consisting of 2 profiles Web profile  contains the web-based technologies of Java EE: Servlets, JSP, JSF, CDI, JPA and EJB Lite ... Full profile  contains all of the Java EE technologies
  • 4. Cloud-ready architecture High degree of automation Flexible Management Frugal use of resources Lean, agile development Open Platform PHYSICAL VIRTUAL PRIVATE PUBLIC JBOSS ENTERPRISE MIDDLEWARE
  • 5. New Features New concept and new architecture  completely different from previous versions – 3.x/4.x (microkernel) – 5.x/6.x (microcontainer) Lightning fast!  services are started on-demand and concurrently and all non-critical services remain passive Single configuration file  all configuration details are viewed in a single file (standalone.xml for standalone and domain.xml and host.xml for domain server)
  • 6. New Features True modularity  small core with most of its features and capabilities contained in modules  application isolation with smarter class loading  can be introduced and configured as needed Lightweight style  small memory footprint Management flexibility  new Command Line Interface (CLI)  new user-friendly web console  comprehensive Native Management API and HTTP management API
  • 7. User-focused configuration <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> <bean name="TransactionManager" class="com.arjuna.ats.jbossatx.jta.TransactionManagerService"> <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss:s ervice=TransactionManager", exposedInterface=com.arjuna.ats.jbossatx.jta.TransactionManagerServiceM Bean.class, registerDirectly=true)</annotation> <annotation>@org.jboss.managed.api.annotation.ManagementObject(name="Tr ansactionManager",componentType=@org.jboss.managed.api.annotation.Manag ementComponent(type = "MCBean", subtype = "JTA"),targetInterface=com.arjuna.ats.jbossatx.jta.TransactionManagerSe rviceMBean.class) </annotation>
  • 8. Web Console Simple Fast Lightweight Avoids XML config Single instance and Domains Mostly Configuration
  • 11. JBoss Modules Standalone implementation of modular (non-hierachical) class loading and execution environment for JAVA  libraries packed in modules  link against the exact modules they depends on, and nothing more  works with any library or application without changes  makes on-demand services possible Class loader model is ...  thread-safe  fast  highly concurrent delegating
  • 12. Module Definition - Static FS Repository <!-- definitions are in module.xml --> <module xmlns="urn:jboss:module:1.1" name="org.jboss.logging"> <resources> <resource-root path="jboss-logging-3.x.x.jar"/> </resources> <dependencies> <module name="org.jboss.logmanager"/> </dependencies> </module> <!-- definitions are in module.xml --> <module xmlns="urn:jboss:module:1.1" name="org.jboss.logging"> <resources> <resource-root path="jboss-logging-3.x.x.jar"/> </resources> <dependencies> <module name="org.jboss.logmanager"/> </dependencies> </module>
  • 13. Class Loading Is based on the principles of modular class loading  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  Every application deployment is a module  Core module libraries are implicitly provided by the Server  Other modules need to be explicitly declared in MANIFEST or custom deployment file (jboss-deployment-structure.xml)
  • 14. Operating Modes  Domain Operating Mode (new) – Spawns multiple JVMs (servers) on multiple physical / virtual machines which build up the domain – Ability to manage multiple JVMs (servers) from a single control point – Servers in the Domain share a common management policy  Standalone Operating Mode (Similar to JBoss AS 4/5)  Which Operating Mode fits into my Environment?
  • 15. Subsystems ... are sets of capabilities added by an extension Adding features and attributes of an extension in a server is done within <subsystem> element in the standalone and domain configuration file (as part of the <profile> configuration) Configurations of systems are schema-file driven see $EAP6_HOME/docs/schema
  • 16. Profile ... is a set of configured subsystems The <profile> element only allows child element <subsystem> Standalone Mode  defines only one single and unnamed profile  can be used as multiplier for other standalone instances Domain Mode  can provide several profiles  each profile has specific name and can be used by server groups
  • 17. Profiles available out-of-the-box default most commonly used subsystems: logging, configadmin, datasources, ee, ejb3, infinispan, mail, jaxrs, jca, jdr, jmx, jpa, mail, naming, osji, pojo, remoting, resource-adapters, sar, security, threads, transactions, web, webservices and weld ha default + jgroups and modcluster subsystems (cluster) full default + messaging subsystem (HornetQ), cmp, jacorb, jaxr, jsr77 full-ha full + jgroups and modcluster subsystems (cluster)
  • 19. Domain Terminology Host = physical or virtual machine
  • 20. Domain Terminology Master = Domain Controller (DC) acts as the central management control point for the entire domain Slave = host in the domain interacts with the DC to control the JVMs’ lifecycle according to the domain policy
  • 21. Domain Terminology Process controller is started by domain to spawn server and host controller processes and to manage their I/O
  • 22. Domain Terminology Server groups set of server instances that will be managed and configured as one Server separate JVM process representing an actual Application Server
  • 23. Server Groups ... are defined in domain.xml using the <server-groups> element <server-groups> consists of a one or more <server-group> child elements <server-groups> <server-group name="server-group1" profile="full"> <jvm name="default"> <heap size="1303m" max-size="1303m"/> <permgen max-size="256m"/> </jvm> <socket-binding-group ref="full-sockets"/> <deployments> <deployment name="LAB123App.war" runtime- name="LAB123App.war"/> </deployments> </server-group> </server-groups> <server-groups> <server-group name="server-group1" profile="full"> <jvm name="default"> <heap size="1303m" max-size="1303m"/> <permgen max-size="256m"/> </jvm> <socket-binding-group ref="full-sockets"/> <deployments> <deployment name="LAB123App.war" runtime- name="LAB123App.war"/> </deployments> </server-group> </server-groups>
  • 24. Host Configuration - Servers ... are defined in the <servers> element of the configuration file of the host controller where server is going to run on <servers> element can have one or more <server> child elements <servers> <server name="server1" group="server-group1" auto-start="true"/> <server name="server2" group="server-group2" auto-start="false"> <socket-bindings port-offset="100"/> </server> </servers> <servers> <server name="server1" group="server-group1" auto-start="true"/> <server name="server2" group="server-group2" auto-start="false"> <socket-bindings port-offset="100"/> </server> </servers>
  • 25. Domain Topology - Big Picture 25
  • 26. Domain - Configuration domain controller {192.168.178.60} host.xml <domain-controller> <local/> </domain-controller> domain.xml host controller 1 {192.168.178.61} host.xml <domain-controller> <remote host=”192.168.178.60” port=”9999” /> </domain-controller> host controller 2 {192.168.178.62} host.xml <domain-controller> <remote host=”192.168.178.60” port=”9999” /> </domain-controller>
  • 28. Domain Architecture Examples 28 This architecture is used in one of the biggest Health Insurance company of Latin America Dedicated Domain Controller 4GiB of Memory + 2 virtual cores can manage ~ 100 hosts + 200 server domain Probably 1.7GiB + 1 core would be fine running the same 100 hosts and 200 server domain
  • 29. Domain Architecture Examples DC doesn't need to be up all the time. Start DC in the first startup, and then use --backup --chached-dc For failover, copy domain.xml and host.xml. Use the same IP of the old one
  • 30. DEMO
  • 31. Awaiting Volunteers Want to help us? http://bit.ly/11FYCTh