+ All Categories
Home > Engineering > SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

Date post: 11-Nov-2014
Category:
Upload: amis-friends-of-oracle-and-java
View: 251 times
Download: 3 times
Share this document with a friend
Description:
Deep dive Developer Productivity and Performance SOA Suite 12c. Presentation during the SOA track of the AMIS SOA and BPM Suite 12c launch event on July 17, 2014
Popular Tags:
51
Developer Productivity and Performance Robert van Mölken, 17-07-2014 SOA Suite 12c Deep-Dive
Transcript
Page 1: 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

Page 2: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 3: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 4: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

4

Integration of SOA and SB development

Pipeline editor similar to Eclipse IDE (11g)

Page 5: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 6: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

6

SOA Debugger

A breakpoint can be on adapters using the composite editor.

Het rode bolletje geeft ook de richting aan van de breakpoint,

Page 7: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

7

SOA Debugger

Debugging can be performed via context menu

Page 8: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

8

SOA Debugger

Once debugger launched a message can initiated on a SOAP service

Page 9: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

9

SOA Debugger

An active breakpoint turns blue whereupon the DATA tab will show the current variables

Page 10: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

New Technology Adapters

10

Page 11: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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 )

Page 12: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

12

REST Adapter

Adapter for both exposing and calling REST service

Page 13: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

13

REST Adapter

Declare one or more resource paths (= endpoints)

Page 14: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

14

REST Adapter

Add own operations with request and response or from existing service

Page 15: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

15

REST Adapter

Payload can be accepted as XML, JSON or URL-encoded. Payload will be automaticly transformed to choosen XML Schema

Page 16: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

16

REST Adapter

For the response you can set which response codes can bereturned and what payload and how to return faults

Page 17: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

17

REST Adapter

When consuming an external REST service it can be based on a WADL.

Page 18: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 19: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

19

Coherence Adapter

Adapter to put in and get items from Coherence cache

Page 20: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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.

Page 21: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

21

Coherence Adapter

Page 22: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

22

Coherence Adapter

A cache item can be based on a XML Schema

Page 23: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 24: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

24

Cloud Adapter: Salesforce.com

Salesforce.com Cloud Adapter: create new business object

Page 25: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 26: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

26

LDAP Adapter

Adapter for integration with LDAP registry

Page 27: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 28: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

28

Updated UMS Adapter

Adapter for integration with messaging services (email, SMS, IM)

Page 29: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 30: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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.

Page 31: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

Performance & Optimization

31

Page 32: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 33: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 34: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 35: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 36: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 37: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 38: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 39: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 40: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

New and updated product releases

40

Page 41: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 42: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 43: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

Managed File Transfer (MFT)

MFT 12c: Simple and Secure End-to-End Managed File Gateway

Page 44: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 45: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

45

Oracle Event Processing (OEP)

OEP 12c: Switches from Eclipse to JDeveloper

Page 46: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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)

Page 47: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

47

Enterprise Scheduler Service

ESS 12c: Schedule jobs using EM

Page 48: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 49: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

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

Page 50: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

50

Business Activity Monitor (BAM)

BAM 12c: Analytics in BPEL

Page 51: SOA_BPM_12c_launch_event_SOA_track_deepdive_developerproductivityandperformance_robertvanmolken

51


Recommended