Download as pdf or txt
Download as pdf or txt
You are on page 1of 11

The following is intended to outline our general

Monitoring, Administering, and product direction. It is intended for information


Troubleshooting Oracle SOA Suite & ADF purposes only, and may not be incorporated into any
contract. It is not a commitment to deliver any
material, code, or functionality, and should not be
Samrat Ray
relied upon in making purchasing decisions.
Sr. Principal Product Manager, SOA Suite
The development, release, and timing of any
features or functionality described for Oracle’s
Shay Shmeltzer products remains at the sole discretion of Oracle.
Group Product Manager, ADF

Agenda
Platform
SOA Suite Management Architecture
Platform Architecture
Configuration Management
Monitoring and Fault Recovery
Performance Tuning & Troubleshooting

ADF Management

Q&A
Service Oriented Architecture Internal Stack of SOA Suite 11g
Composite Applications

Service Engines Binding Components


Mediation BPEL Rules

Human (BPEL PM, Mediator, Human (WS, JCA Adapters, B2B, BAM)
Mediation Task
Workflow, Business Rules)
BPEL
orchestration
Human
Web SCA Composite Pluggable
Tasks
Business
services
and Service Engines
adapters
Rules
Service Infrastructure (SCA)
SOA Composite Editor

BPMN BPEL
Human …
Task Oracle Portability Layer (JRF) / OWSM / EDN / UMS
Policy
Management Policy Manager

Service Infrastructure
Optimized
Service & Eventing WebLogic Server
Infrastructure SOAP B2B ETL JCA SDO
ADF BC …

Common Connectivity
Infrastructure

J2EE Deployment View of SOA Suite 11g SOA Domain – Overview

Admin Server
J2EE Applications (ear) Description Simple, one-machine install Domain home Oracle home Typical SOA HA install
(configuration) (binaries)
em Enterprise Manager Console
EM Administration
Server
Manager Server / Cluster Managed
Server
… Managed
Server
SOA Managed EM
J2EE Applications (ear) Description Cluster 1: SOA
Server Administration
soa-infra Core SOA runtime hosting Service Infrastructure SOA Server

b2bui B2B Console BAM Managed


Server
BAM Managed
Server
… Managed
Server

worklistapp, Human Workflow Consoles Cluster_Domain Cluster 2: BAM


DefaultToDoTaskFlow SOA_Domain

JCA Adapter Archives (rar) Enterprise Manager (EM) is hosted on the Admin Server
FileAdapter AqAdapter MQSeriesAdapter SOA Runtime (soa-infra)
soa-infra is a J2EE application that is targeted to either a managed server or a cluster
DbAdapter FtpAdapter OracleAppsAdapter
There can be a single SOA cluster in a domain.
JmsAdapter SocketAdapter OracleBamAdapter BAM is a separate application that is deployed to the same domain as soa-infra.
Domain – Physical and Logical Aspects SOA 11g HA Architecture

Oracle Home - Multiple domains WLS Cluster


can be created from binaries
installed within a Oracle Home. Defined in config.xml
Domain Home - At a physical Can be viewed from WLS
level, a domain is a directory that Console and EM
contains configurations for all
servers, services and deployed
applications. SOA Cluster
A managed server instance can be Coherence based cluster
started from any physical box as Defined as system
long as it has access to a domain
parameters in startup
directory.
scripts
Multiple servers can refer to the
same physical domain home or Can be validated through
have their local copies of the deployment /
domain. configuration changes.

SOA Domain - Directory Structure


domain home

Configuration start/stop & env scripts


Configuration:
Management Stored under “config” directory
configuration root

The config directory contains a file


called config.xml which is the primary
source of all configuration information
within a domain.
SOA configuration is stored in MDS
since PS1.
local cache of deployed
Scripts: composites
Stored under “bin” directory.
Start / stop Admin & Managed server
Set environment and JVM properties

Logs:
Server logs are placed under sub-directory for each
managed server (logs
servers/<server_name>/logs / cache)
WLS and SOA Configuration SOA 11g Meta-Data Store

WLS Properties
Runtime Store
Persisted in domain configuration files, changes are propagated Composite meta-data
across the cluster by the Adminserver. Security policies
Service Infrastructure (soa-infra) Properties Error policies
11gR1 PS1: Properties are persisted in MDS (database), B2B Agreements
changes are automatically propagated across a cluster.
Shared WSDLs and XSDs
Composite Properties
ADF / Human Workflow
Meta-data associated with a composite is stored in MDS
(database) Can be accessed from
These properties can be customized using a “Configuration Plan” JDeveloper and Ant.
at the time of deployment.
Composite properties are automatically propagated across a Configuration customization
cluster as part of the composite deployment process. is stored in MDS.

Configuration Propagation in a Cluster Layered Management Consoles

WLS + Coherence Clusters


SOA 1
Enterprise Manager
Fusion Middleware Control
Admin MDS • soa-infra
SOA 2 • Service Engines
WLS Configuration SOA Configuration
• Composites

WLS Configuration SOA Configuration


File based DB (MDS) based.
WebLogic Server
AdminServer has “gold” copy Database has “gold” copy. Administration Console
Configuration propagated by Configuration propagated by • Adapter config
WLS JMX framework. soa-infra using the Coherence • Data sources
During startup, a Managed cluster. • JMS
Server copies configuration During startup, a SOA server • JTA
from AdminServer and loads its configuration from • Security Realms
overwrites local copy. MDS.
Tools for Configuring SOA Apps Enterprise Manager
Features / Concepts

