Presentation is loading. Please wait.

Presentation is loading. Please wait.

UGF1450 Robert van Mölken - AMIS Services, Top tips for mastering the SOA Cloud Service.

Similar presentations


Presentation on theme: "UGF1450 Robert van Mölken - AMIS Services, Top tips for mastering the SOA Cloud Service."— Presentation transcript:

1 UGF1450 Robert van Mölken - AMIS Services, 18-09-2016 Top tips for mastering the SOA Cloud Service

2 Presenter Profile Robert van Mölken Oracle Integration Specialist since ‘07 Oracle Beta tester, frequent blogger & presenter and SIG Lead for the Dutch User Group. Author of upcoming book: Implementing Oracle Integration Cloud Service Linkedin: linkedin.com/in/rvmolkenlinkedin.com/in/rvmolken Blog: technology.amis.nltechnology.amis.nl Twitter: @robertvanmolken@robertvanmolken Middleware Partner of the Year 2011, 2013, 2014 & 2015 EMEA Partner of the Year 2014

3 3 Tips we will be discussing When and how to get the most out of SOA CS –Tip #1: When to choice SOA CS? –Tip #2: What components to use? Lift and Shift workload to the cloud –Tip #3: Deploy artifacts using Maven & HTTPS Tunneling –Tip #4: Alternatively use Developer Cloud Improve productivity and re-usability –Tip #5: Kickstart projects using SOA templates –Tip #6: Re-use of code using Sub-processes Managing your environment –Tip #7: Suspend upstream services –Tip #8: RESTful management APIs Ask Robert –Tip #9 --- #n

4 When and how to get the most out of SOA Cloud Service

5 Two choices for integrations Oracle Applications, SAP, customer, legacy… ON-PREMISES 3 rd Party ORACLE CLOUD Salesforce Oracle Integration Cloud Service Oracle SaaS Applications Connectivity Agent Two choices in Oracle’ Integration space Oracle Applications, SAP, customer, legacy… ON-PREMISES 3 rd Party ORACLE CLOUD Oracle SOA Cloud Service Oracle DBaaS & Compute Cloud Oracle SOA Suite VPN

6 TIP #1

7 Tip #1: When to choice SOA CS? ICSSOA Integrates with technology adapter based application and max two cloud applications Unlimited incoming and outgoing connections, amount of messages and message payload size Uses VPN to connect to on-premises Platform for application integration, orchestration, API management, streaming analytics, B2B, MFT, Business monitoring Lift and shift from/to on-premise Access to WL Console, EM & filesystem Integrates with 40+ cloud applications and services a few technology adapters Depends on subscription. Minimal 2 connections metered or 6 when un-metered. 100.000 msgs / conn, 512kb payload size Uses on-premise agent that connects to cloud Platform for application integration (cloud and on-premise), orchestration, file transfer Created in the cloud, can be ex-/imported Access to ICS console and log files

8 TIP #2

9 9 Tip #2: What components to use? What If I want to lift and shift on-prem SOA Suite? I also need to control access on APIs? It depends… do you use both SB and SOA?

10 10 Tip #2: What components to use? I also need to control access on APIs? And if I want to securely send documents? B2B?or large files? What If I want to lift and shift on-prem SOA Suite? It depends… do you use both SB and SOA?

11 11 Tip #2: What components to use? What If I want to be able to track my orders?

12 Lift and Shift workload to the cloud

13 Few ways of deploying artifacts to the SOA Cloud Deploy SOA artifacts using the Fusion Middleware Control

14 Lift and Shift workload to the cloud Few ways of deploying artifacts to the SOA Cloud Deploy SOA artifacts using the Fusion Middleware Control Deploy Application artifact using the Weblogic

15 Lift and Shift workload to the cloud Few ways of deploying artifacts to the SOA Cloud Deploy SOA artifacts using the Fusion Middleware Control Deploy Application artifact using the Weblogic Server Console TIP: Deploy artifact using Maven and HTTPS Tunneling

16 TIP #3

17 Tip #3: Deploy artifact using Maven and HTTPS Tunneling Able through HTTPS tunneling –WLST can’t connect directly to remote SSL targets –Setup can be done using Putty or command line Steps to realize tunnel with Putty –Create putty private key using Puttygen

18 Tip #3: Deploy artifact using Maven and HTTPS Tunneling Able through HTTPS tunneling –WLST can’t connect directly to remote SSL targets –Setup can be done using Putty or command line Steps to realize tunnel with Putty –Create putty private key using Puttygen –Create new session in Putty to cloud

19 Tip #3: Deploy artifact using Maven and HTTPS Tunneling Able through HTTPS tunneling –WLST can’t connect directly to remote SSL targets –Setup can be done using Putty or command line Steps to realize tunnel with Putty –Create putty private key using Puttygen –Create new session in Putty to cloud –Configure auto-login with OPC user

