cast iron cloud integration best practices

16
© 2016 IBM Corporation WebSphere Cast Iron Best Practices Sarath Ambadas [email protected]

Upload: sarath-ambadas

Post on 16-Apr-2017

748 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation

WebSphere Cast Iron Best Practices

Sarath Ambadas [email protected]

Page 2: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation2

Agenda

Development Best Practices

Appliance Best Practices

Performance tuning

Upgrade and migration

Page 3: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation

Development Best Practices : Naming Conventions

Follow standard camel case naming convention. For example : processSalesOrderThe naming must match the functionality of the artifact.Easy to understand what it doesProjects are easy to maintain

Maintain version number for the project. Default is 1.0

Don’t use underscore or double underscore for variable names

Naming convention forProject NamesOrchestration NamesEndpoint namesActivity namesVariable names

3

Page 4: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation

Development Best Practices : Error Handling

Orchestrations must implement error handlingTry – Catch blocksTry with multiple catch blocksCatch – All block

Implement a generic error handling orchestration and call that orchestration using web service from remaining orchestrationStandard behavior for all orchestrationsReduced work of development and simplify the orchestrationsImplement logging and notifications in the error handling logic

Capture complete information of the fault (name, message, activity id/name) in the log message

If required, implement alternate path logic in the error flow

4

Page 5: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation

Development Best Practices : Orchestration development

Use configuration properties : No need to edit project when values changeEndpoint propertiesConfigure panel propertiesMap input field value properties

Split large orchestration into meaningful sub orchestrationsSimplify the orchestrationEase of maintenance when editions happen

Saving the project often during development so that data wont be lost

All the projects need to be taken backup in a version control system

Install Cast Iron Studio in a local file system than network drive

Use same version of Cast Iron Studio and appliance.

5

Page 6: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation

Development Best Practices : Orchestration development contd..

Test the orchestration in studio before deploying in the appliance.

Use “job keys” feature to customize the jobId based on the customer data for better tracking of jobs

Use batch processing capability of the activities‘ for bulk processing

Filter data while retrieving from the data source only or as soon as it is retrieved in a Cast Iron activity

Enable/Disable persistence feature in studio based on the use case requirements.

Sequential processing of jobs

Validate data before it is processed

6

Page 7: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation

Development Best Practices : Orchestration development Contd..

Salesforce.com has 3 set of connectors in Cast Iron

Connect to a database using the built-in JDBC driver in Cast Iron or by using the generic JDBC driver provided by the database.

Write custom java script functions where necessary. For example : specific date parsing.

Other important best practicesConfiguring retry functionality inside the activity before throwing the errorConfiguring connection pools for each of the endpointsRemove unused variables from project after development is complete.Use Pick activity to configure more than one inbound trigger.Some of the configuration properties (and connection properties) can be passed

dynamically as part of the request. This feature helps avoiding editing of project often when the values are changed

Grouping of the related activities using the group activity.

7

Page 8: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation

Development Best Practices : Orchestration development contd..

When running Receive request orchestration in studio and want to invoke itUse the HTTP poster utility in Studio, add the path to it and make the call. The host

name is populated alreadyWhen calling from external client, check for the IP address in the studio logs (error.log)

and use that IP to make the call

Studio short cuts CTRL+SHIFT+ALT+8

To see the XSLT code used for the mapping. To see click on the mapping section and select the short cut. Then select test tab to see the xslt code

CTRL+ALT+k

To see the schema structure used for the mapping. To see click on the input schema variable and select the short cut. Then right click on the variable to see schema options

{property:/ConfigurationPropertyName}

To read configuration property in the flow. For example : if conditions etc

8

Page 9: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation

Appliance Best Practices :Appliance

Load the production appliance upto 60-70% of memory.

Use lowest level of logging when running in production.

Run the jobs in parallel using the Max simultaneous jobs option. Fine this value based on the loads on the orchestration and appliance.

Monitor System sourcesDisk usageMemoryRunning jobsGarbage collection

If many appliances are present, we can monitor using the manage appliance feature in Cast Iron

9

Page 10: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation

Appliance Best Practices : Appliance contd…

When deploying the project files (.par) directly, try from internet explorer or Chrome. Same applies for uploading of any other files in Web Management Console

Uses staging database in appliance to store data temporarily, process it and then move to target endpoint

Manage number of job logs retainedPurge and/or archive the jobs based on set of conditions

Use the export repository option to back the appliance settings and restore it on a new appliance. Backup this repository often.

10

Page 11: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation

Appliance Best Practices : Groups, Users and Roles

Standard groups : Admin, publish, User, View

Custom groups can be created with similar group permission as the standard groups

All user in a group will have capabilities of the group

By default all projects deployed by a user will be available to the group members.

Projects can also be given permission to specific user outside of the group.

11

Page 12: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation

Performance Best Practices : Tuning

Points to be considered for tuningWhat's the size of each incoming object? Is it less than 1 KB or in KB’s or MBs?What's is the incoming load on the orchestration we are tuning. Is the polling interval or

scheduler set to right values?How many other orchestrations are running in the appliance. What is the processing load on these other orchestrationsIs connection pooling properly configured in the endpoint panel for the activities used in the

orchestrationIs the configuration on the endpoint side done properly to handle heavy loads.Did I tune the orchestrations “Max simultaneous Jobs” value to get best results.Is the appliance being fully utilized.Is batch processing configured where necessaryIs the orchestration flow reviewed for performance improvementsAvoid unnecessary log activity's in the orchestration, Also appliance logging set to minimal.Where are my endpoints running? Are they in cloud or on premise.Which Cast Iron offering (Live or appliance) am I looking for based on my throughput

requirements?

12

Page 13: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation

Performance Best Practices : Tuning contd..

Sometimes the schemas or wsdl loaded into studio are too huge. The max memory allocated need to be increased

Support for both 32 bit and 64 bit memory studio versions

XSD schemas can have recursive reference and will cause OOM when loaded into studio. This can be tuned using the Edit > Preferences > XML Schema Resolver options by reducing the number of child level values.

Disk space on the appliance: Configure job logs purge/archive

13

Page 14: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation

Appliance Best Practices : Upgrade and migration.

Take backup of the repository in the current version of the appliance.

Always try to move to the latest fixpack version available on that major release.

All existing projects developed in older versions of studio will work fine in newer versions of the appliance. They can deployed directly

For editing older projects, open in the current version of studio, make changes and save the project.

Upgrade steps Linkhttp://www-01.ibm.com/support/knowledgecenter/SSGR73_7.0.0/

com.ibm.wci.gettingstarted.doc/getstart_migration61to70.html?lang=en

14

Page 15: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation

External Tools

Oxygen editor Soap UI Filezilla ftp server and client Wireshark network monitoring tool

15

Page 16: Cast Iron Cloud Integration Best Practices

© 2016 IBM Corporation

Questions and Answers

16