Documente Academic
Documente Profesional
Documente Cultură
BASEL
BERN BRUGG
LAUSANNE
ZUERICH
DUESSELDORF
FRANKFURT A.M.
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
FREIBURG I.BR.
HAMBURG
MUNICH
STUTTGART
VIENNA
Guido Schmutz
Contact: guido.schmutz@trivadis.com
Blog: http://guidoschmutz.wordpress.com
Twitter: gschmutz
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
AGENDA
1. Motivation
2. Mobile Enterprise Architecture
3. Mobile Integration with Service Bus
4. Mobile and SOA Suite components
5. Mobile and Oracle Event Processing (OEP)
6. Summary
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
DB
Rich Internet
Apps
DB
SOAP
SOAP
xml
Orchestration
Services
xml
SOAP
Basic
SOAP
Services
SOAP
SOAP
Mainframes
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
xml
xml
SOAP
Integration
xml
SOAP
SOAP
Integration
ERP / COTS
SOAP
SOAP
SOAP
SOAP
SOAP
Integration
Custom Apps
DB
Rich Internet
Apps
DB
SOAP
DB
SOAP
REST
json or xml
xml
Orchestration
Services
xml
SOAP
Basic
SOAP
Services
SOAP
SOAP
Mainframes
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
xml
xml
xml
xml
SOAP
Integration
Mobile Apps
SOAP
SOAP
Integration
ERP / COTS
SOAP
SOAP
SOAP
SOAP
SOAP
Integration
Custom Apps
How
to integrate
Mobile
applications into
reputation
for being
complex/heavyweight
the existing world?
Is a protocol
have
contract
language
(WSDL)
widely supported
We
used
SOAP
to expose
the core
functionality
of ours systems
multiple and
Supports standardized
securityto
approaches
tools
consumers
Mobile
Applications today dont speak
XML
SOAP/XML but REST/JSON => not
REST
Is an architectural
style
SOAP
Supports multiple
dataxml
types xml
(JSON,xml
Text, XML,
xml
Binary)
Mobile Apps
DB
DB
SOAP
REST
json or xml
xml
xml
JSON
Orchestration
SOAP
SOAP
Services
Native data
format for modern web
applications
Supports Namespaces
SOAP
SOAP
SOAP
SOAP
Rich Internet
Apps
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Integration
ERP / COTS
Integration
Custom Apps
How
to integrate
Mobile
applications into
reputation
for being
complex/heavyweight
the existing
XML world?
Is a protocol
have
contract
language
(WSDL)
widely supported
<employees>
We
used
SOAP
to expose
the core
<employee>
functionality
of ours systems
multiple and
Supports
standardized
securityto
approaches
<name>Scott
Tiger</name>
tools
consumers
REST
Rich Internet
Apps
JSON
Is an architectural
style
SOAP
Mobile Apps
DB
SOAP
DB
REST
Supports
multiple
(JSON,xml
Text, XML, xml
{xml dataxmltypes xml
<gender>male</gender>
Native<name>Barbara
data format for enterprise
data exchange
Services
Native data
applications
interoperable
{
<gender>female</gender>
Can be parsed by
JavaScript"Barbara
natively
"name":
Sample",
</employee>
Basic
XML
Schema adds the data types
"gender":
"female"
</employees>
ScalarSOAP
data types
arrays/objects
SOAPand
SOAP
SOAP supported
SOAP SOAP
SOAP SOAP SOAP
Services
}
Supports Namespaces
Mainframes
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
ERP / COTS
Custom Apps
DB
Rich Internet
Apps
DB
SOAP
DB
SOAP
REST
json or xml
xml
Orchestration
Services
xml
SOAP
Basic
SOAP
Services
SOAP
SOAP
Mainframes
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
xml
xml
xml
xml
SOAP
Integration
Mobile Apps
SOAP
SOAP
Integration
ERP / COTS
SOAP
SOAP
SOAP
SOAP
SOAP
Integration
Custom Apps
DB
Rich Internet
Apps
DB
SOAP
xml
SOAP
Basic
SOAP
Services
SOAP
SOAP
Mainframes
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
xml
REST
xml
SOAP
SOAP
Integration
ERP / COTS
json or xml
xml
SOAP
Integration
DB
SOAP
xml
Orchestration
Services
Mobile Apps
SOAP
SOAP
SOAP
SOAP
REST
SOAP
Integration
Custom Apps
10
DB
Rich Internet
Apps
DB
SOAP
DB
SOAP
REST
json or xml
xml
xml
xml
Orchestration
Services
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
SOAP
xml
Integration
xml
xml
xml
xml
SOAP
Basic
SOAP
Services
Mobile Apps
SOAP
SOAP
Integration
Mainframes
SOAP
SOAP
Integration
ERP / COTS
?
xml
SOAP
SOAP
SOAP
SOAP
SOAP
Integration
Custom Apps
AGENDA
1. Motivation
2. Mobile Enterprise Architecture
3. Mobile Integration with Service Bus
4. Mobile and SOA Suite
5. Mobile and Oracle Event Processing (OEP)
6. Summary
11
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Internet of
Things
Event Processing
12
Event
Cloud
Social Media
Streams
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
WS
HumanWF
Event
WS
REST
JMS
Processes
ACM
Biz Logic
Rules
Local ESB
Business Rule
Management
System
Rules
DB
EJB
Enterprise
Applications
Business
Logic/Rules
RDMBS
Event
Enterprise Event
Bus
Service
Gateway
DB
Mobile Apps
NoSQL
Analytical Applications
Visualization
Analytics
Data
DB
Oracle Rules
Business Rule
Oracle Real-Time
Management
Decisions (RTD)
System
Rules
Java Embedded
Event
Processing
Oracle
Event
Processing
for Java Embedded
Oracle RDBMS
Oracle NoSQL
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
REST
Event
BPM Suite
Processes
ACM
SOA Suite
Biz Logic
EJB
Business Activity
Monitoring (BAM)
WS
JMS
EDN
WebLogic JMS
Internet of
Things
Event
Cloud EDN
Social Media
Streams
HumanWF
Event
WebLogic
JMS
Enterprise
Event
Bus
WS
Service Bus
Service
Gateway
API Gateway
DB
Local ESB
MAF
13
Mobile Apps
Rules
Enterprise
Applications
ADF
Java SE
Business
Logic/Rules
Java
EE
RDMBS
Oracle RDBMS
NoSQL
Oracle NoSQL
Analytical Applications
Visualization
Analytics
Data
Business Activity Monitoring (BAM)
AGENDA
1. Motivation
2. Mobile Enterprise Architecture
3. Mobile Integration with Service Bus
4. Mobile and SOA Suite components
5. Mobile and Oracle Event Processing (OEP)
6. Summary
14
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Solution
Proxy
Service
Pipeline
Routing
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Business
Service
SOAP/HTTP
SOAP
RESTful
SOAP
Mobile
Apps
REST
Use the REST binding in the Service Bus to accept RESTful calls
Pricing
Service
16
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Solution
Use the Cloud Adapter to integrate services from cloud applications
Proxy
Service
Pipeline
Routing
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Business
Service
Cloud
API
RESTful
Cloud
Mobile
Apps
REST
Build your own adapter for a non-supported cloud solution using the Cloud Adapter SDK
Pricing
Service
Solution
Service
Callout
Routing
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Business
Service
SOAP/HTTP
SOAP
Proxy
Service
SOAP/HTTP
Helper
Service
SOAP
RESTful
Business
Service
SOAP
Mobile
Apps
REST
Pipeline
SOAP
Use a Service Callout action either in the request flow or the response flow of the Routing
action
Pricing
Service
Solution
Use the Resequencer feature of the Service Bus
Pipeline
Resequencing
Resequencer DB
Oracle RDBMS
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Business
Service
4 3 2 1
any
1 4 2 3
Proxy
Service
any
Mobile
Apps
REST
Service
Solution
Use Service Pooling to handle short interruptions (network/service)
Pipeline
Routing
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Business
Service
5x
after 2s
2
any
Proxy
Service
any
Mobile
Apps
REST
Service
Solution
Proxy
Service
Pipeline
Routing
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Business
Service
any
any
any
any
Service
Instance 2
any
Service
Instance 3
Solution
Use Result Caching to cache the information on the Oracle Service Bus
Proxy
Service
Pipeline
Routing
Business
Service
2
any
Mobile
Apps
Result Cache
22
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Coherence
any
Tune the Expiration Time settings to make sure the information is updated from time to time
REST
Service
23
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Solution
Pipeline
Routing
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Message Buffer
Business
Service
any
Proxy
Service
any
Mobile
Apps
24
REST
Service
Solution
Use the SLA Alert Rules of the Service Bus monitoring framework to measure
Proxy
Service
Pipeline
Routing
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Business
Service
SOAP/
HTTP
SLA Alert Rule
SOAP
REST
REST
Mobile
Apps
SOAP
Can be added to a simple pass-through service with minimal overhead or on any other more
complex service
Existing
Service
AGENDA
1. Motivation
2. Mobile Enterprise Architecture
3. Mobile Integration with Service Bus
4. Mobile and SOA Suite components
5. Mobile and Oracle Event Processing (OEP)
6. Summary
26
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Solution
Invoke
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Service
Mediator
Service
Service
Receive
Invoke
SCA Composite
27
SOAP
Invoke
Mediator
SOAP
Receive
SOAP
BS
SOAP
PL
BPEL
SOAP
PS
SOAP
SOAP
Mobile REST
Apps
SOAP
Solution
Use Parallel Flows (Flow, FlowN or ForEach activity) in BPEL
Invoke
Invoke
Reply
SCA Composite
28
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
SOAP
Receive
Service
SOAP
BS
SOAP
PL
BPEL
SOAP
PS
SOAP
SOAP
Mobile REST
Apps
Service
Solution
Use the Business Rule component from Service Bus directly or by Mediator or BPEL
PS
PL
BS
SOAP
Business
Rules
SOAP
Mobile REST
Apps
SOAP
SCA Composite
29
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Solution
Mobile REST
Apps
PS
PL
BS
SOAP
SOAP
Use the Human Workflow component from within the service orchestration implemented
as a BPEL process
30
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
BPEL
SCA Composite
Human
Workflow
Worklist
App
Solution
Mobile
Apps
REST
PS
PL
BS
SOAP
SOAP
Use the Spring component of SOA Suite to write SCA components which are backed by a
Java implementation, which can either be in the same project or imported via a JAR file
31
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
BPEL
SCA Composite
Spring
jar
AGENDA
1. Motivation
2. Mobile Enterprise Architecture
3. Mobile Integration with Service Bus
4. Mobile and SOA Suite components
5. Mobile and Oracle Event Processing (OEP)
6. Summary
32
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Solution
A,3
C,4
B,1
CQL
Oracle Event
Processing 12c
33
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
B
C
A
C
1
4
3
5
Mobile
Apps
HTTP
Use the CQL SELECT statement to aggregate and group the events on the stream with a
corresponding RANGE or ROW clause
B
A
C
1
3
9
Solution
Event Stream
CQL
Before
Within 1min
Oracle Event
Processing 12c
34
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
JMS
Mobile
Apps
HTTP
Use the CQL Select with MATCH_RECOGNIZE and PATTERN clause to define the
accepted patterns (can also be a missing event pattern, where an event does not occur)
JMS
PS
PL
BS
Solution
CQL
Oracle Event
Processing 12c
35
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
JMS
HTTP
Mobile
Apps
Event
Cloud
use the Spatial features offered by the OEP Spatial Data Cartridge to implement locationbased applications
JMS
PS
PL
BS
AGENDA
1. Motivation
2. Mobile Enterprise Architecture
3. Mobile Integration with Service Bus
4. Mobile and SOA Suite components
5. Mobile and Oracle Event Processing (OEP)
6. Summary
36
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Summary
Service Bus and SOA Suite are an ideal platform for mobile-enabling existing
services/functionality
Its not a question of Java or BPEL or Service Bus
37
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Instance Monitoring
SCA
BPEL/BPMN 12c
Message Filter
JDeveloper
Compensation
Asynchronous
Messaging Pattern
Graphical Debugger
Split-Join
Rule-based
routing
JCA Adapter
XSLT
Graphical Flow
Design
Service Pooling
(Load Balancing)
Reliable Messaging
38
Security
Mediator 12c
Retry
Message Validation (XSD)
REST Binding Message Routing
XREFs
Embedded
DVMs Java
XQuery
Parallel Processing
XA Support
Message Validation
(Schematron)
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Resequencing
HTTP
Message
Throttling
Mediator 12c
XSLT
Routing
Java
JCA Adapter
Graphical
Coherence
Resequencing
Debugger
Graphical Flow
SLA Alert Rule
Design
HTTP
Message Throttling
Split-Join
Reliable Messaging
Service Pooling
(Load Balancing)
39
Asynchronous
Messaging Pattern
2014 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
Geo-Spatial
Real-Time
Tuple-based
Window
OEP 12c
Time-based
Window
Missing Event
Detection
Event Pattern
StreamDetection
Processing
BASEL
40
BERN BRUGG
LAUSANNE
ZUERICH
DUESSELDORF
FRANKFURT A.M.
2014
2013 Trivadis
Oracle Service Bus and Oracle SOA Suite in the Mobile World
16.09.2014
FREIBURG I.BR.
HAMBURG
MUNICH
STUTTGART
VIENNA