SOA container configuration done through EM console Composite Instance State


/ WLST Derived from state of component instances, must be
enabled
Endpoint properties modified during deployment Audit-Level Inheritance
through a Configuration Plan Service engines can inherit audit level from soa-infra
Created Composites can override global settings
Adapter properties Role-Based Access
Administrator, operator and read-only roles
WLS Console / WLST for managing WLS configuration Advanced Configuration via MBean Browser
Domain creation, adding / changing resources within a Common features on property pages
domain.
Log Viewer
Filtered, searchable built-in log viewer

SOA Composite
Monitoring and
Fault Recovery
Interface +
Container Injected Binding
Wire

Interface +
Binding

Bindings – binding.ws, binding.jca, binding.ejb, binding.direct


Process Execution Visibility Faults and Recovery

Categories of Faults
Business Faults
Runtime Faults
Business User
Visibility
BPEL
Recovery Options
– BAM
External
Service
Drill-down Dashboard Fault policies or BPEL fault handlers for programmatic
Human
Workflow
into
components – Sensors handling of faults
Can delegate to administrator
Routing
BPEL message recovery for unhandled faults
Business
Rules
Auto-recovery (recommended) / EM based
Rejected messages from inbound adapters
Administrative Visibility
- EM: Audit Trail

Policy Based Fault Handling Fault Handling within EM Faults &


exceptions

Fault Policies Unified exception


Fault handling rules centralized in policy files (XML files) handling framework:
Associated with specific a Reference, Component or Composite Search log

Can define a conditions chain of recovery actions Delete Recovery


screen
Recover failed
Recovery Actions instances (individual or
Retry - Retries failed operation # times with specified wait time, batch)
exponential back off, retry failure action, multiple endpoints
Human Intervention - Console based recovery, possibility of changing values
of component variables Directly access
Abort process corresponding log Recovery
Action
Replay scope entries
Re-throw fault Edit payload

Java action – custom Java code called


Performance Tuning Highlights
Performance Tuning
& Troubleshooting Scalability - All asynchronous points are associated
with configurable thread pools:
BPEL – Invoker thread pool, Engine thread pool
Mediator Parallel Routing – Worker threads, Locker batch
and frequency
Inbound adapter thread pools (defaults to 1)

Reducing CPU / memory usage


Turn off XML validation where not required
Throttle above thread pools

Performance Tuning Highlights JVM / System Diagnostics


JRockit Mission Control

Persistence has a major impact on performance


Audit Trail
Turn Off where not required
Use Minimal at engine level to not store BPEL messages
Turn off message buffering for one-way processes where
message is recoverable e..g inbound Adapters
oneWayDeliveryPolicy=sync (default is async.persist)
Turn of state persistence for synchronous short lived processes
inMemoryOptimization + completionPersistPolicy

Purging – Important to have a strategy


Database partitioning, purge scripts, hybrid
Common Issues Common Issues

Deployment Transaction Timeout


HTTP 503 during JDeveloper deployment Change domain-wide transaction timeout settings
Proxy server setting in JDev missing (requires restart)
Change BPEL engine EJB transaction timeout settings
Cannot find Server <IP>
IP / host is retrieved from admin server mbeans
WLS mgd’ server binds to all NICs, change listen address and /or set High memory footprint with large set of composites
Front-End host on WLS console
Fixed part of PS3 release.
Patches available for PS2
Composite does not deploy on all running nodes in a cluster
Check Coherence configuration
SOA EM pages loading slowly
Adapter connection factory Disable aggregated metrics
Addition / change of connection factory does not take effect Scope queries by time
Either restart the mgd’ server or redeploy the adapter with plan
PS3 - Can add a connection factory without requiring a restart

ADF Architecture
ADF
Management Business Services

Data
Binding

events

BAM Human Workflow Mediator /BPEL Rules


Service assign Process facts Engine

complete results
ADF Configuration ADF Monitoring

Configure Database Connection and pooling Use EM to


WLS datasources monitor your
bc4j.xcfg application
Configure Web Application Specific
web.xml file functionality
Context root built in for
Timeouts ADF
ADF Faces parameters
Possibly webcache configuration
Security
MDS

Overall Application View Monitor Application Module Pools


Monitor Task Flows ADF Tuning

JDeveloper Profilers
Oracle Application Testing Suite
Automates both functional testing and load testing
Simulates application loads of hundreds to tens of
thousands of concurrent users while minimizing
hardware requirements
Gathers critical infrastructure performance metrics
to identify bottlenecks under load
Check database access

ADF Troubleshooting

Turn on logging Summary


Advanced functionality available through EM
ADF Debugger
Special functionality to monitor ADF artifacts and
lifecycle
Key Guides Oracle SOA and BPM Suites – Related Books
SOA tutorial BPM tutorial reference

Administrator’s Guide
Test to production procedure

Enterprise Deployment Guide and HA Guide


Configuring production domain
HA Considerations
http://snipurl.com/soa11gbook http://snipurl.com/bpm11gbook reference

Performance Tuning Guide


Official Documentation:
SOA Suite 11g Administration
Guide

You might also like