20 Tip #3: Deploy artifact using Maven and HTTPS Tunneling Able through HTTPS tunneling –WLST can’t connect directly to remote SSL targets –Setup can be done using Putty or command line Steps to realize tunnel with Putty –Create putty private key using Puttygen –Create new session in Putty to cloud –Configure auto-login with OPC user –Configure SSL shell setting (Do not start)

21 Tip #3: Deploy artifact using Maven and HTTPS Tunneling Able through HTTPS tunneling –WLST can’t connect directly to remote SSL targets –Setup can be done using Putty or command line Steps to realize tunnel with Putty –Create putty private key using Puttygen –Create new session in Putty to cloud –Configure auto-login with OPC user –Configure SSL shell setting (Do not start) –Configure authentication based on private key

22 Tip #3: Deploy artifact using Maven and HTTPS Tunneling Able through HTTPS tunneling –WLST can’t connect directly to remote SSL targets –Setup can be done using Putty or command line Steps to realize tunnel with Putty –Create putty private key using Puttygen –Create new session in Putty to cloud –Configure auto-login with OPC user –Configure SSL shell setting (Do not start) –Configure authentication based on private key –Configure SSL Tunneling

23 Tip #3: Deploy artifact using Maven and HTTPS Tunneling Use your existing Maven build scripts and even your build server > mvn pre-integration-test -DoracleServerUrl=http://localhost:8001 -DsarLocation=deploy/sca_TestService_rev1.0.sar -Doverwrite=true -DforceDefault=true -Dcomposite.partition=default -Duser=weblogic -Dpassword=welcomeOOW > cd \Development\Sources\Projecten\Openworld\MavenApp [INFO] ------------------------------------------------------------------------ [INFO] ORACLE SOA MAVEN PLUGIN - DEPLOY COMPOSITE [INFO] ------------------------------------------------------------------------ [INFO] [INFO] setting user/password..., user=weblogic INFO: Creating HTTP connection to host:localhost, port:8001 INFO: Received HTTP response from the server, response code=200 ---->Deploying composite success. [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building MavenApp 1.0-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO] Reactor Summary: [INFO] [INFO] TestService........................................ SUCCESS [ 16.552 s] [INFO] MavenApp........................................... SUCCESS [ 0.016 s] [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 21.587 s [INFO] Finished at: 2016-09-12T20:43:58+02:00 [INFO] Final Memory: 12M/245M [INFO] ------------------------------------------------------------------------

24 Tip #3: Deploy artifact using Maven and HTTPS Tunneling

25 TIP #4

26 26 Tip #4: Build and deploy with Developer Cloud Developer Cloud provides code revision control, issue tracker, agile board, wiki and build and deploy tools. It’s part of SOA Cloud Service subscription Currently Developer Cloud can run SOA maven builds Use it to deploy JEE applications

27 27 Tip #4: Build and deploy with Developer Cloud Developer Cloud provides code revision control, issue tracker, agile board, wiki and build and deploy tools. It’s part of SOA Cloud Service subscription. Currently Developer Cloud can run SOA maven builds Use it to deploy JEE applications SOA artifacts are not yet supported

28 Improve productivity and re-usability

29 Not to miss features in SOA CS Kickstart projects –Using SCA Composite & Servicebus template instead for building it twice the same Promote re-use of code –Create sub-processes inline of standalone without a needed service interface. Support mobile applications –Expose REST services that connect to existing business processes –End-to-end JSON and Javascript when calling external REST APIs

30 TIP #5

31 Tip #5: Kickstart projects using SOA templates Build-in template support to kick-start composite There are three types of templates –SOA Project, Component and Custom Activity template. Templates are fully editable –Once you apply them to composite or component it will be part of that All dependencies (e.g. partnerlinks) are part of the template Templates are visible if available in the template path –But there is also an import wizard available

32 32 Tip #5: Kickstart projects using SOA templates Project Templates –Create/load an entire project. –Accessible at creation of new project –Example: skeleton project with default adapters and mediators Component Templates –Create/load a component with all his dependencies. –Automatically discovered in the Components window (Composite editor) –Example: BPEL process with default invocations to common services. Custom Activity Templates –Contain variables and activities –Automatically discovered in the Components windows (BPEL Process editor) –Example: Default Fault handling scope

33 33 Tip #5: Kickstart projects using SOA templates Create Templates Consume Templates

34 TIP #6

35 35 Tip #6: Re-use of BPEL code using Sub-processes Sub-processes allow certain business logic to be made reusable There are two types; standalone and inline –Inline Sub-processes permits access to data (variables) of the parent process –With a standalone Sub-process the data needs to be assigned Improve performance (faster rendering of only entity in question) and Manageability (modular approach) of BPEL processes

