JBossESBoverview
Transcript of JBossESBoverview
-
8/7/2019 JBossESBoverview
1/20
JBoss Inc. 2005
JBossESB
SOA everywhere!
-
8/7/2019 JBossESBoverview
2/20
2 The Professional Open Source Company
Aims
To provide the standard OSSinfrastructure for SOASOA principles first and foremost
Use SOA principles internally as wellas externally
Everything will (conceptually) beconsidered as a service
Everything will be replaceable Standards compliant
Though requirements live longer
-
8/7/2019 JBossESBoverview
3/20
3 The Professional Open Source Company
JBossESB = SOA Infrastructure
-
8/7/2019 JBossESBoverview
4/20
4 The Professional Open Source Company
JBossESB will provide
Process orchestration Protocol translation Adapters Repositories (e.g., UDDI) Change management (hot deployment,
versioning, lifecycle management) Quality of service (transactions, failover)
Qualify of protection (message encryption,security) Management (versioning of services)
-
8/7/2019 JBossESBoverview
5/20
5 The Professional Open Source Company
Architecture overview
-
8/7/2019 JBossESBoverview
6/20
6 The Professional Open Source Company
Requirements
Cannot mandate specific capabilityimplementations All capabilities accessed as services
Plug-and-playExtensibility
All capabilities are message basedIncluding (conceptually) the container
Standards are importantJBIPerhaps SCA
-
8/7/2019 JBossESBoverview
7/207 The Professional Open Source Company
JBossESB and standards
-
8/7/2019 JBossESBoverview
8/208 The Professional Open Source Company
Core message
Everything is a service, including thebus All services are interacted with via
messages.
Includes service lifecyclesContainers abstracted within architecture
Services plugged directly into a lifecycle bus Services can be plugged into multiple buses
concurrently
-
8/7/2019 JBossESBoverview
9/209 The Professional Open Source Company
The SOA Bus
Underlying the ESB is a MOM abstraction Does not mandate implementationJMS, SOAP etc. ESB must be able to support pure-play Web
Services deploymentsWS-RX
Capabilities can be provided by multipleimplementations
Concurrently
Support multiple busesSingle bus concept is wrong Counter to SOA and Web Services Biggest problem with old-style EAI
-
8/7/2019 JBossESBoverview
10/2010 The Professional Open Source Company
ESB versus SOA versus EDA
SOA rules take precedenceEDA is a way of implementing SOA JBossESB is a unitary EDA
ESB is a narrowing of SOAMediation not necessary for SOARouting not necessary for SOA
SOA infrastructure first and foremostESB veneer
-
8/7/2019 JBossESBoverview
11/2011 The Professional Open Source Company
Message view
-
8/7/2019 JBossESBoverview
12/2012 The Professional Open Source Company
Core service requirements
ContainerJBoss Microcontainer default MOM
JBoss Messaging and Web Services Transformations
JBoss Rules Repository
UDDIBasic contract definition QoS Service versions
-
8/7/2019 JBossESBoverview
13/2013 The Professional Open Source Company
Standards
Important for interoperabilityWeb ServicesJMS
Important for portabilityJBISCA
ButRequirements are more important Standards change!
-
8/7/2019 JBossESBoverview
14/2014 The Professional Open Source Company
JBossESB interfaces
-
8/7/2019 JBossESBoverview
15/2015 The Professional Open Source Company
Addressing
Logical and physical namesLogical requires indirection to lookup WS-Addressing based
Not dependant on Web ServicesJust capabilities
-
8/7/2019 JBossESBoverview
16/2016 The Professional Open Source Company
The Message
Two levels of messageSeen and used by clients and servicesSeen and used by the core ESB
Latter is a superset of the former
interface Message{
public Header getHeader ();public Context getContext ();
public Body getBody ();public Fault getFault ();public Attachment getAttachment ();
}
-
8/7/2019 JBossESBoverview
17/2017 The Professional Open Source Company
Client plugin
interface ClientPlugin{
public void send (Address to, Body msg);public void sendAsync (Address to, Body msg);public void sendAsync (Address to, Body msg, Callback cb);public void sendReliable (Address to, Body msg);
}
interface ClientPluginFactory{
public ClientPlugin getPlugin (ContractDefinition def);}
-
8/7/2019 JBossESBoverview
18/2018 The Professional Open Source Company
Service plugin
interface ServicePlugin{
public Body receive (Address from);
}
interface ServicePluginFactory{
public ServicePlugin getPlugin (ContractDefinition def);}
-
8/7/2019 JBossESBoverview
19/2019 The Professional Open Source Company
But
Lots to do We have many components We need to collaborate with partners
SOA-within-and-without should helpBest-of-breed approaches to ESBdeployments No single solution
Talking to partners and vendors now JBossESB as the unifying
infrastructure
-
8/7/2019 JBossESBoverview
20/20
JBossESB Needs You!