SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken
-
Upload
amis-friends-of-oracle-and-java -
Category
Engineering
-
view
251 -
download
3
description
Transcript of SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken
Developer Productivity and Performance
Robert van Mölken, 17-07-2014
SOA Suite 12c Deep-Dive
Developer installer with integrated server
• Oracle created a single download
– JDeveloper
– Database (JavaDB)
– Weblogic
– Integrated SOA Suite (incl Service Bus)
– Full fletch Enterprise Manager
• All software is installed into a single middleware home directory.
• JavaDB is a development database that allows one to start development with SOA Suite without the need to run RCU.
‘30 minutes to Hello World’
Bit much… AMIS current record is 10
3
Integration of SOA and SB development
• In 12c both SB and SCA development is done in Jdeveloper
• All Adapters supported in Service Bus
• Service Bus analogy more like SCA Composites
– It uses a Composite like overview
– Proxy is renamed to Proxy Services and Business Service to External Services
Proxy
Services
Proxy
ServicesPipelines and Split-joinsPipelines and Split-joins Business
Services
Business
Services
Palette of Service
Components
& Adapters
Palette of Service
Components
& Adapters
4
Integration of SOA and SB development
Pipeline editor similar to Eclipse IDE (11g)
5
Integrated run-time SOA environment with debugging
• Available on the integrated WebLogic server within JDeveloper
• Installed ‘out of the box’, included with the simple installer
• Locally develop and run your SCA composites and Service Bus services
• Even better, you can run it in debug mode
– Set breakpoints in Composite editor, BPEL processes and Service Bus Pipelines
– Ability to stop at a breakpoint, look at the data and step in, step out, etc
– Ability to change the value of a variable while debugging
JDeveloper 12c: Integrated SOA/OSB debugger
6
SOA Debugger
A breakpoint can be on adapters using the composite editor.
Het rode bolletje geeft ook de richting aan van de breakpoint,
7
SOA Debugger
Debugging can be performed via context menu
8
SOA Debugger
Once debugger launched a message can initiated on a SOAP service
9
SOA Debugger
An active breakpoint turns blue whereupon the DATA tab will show the current variables
New Technology Adapters
10
11
Mobile EnablementREST Adapter
• Easily expose any service or reference as REST
• Automated conversion from XML to JSON
• Possibility to map operations to existing services
• Built-in coherence caching for result optimization
• JDeveloper can generate XML & JSON sample payloads
• Looking at the REST adapter more closely!
– Supports multiple resource paths, including dynamic path variable
– Map multiple operation to the same resource path using different HTTP method
– OWSM policies for REST ( no OAuth support )
12
REST Adapter
Adapter for both exposing and calling REST service
13
REST Adapter
Declare one or more resource paths (= endpoints)
14
REST Adapter
Add own operations with request and response or from existing service
15
REST Adapter
Payload can be accepted as XML, JSON or URL-encoded. Payload will be automaticly transformed to choosen XML Schema
16
REST Adapter
For the response you can set which response codes can bereturned and what payload and how to return faults
17
REST Adapter
When consuming an external REST service it can be based on a WADL.
18
Integrated CachingCoherence Adapter
• Integrates the Coherence Cache with SCA Composites & Service Bus
• Used to reduce latency on high-traffic operation(s)
• Put, get, remove and query data into/from the Coherence cache
• XML and POJO (custom Java class) as data structure
• Some interesting features of this adapter:
– Auto-generation of unique key when putting data into cache
– Setting a time-to-live for your data in the cache
– Return only the keys when querying data
19
Coherence Adapter
Adapter to put in and get items from Coherence cache
20
Coherence Adapter
It can Put items into Coherence, Get items, Remove items using its cache keyand can it query Coherence using any search strings.
21
Coherence Adapter
22
Coherence Adapter
A cache item can be based on a XML Schema
23
Cloud ConnectivitySalesforce.com
• Support for inbound and outbound integration, secure connection and session management.
• It has a graphical API discovery, uses declarative modeling through wizards and supports optimization of API requests.
• Support for standard and custom Salesforce objects
– Through SOAP API using Partner WSDL & Enterprise WSDL
– Uses Salesforce’s own Query Language (SOQL) & Search Language (SOSL)
• Uses the Oracle Credential Store Framework to store user credentials
• Supports the adapter diagnostic framework for reporting and alerting
24
Cloud Adapter: Salesforce.com
Salesforce.com Cloud Adapter: create new business object
25
LDAP Adapter
• Support for inbound and outbound integration
• Access you LDAP directory e.g. check user has the required privileges
• Inbound integration
– Listen to Entry change notifications (ECN) and Change log notifications
– When listening to a ECN you can select which Search Base you want to use, an
optional Search Filter and on what Event you want to be triggered on
• Outbound integration
– Four one-way operations; Add, Delete, Modify, Modify DN
– Three sync operations: Compare, Search and execute a custom DSML request
– DSML request option uses DSMLv2 schema definition
26
LDAP Adapter
Adapter for integration with LDAP registry
27
Updated UMS Adapter
• Updated version of UMS Adapter introduced in 11.1.1.7
• New SMS and IM for inbound and outbound integration
• New outbound operation type to get the status of a send message
• The SMS (SMPP) and IM (XMPP) configuration is done through the driver configuration pages in the EM
• JDeveloper has two new notification types to support the new drivers
– Choosing SMS you enter the from and to telephone#
– Choosing IM you enter the jabber account to send the message to
28
Updated UMS Adapter
Adapter for integration with messaging services (email, SMS, IM)
29
Other Adapters
In addition to these four major changes, there are also new adapters for:
• MQ Adapter to integrate with IBM WebSphere MQ
• MSMQ Adapter to integrate with Microsoft Message Queuing
• The Web Service Adapter is renamed to SOAP Adapter
• MFT Adapter for Oracle’s Managed File Transfer
30
Database Connection Types
• Java DB - Oracle's supported distribution of the Apache Derby open source database. It is used to run SOA Suite repository which is used by the integrated server
• JDE World - Easy access to the data in the JD Edwards database.
Performance & Optimization
31
Modularity
• 12c has improved start up times and memory footprint with modularity profiles enabling only required components
• New installation is default configured with the SOA_FOUNDATION profile
– Can be altered in EM
• Upgrading from 11g will set SOA_CLASSIC as the default profile
– SOA_CLASSIC profile has the largest footprint, BPEL_ONLY has the least footprint
Modularity
The profiles listed below are arranged in decreasing order of footprint
– SOA CLASSIC ~ SOA Foundation with B2B + BPM Modules
– SOA FOUNDATION WITH HEALTHCARE ~ SOA Foundation with B2B + Healthcare UI
– SOA FOUNDATION WITH B2B ~ SOA Foundation Enterprise + B2B
– SOA FOUNDATION ENTERPRISE ~ SOA Foundation + Full Adapter Set
– SOA FOUNDATION ~ Orchestration + Mediator + Rules + Partial Adapter set
– ORCHESTRATION ~ BPEL-Only + HWF + Partial Adapter set
– BPEL-ONLY ~ BPEL Components + SOA Common Infrastructure + Partial Adapter set
• Partial Adapter set consist of the File, FTP, DB, JMS, AQ, MQSeries, OracleApps and the UMS Adapter
• Full adapter sets adds the Socket, LDAP, Coherence, MSMQ, JDEWorldand the SAP Adapter
34
Composite Lazy Loading
• Staggered loading of composite artifacts which spreads out bootstrap cost
• Composite loading time is fixed number, but delays the loading of some resources till it receive first request
• Initial time for server startup is improved and the cost across for individual composites is spread out based on their demand
• Reduces overhead from composites which are rarely used
35
Composite Lazy Loading
Composite loading has the following stages
1. Creation on in-memory java models
2. Creating Mbeans
3. Loading the various components in the composite
4. Loading the resources used by the composites such as schemas & WSDLs
• First 2 stages are performed at server start up, loading the needed metadata
• Next two stages are performed when particular composite receives a request
36
Work Managers
• WLS leverages work managers across SOA Suite, eliminating the need to perform manual configurations to tune for performance
• Resource management and scheduling is delegated to WLS
• Event Delivery Network (EDN) and adapters do not use work managers
• Work managers are self tuning
– Avoids inconsistencies that occur with processing transactions from manual setting
– Allows WLS to self tune based on types of processes
• Work managers can even be configured per SOA partition
37
DB Tuning out-of-the-box
• Running RCU to create the initial DB schemas you can choose between several DB profiles; small, medium and large
– This enables the appropriate OOTB performance features
• The medium/large profiles automatically configure DB partitioning and Global hash indexes (GHI)
– GHI helps with faster querying & EM responsiveness and instance tracking
performance
– GHI avoids full table scans and coupled with auto purge feature it keeps the
overheads low
38
Purge/Partitioning Improvements
• Auto purge of SOA Repository is enabled by default for new installations
• Purging can now be scheduled through the enterprise manager
• Improved performance due to the new DB schemas which consolidate Audit and Flow instance data and Eliminates orphaned instances
• Interval Partitioning accelerates purging by targeting tables/instances within a time range
39
Event Delivery Network (EDN)
• Re-built and based on JMS
• Deliver Events to single or multiple AQ or WebLogic Topics
– Brings scalability, different topic per consumer
• EDN publish and subscribe available outside SOA Suite
• Standard JMS functionality is now possible
– Durable subscribe and Store and Forward
New and updated product releases
40
Managed File Transfer (MFT)
• Simple and Secure End-to-End Managed File Gateway
– Large files, encryption, auditing, monitoring, pass-by-reference
• Standards Based Middleware Integrations
– (s)FTP, SOA, B2B, Service Bus, Web Services …
• Lightweight Web based Design Time Interface
– Easily build, edit and deploy end-to-end transfers
• Additional Characteristics
– Scheduling, Embedded sFTP server, FTP proxy, no transformations
– Advanced Management: Pause, Resume, Resubmit
Managed File Transfer (MFT)
• Core
– “Embedded” FTP(S)/SSH, FTP / SSH server
– File transfer auditing
– Extensible framework – pre/post processing
– HA clustering
– SOA/B2B integration and delivery headers
– Scalable architecture
• Monitoring and Management
– Web UI: Managed Server• Designer, Monitor, Administration
– Enterprise Manager: Admin Server
• File Delivery
– Very Large Files ~ 500GB+
– Pass by Reference FTP or File, Inline
– Scheduling and Auto Retry
– Pause and Resume Target endpoints
– HTTP, JCA, FTP, In-memory
– Notifications
– Actions• Zip Compress/Decompress
• PGP Encrypt/Decrypt
– Callouts• Archive, Delete, Move, Custom
For more detailed information check out our OOW presentation on MFT: http://slidesha.re/16ZiCa8
Managed File Transfer (MFT)
MFT 12c: Simple and Secure End-to-End Managed File Gateway
44
Oracle Event Processing (OEP)
• Fully integrated in JDeveloper, left previous IDE (Eclipse)
• Every project has a EPN Diagram entry in the project explorer
• Added dialog windows for creating components
– Right-clicking within the EPN editor
– Drag & drop from the Components palette
• Two new adapter one for CSV (in-/outbound) and EDN (in-/outbound)
• Extensions to support Hadoop & Oracle NoSQL for use as TABLE source
• Extension for invoking/receiving Remote Method Invocation (RMI) calls
45
Oracle Event Processing (OEP)
OEP 12c: Switches from Eclipse to JDeveloper
46
Enterprise Scheduler Service
• With ESS you can schedule jobs (using job metadata modeling)
• Create and schedule jobs through the EM of Java API
• ESS can call EJB, PL/SQL, Java and Web Services (SCA/SB and Sync/Async with OWSM)
• Keeps track of dependency management, conflict resolution, prioritization, clustering, processor allocation and throttling
• What can it do for SOA?
– Supports scheduling of SCA Composites and SB Proxy services
– Prebuild jobs for initiating, activating and deactivating SOA and Service Bus components
– Schedule bulk error notifications to EM / Alert channels
– Bulk operations for fault management (automatically disable adapters)
47
Enterprise Scheduler Service
ESS 12c: Schedule jobs using EM
48
Business Activity Monitor (BAM)
• Multi-browser support including Mobile support
• More advanced Security model using OPSS (Oracle Platform Security Services) to secure the collected data
• Support a hybrid integration of CQL and SQL
– both query languages can be used together to collect data from different sources
• Uses Coherence for report and metadata cache
• Better integration with SOA/BPM Suite, because use of Star Schema
• Supports Active-Active High Availability modes, to run BAM on a cluster
49
Business Activity Monitor (BAM)
• Export data during execution of processes to allow continuous monitoring
– Continuous monitoring in three ways; Real Time, One Time and Scheduled
• Side-by-side analysis between historical BI data and operational data
• New dashboards comes more richer out-of-the-box
– Extensive catalog with Metrics e.g. SOA/BPM process and Human Task performance
– Updated geomap, tree map, watch list, shatter chart and bubble chart components
50
Business Activity Monitor (BAM)
BAM 12c: Analytics in BPEL
51