36 36 Tip #6: Re-use of BPEL code using Sub-processes Inline sub-process VS Re-usable in the same BPEL process Part of the parent and not visible in composite view Visible under Activities view (component palette) Define parameters or use the parent parameters Activities should be part of scope to be converted New ‘call’ activity in BPEL to call a sub-process Reusable at run-time and can be parallel used. Only one copy is stored in the memory. Standalone sub-process Reusable by other BPEL processes. Visible in composite view, the wire to a sub- process is shown as a dotted line No interface, define parameters Created as separate component Only callable by another BPEL process using ‘call’ activity, but can have partnerlinks. Can’t be called from outside its own Composite. Recommendation: Always use standalone sub-processes because they are visible

37 Managing your environment

38 Not to miss features in SOA CS Resiliency –Circuit Breaker: resiliency when downstream services go down by suspending inbound services –Auto Purge: Old data past the retention point are scheduled to automatically be purged Performance –In-Memory SOA: Optimize performance and scalability by reducing database growth –Integration Workload Statistics: Diagnostic tool for analysing performance similar to DB AWR. Availability –Centered Error Hospital: EM is centered around exceptions instead of business as usual –REST APIs: Manage and monitor environment with large set of APIs

39 TIP #7

40 Tip #7: Suspend upstream services with Circuit Breaker Common problem: downstream service gets unavailable and cause instances to fail Fill up the error hospital Manual recovery can be difficult and time consuming Instances consume unnecessary resources Operational costs to recover are greater Potential instability of the system Tip: use circuit breaker to automatically suspend upstream inbound service

41 41 Tip #7: Suspend upstream services with Circuit Breaker

42 42 Tip #7: Suspend upstream services with Circuit Breaker

43 43 Tip #7: Suspend upstream services with Circuit Breaker

44 44 Tip #7: Suspend upstream services with Circuit Breaker 5 times

45 TIP #8

46 Tip #8: RESTful management APIs SOA Cloud include RESTful APIs for environment management (default enabled) Tip: use APIs for monitoring and deployment from outside public cloud console What Can You Monitor? Servers Clusters Applications Data sources What Can You Deploy? Applications –EAR, WAR, EJB-JAR The format resource URL: https://host:port/management/tenant-monitoring/path

47 47 Tip #8: RESTful management APIs Examples Get (all) server instance(s) data –/management/tenant-monitoring/servers –/management/tenant-monitoring/servers/{servername} Get (all) cluster(s) data –/management/tenant-monitoring/clusters –/management/tenant-monitoring/clusters/{clustername} Get (all) application(s) data –/management/tenant-monitoring/applications –/management/tenant-monitoring/applications/{appname} Get (all) datasource(s) data –/management/tenant-monitoring/datasources –/management/tenant-monitoring/datasources/{dsname}

48 48 Tip #8: RESTful management APIs Get server instance data –/management/tenant-monitoring/servers/oowsoa-j_server_1 { "name": "oowsoa-j_server_1“ "state": "RUNNING" "health": "HEALTH_OK" "clusterName": "oowsoa-j_cluster" "currentMachine": "oowsoa-j_machine_1" "weblogicVersion": "WebLogic Server 12.2.1.0.0 Tue Oct 6 10:05:47 PDT 2015 1721936" "openSocketsCurrentCount": 4 "heapSizeMax": 9544663040 "oSVersion": "3.8.13-68.2.2.3.el6uek.x86_64" "oSName": "Linux" "javaVersion": "1.8.0_91" "heapSizeCurrent": 5989466112 "heapFreeCurrent": 2289891480 }

49 49 Tip #8: RESTful management APIs Get application data –/management/tenant-monitoring/applications/soa-infra { "name": "soa-infra" "type": "ear" "state": "STATE_ACTIVE" "health": "HEALTH_OK" "targetStates": { "target": "oowsoa-j_cluster" "state": "STATE_ACTIVE" } "dataSources": [] "workManagers": [ { "pendingRequests": 0 "completedRequests": 0 "name": "SBDefaultResponseWorkManager" "server": "oowsoa-j_server_1" } {... } ] "minThreadsConstraints": [] "maxThreadsConstraints": [] "requestClasses": [] }

50 50 Tip #8: RESTful management APIs Get datasource data –/management/tenant-monitoring/datasources/mds-soa... { "server": "oowsoa-j_server_1" "state": "Running" "prepStmtCacheAccessCount": 4 "connectionsTotalCount": 652 "highestNumAvailable": 3 "waitSecondsHighCount": 0 "waitingForConnectionHighCount": 0 "VersionJDBCDriver": "oracle.jdbc.OracleDriver" "waitingForConnectionTotal": 0 "currCapacityHighCount": 3 "numUnavailable": 0 "prepStmtCacheHitCount": 3 "failedReserveRequestCount": 0 "waitingForConnectionCurrentCount": 0 "connectionDelayTime": 433 "waitingForConnectionFailureTotal": 0 "numAvailable": 1 "prepStmtCacheAddCount": 1 "activeConnectionsAverageCount": 0 "leakedConnectionCount": 0... }

51 Ask Robert

52


Download ppt "UGF1450 Robert van Mölken - AMIS Services, Top tips for mastering the SOA Cloud Service."

Similar presentations


Ads by Google