SlideShare a Scribd company logo
1 of 16
© 2016 IBM Corporation
WebSphere Cast Iron
Best Practices
Sarath Ambadas
sambadas@in.ibm.com
‘
© 2016 IBM Corporation2
Agenda
 Development Best Practices
 Appliance Best Practices
 Performance tuning
 Upgrade and migration
© 2016 IBM Corporation
Development Best Practices : Naming Conventions
 Follow standard camel case naming convention. For example :
processSalesOrder
The naming must match the functionality of the artifact.
Easy to understand what it does
Projects 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 for
Project Names
Orchestration Names
Endpoint names
Activity names
Variable names
3
© 2016 IBM Corporation
Development Best Practices : Error Handling
 Orchestrations must implement error handling
Try – Catch blocks
Try with multiple catch blocks
Catch – All block
 Implement a generic error handling orchestration and call that
orchestration using web service from remaining orchestration
Standard behavior for all orchestrations
Reduced work of development and simplify the orchestrations
Implement 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
© 2016 IBM Corporation
Development Best Practices : Orchestration development
 Use configuration properties : No need to edit project when values
change
Endpoint properties
Configure panel properties
Map input field value properties
 Split large orchestration into meaningful sub orchestrations
Simplify the orchestration
Ease 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
© 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
© 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 practices
Configuring retry functionality inside the activity before throwing the error
Configuring connection pools for each of the endpoints
Remove 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
© 2016 IBM Corporation
Development Best Practices : Orchestration development contd..
 When running Receive request orchestration in studio and want to
invoke it
Use the HTTP poster utility in Studio, add the path to it and make the call. The host
name is populated already
When 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
© 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 sources
Disk usage
Memory
Running jobs
Garbage collection
 If many appliances are present, we can monitor using the manage
appliance feature in Cast Iron
9
© 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 retained
Purge 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
© 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
© 2016 IBM Corporation
Performance Best Practices : Tuning
 Points to be considered for tuning
What'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 orchestrations
Is connection pooling properly configured in the endpoint panel for the activities used in
the orchestration
Is 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 necessary
Is the orchestration flow reviewed for performance improvements
Avoid 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
© 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
© 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 Link
http://www-
01.ibm.com/support/knowledgecenter/SSGR73_7.0.0/com.ibm.wci.gettingstarted.doc/ge
tstart_migration61to70.html?lang=en
14
© 2016 IBM Corporation
External Tools
 Oxygen editor
 Soap UI
 Filezilla ftp server and client
 Wireshark network monitoring tool
15
© 2016 IBM Corporation
Questions and Answers
16

More Related Content

What's hot

Using Oracle Database with Amazon Web Services
Using Oracle Database with Amazon Web ServicesUsing Oracle Database with Amazon Web Services
Using Oracle Database with Amazon Web Services
guest484c12
 
Rit 8.5.0 training release notes
Rit 8.5.0 training release notesRit 8.5.0 training release notes
Rit 8.5.0 training release notes
Darrel Rader
 
Preparing for EBS R12.2-upgrade-full
Preparing for EBS R12.2-upgrade-fullPreparing for EBS R12.2-upgrade-full
Preparing for EBS R12.2-upgrade-full
Berry Clemens
 

What's hot (20)

JavaOne BOF 5957 Lightning Fast Access to Big Data
JavaOne BOF 5957 Lightning Fast Access to Big DataJavaOne BOF 5957 Lightning Fast Access to Big Data
JavaOne BOF 5957 Lightning Fast Access to Big Data
 
Windows Debugging Tools - JavaOne 2013
Windows Debugging Tools - JavaOne 2013Windows Debugging Tools - JavaOne 2013
Windows Debugging Tools - JavaOne 2013
 
Reliability and performance with ibm db2 analytics accelerator
Reliability and performance with ibm db2 analytics acceleratorReliability and performance with ibm db2 analytics accelerator
Reliability and performance with ibm db2 analytics accelerator
 
Trigger maxl from fdmee
Trigger maxl from fdmeeTrigger maxl from fdmee
Trigger maxl from fdmee
 
Improve Aerospike Database performance and predictability by leveraging Intel...
Improve Aerospike Database performance and predictability by leveraging Intel...Improve Aerospike Database performance and predictability by leveraging Intel...
Improve Aerospike Database performance and predictability by leveraging Intel...
 
SAP HANA on POWER9 systems
SAP HANA on POWER9 systemsSAP HANA on POWER9 systems
SAP HANA on POWER9 systems
 
Superior Cloud Economics with IBM Power Systems
Superior Cloud Economics with IBM Power SystemsSuperior Cloud Economics with IBM Power Systems
Superior Cloud Economics with IBM Power Systems
 
Whats new in Enterprise 5.0 Product Suite
Whats new in Enterprise 5.0 Product SuiteWhats new in Enterprise 5.0 Product Suite
Whats new in Enterprise 5.0 Product Suite
 
Presentation oracle optimized solutions
Presentation   oracle optimized solutionsPresentation   oracle optimized solutions
Presentation oracle optimized solutions
 
Using Oracle Database with Amazon Web Services
Using Oracle Database with Amazon Web ServicesUsing Oracle Database with Amazon Web Services
Using Oracle Database with Amazon Web Services
 
Watch your transactional database performance climb with Intel Optane DC pers...
Watch your transactional database performance climb with Intel Optane DC pers...Watch your transactional database performance climb with Intel Optane DC pers...
Watch your transactional database performance climb with Intel Optane DC pers...
 
FDM to FDMEE migration utility
FDM to FDMEE migration utilityFDM to FDMEE migration utility
FDM to FDMEE migration utility
 
Tech Talk Oct 2008 Upgrade Migrate
Tech Talk Oct 2008 Upgrade MigrateTech Talk Oct 2008 Upgrade Migrate
Tech Talk Oct 2008 Upgrade Migrate
 
Optimized Systems: Matching technologies for business success.
Optimized Systems: Matching technologies for business success.Optimized Systems: Matching technologies for business success.
Optimized Systems: Matching technologies for business success.
 
Running Oracle EBS in the cloud (UKOUG APPS16 edition)
Running Oracle EBS in the cloud (UKOUG APPS16 edition)Running Oracle EBS in the cloud (UKOUG APPS16 edition)
Running Oracle EBS in the cloud (UKOUG APPS16 edition)
 
Supercharge Your Integration Services
Supercharge Your Integration Services�Supercharge Your Integration Services�
Supercharge Your Integration Services
 
Understanding saa s
Understanding saa sUnderstanding saa s
Understanding saa s
 
R12.2.5 new features
R12.2.5 new featuresR12.2.5 new features
R12.2.5 new features
 
Rit 8.5.0 training release notes
Rit 8.5.0 training release notesRit 8.5.0 training release notes
Rit 8.5.0 training release notes
 
Preparing for EBS R12.2-upgrade-full
Preparing for EBS R12.2-upgrade-fullPreparing for EBS R12.2-upgrade-full
Preparing for EBS R12.2-upgrade-full
 

Viewers also liked

IBM Mobile Foundation POT - Overview of cast iron hypervisor edition presenta...
IBM Mobile Foundation POT - Overview of cast iron hypervisor edition presenta...IBM Mobile Foundation POT - Overview of cast iron hypervisor edition presenta...
IBM Mobile Foundation POT - Overview of cast iron hypervisor edition presenta...
AIP Foundation
 

Viewers also liked (17)

OData support in Cast Iron 7.5.1
OData support in Cast Iron 7.5.1OData support in Cast Iron 7.5.1
OData support in Cast Iron 7.5.1
 
IBM App Connect - Let Your Apps Work For You
IBM App Connect - Let Your Apps Work For YouIBM App Connect - Let Your Apps Work For You
IBM App Connect - Let Your Apps Work For You
 
API Economy Journey Map
API Economy Journey MapAPI Economy Journey Map
API Economy Journey Map
 
What is cast iron, its process, properties and applications
What is cast iron, its process, properties and applicationsWhat is cast iron, its process, properties and applications
What is cast iron, its process, properties and applications
 
MuleSoft London Community September 2016
MuleSoft London Community September 2016MuleSoft London Community September 2016
MuleSoft London Community September 2016
 
7 Reasons to try MQ Appliance
7 Reasons to try MQ Appliance7 Reasons to try MQ Appliance
7 Reasons to try MQ Appliance
 
IBM Mobile Foundation POT - Overview of cast iron hypervisor edition presenta...
IBM Mobile Foundation POT - Overview of cast iron hypervisor edition presenta...IBM Mobile Foundation POT - Overview of cast iron hypervisor edition presenta...
IBM Mobile Foundation POT - Overview of cast iron hypervisor edition presenta...
 
Finding the value in the API economy
Finding the value in the API economyFinding the value in the API economy
Finding the value in the API economy
 
Design - Integration Scenarios for Hybrid Cloud
Design - Integration Scenarios for Hybrid CloudDesign - Integration Scenarios for Hybrid Cloud
Design - Integration Scenarios for Hybrid Cloud
 
Integrating Salesforce.com and Oracle ERP Using IBM WebSphere Cast Iron
Integrating Salesforce.com and Oracle ERP Using IBM WebSphere Cast IronIntegrating Salesforce.com and Oracle ERP Using IBM WebSphere Cast Iron
Integrating Salesforce.com and Oracle ERP Using IBM WebSphere Cast Iron
 
IBM Hybrid Integration Platform
IBM Hybrid Integration PlatformIBM Hybrid Integration Platform
IBM Hybrid Integration Platform
 
What is the API economy?
What is the API economy?What is the API economy?
What is the API economy?
 
Cast iron
Cast ironCast iron
Cast iron
 
DataPower Restful API Security
DataPower Restful API SecurityDataPower Restful API Security
DataPower Restful API Security
 
introduction to Cast Iron
introduction to Cast Ironintroduction to Cast Iron
introduction to Cast Iron
 
IBM DataPower Gateway appliances feature & virtual edition comparison
IBM DataPower Gateway appliances feature & virtual edition comparisonIBM DataPower Gateway appliances feature & virtual edition comparison
IBM DataPower Gateway appliances feature & virtual edition comparison
 
IBM DataPower Gateways - What's new in 2016 v7.5.2
IBM DataPower Gateways - What's new in 2016 v7.5.2IBM DataPower Gateways - What's new in 2016 v7.5.2
IBM DataPower Gateways - What's new in 2016 v7.5.2
 

Similar to Cast Iron Cloud Integration Best Practices

Asp.net performance
Asp.net performanceAsp.net performance
Asp.net performance
Abhishek Sur
 
Rails Application Optimization Techniques & Tools
Rails Application Optimization Techniques & ToolsRails Application Optimization Techniques & Tools
Rails Application Optimization Techniques & Tools
guest05c09d
 

Similar to Cast Iron Cloud Integration Best Practices (20)

Flink Forward SF 2017: Malo Deniélou - No shard left behind: Dynamic work re...
Flink Forward SF 2017: Malo Deniélou -  No shard left behind: Dynamic work re...Flink Forward SF 2017: Malo Deniélou -  No shard left behind: Dynamic work re...
Flink Forward SF 2017: Malo Deniélou - No shard left behind: Dynamic work re...
 
Flex 4.5 jeyasekar
Flex 4.5  jeyasekarFlex 4.5  jeyasekar
Flex 4.5 jeyasekar
 
Asp.net performance
Asp.net performanceAsp.net performance
Asp.net performance
 
How Netflix Tunes Amazon EC2 Instances for Performance - CMP325 - re:Invent 2017
How Netflix Tunes Amazon EC2 Instances for Performance - CMP325 - re:Invent 2017How Netflix Tunes Amazon EC2 Instances for Performance - CMP325 - re:Invent 2017
How Netflix Tunes Amazon EC2 Instances for Performance - CMP325 - re:Invent 2017
 
Practical solutions for connections administrators
Practical solutions for connections administratorsPractical solutions for connections administrators
Practical solutions for connections administrators
 
How Netflix Tunes EC2 Instances for Performance
How Netflix Tunes EC2 Instances for PerformanceHow Netflix Tunes EC2 Instances for Performance
How Netflix Tunes EC2 Instances for Performance
 
Accelerating Application Development with Amazon Aurora (DAT312-R2) - AWS re:...
Accelerating Application Development with Amazon Aurora (DAT312-R2) - AWS re:...Accelerating Application Development with Amazon Aurora (DAT312-R2) - AWS re:...
Accelerating Application Development with Amazon Aurora (DAT312-R2) - AWS re:...
 
Web Speed And Scalability
Web Speed And ScalabilityWeb Speed And Scalability
Web Speed And Scalability
 
S903 palla
S903 pallaS903 palla
S903 palla
 
Apache Big Data Europe 2016
Apache Big Data Europe 2016Apache Big Data Europe 2016
Apache Big Data Europe 2016
 
Rails Application Optimization Techniques & Tools
Rails Application Optimization Techniques & ToolsRails Application Optimization Techniques & Tools
Rails Application Optimization Techniques & Tools
 
Java ee7 with apache spark for the world's largest credit card core systems, ...
Java ee7 with apache spark for the world's largest credit card core systems, ...Java ee7 with apache spark for the world's largest credit card core systems, ...
Java ee7 with apache spark for the world's largest credit card core systems, ...
 
BestInFlowCompetitionTutorials03May2023
BestInFlowCompetitionTutorials03May2023BestInFlowCompetitionTutorials03May2023
BestInFlowCompetitionTutorials03May2023
 
OOW16 - Getting Optimal Performance from Oracle E-Business Suite [CON6711]
OOW16 - Getting Optimal Performance from Oracle E-Business Suite [CON6711]OOW16 - Getting Optimal Performance from Oracle E-Business Suite [CON6711]
OOW16 - Getting Optimal Performance from Oracle E-Business Suite [CON6711]
 
Best practice adoption (and lack there of)
Best practice adoption (and lack there of)Best practice adoption (and lack there of)
Best practice adoption (and lack there of)
 
Amazon Kinesis
Amazon KinesisAmazon Kinesis
Amazon Kinesis
 
Webcenter application performance tuning guide
Webcenter application performance tuning guideWebcenter application performance tuning guide
Webcenter application performance tuning guide
 
Configuring sql server - SQL Saturday, Athens Oct 2014
Configuring sql server - SQL Saturday, Athens Oct 2014Configuring sql server - SQL Saturday, Athens Oct 2014
Configuring sql server - SQL Saturday, Athens Oct 2014
 
11g R2
11g R211g R2
11g R2
 
Breaking the Monolith road to containers.pdf
Breaking the Monolith road to containers.pdfBreaking the Monolith road to containers.pdf
Breaking the Monolith road to containers.pdf
 

Recently uploaded

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 

Cast Iron Cloud Integration Best Practices

  • 1. © 2016 IBM Corporation WebSphere Cast Iron Best Practices Sarath Ambadas sambadas@in.ibm.com ‘
  • 2. © 2016 IBM Corporation2 Agenda  Development Best Practices  Appliance Best Practices  Performance tuning  Upgrade and migration
  • 3. © 2016 IBM Corporation Development Best Practices : Naming Conventions  Follow standard camel case naming convention. For example : processSalesOrder The naming must match the functionality of the artifact. Easy to understand what it does Projects 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 for Project Names Orchestration Names Endpoint names Activity names Variable names 3
  • 4. © 2016 IBM Corporation Development Best Practices : Error Handling  Orchestrations must implement error handling Try – Catch blocks Try with multiple catch blocks Catch – All block  Implement a generic error handling orchestration and call that orchestration using web service from remaining orchestration Standard behavior for all orchestrations Reduced work of development and simplify the orchestrations Implement 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
  • 5. © 2016 IBM Corporation Development Best Practices : Orchestration development  Use configuration properties : No need to edit project when values change Endpoint properties Configure panel properties Map input field value properties  Split large orchestration into meaningful sub orchestrations Simplify the orchestration Ease 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
  • 6. © 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
  • 7. © 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 practices Configuring retry functionality inside the activity before throwing the error Configuring connection pools for each of the endpoints Remove 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
  • 8. © 2016 IBM Corporation Development Best Practices : Orchestration development contd..  When running Receive request orchestration in studio and want to invoke it Use the HTTP poster utility in Studio, add the path to it and make the call. The host name is populated already When 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
  • 9. © 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 sources Disk usage Memory Running jobs Garbage collection  If many appliances are present, we can monitor using the manage appliance feature in Cast Iron 9
  • 10. © 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 retained Purge 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
  • 11. © 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
  • 12. © 2016 IBM Corporation Performance Best Practices : Tuning  Points to be considered for tuning What'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 orchestrations Is connection pooling properly configured in the endpoint panel for the activities used in the orchestration Is 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 necessary Is the orchestration flow reviewed for performance improvements Avoid 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
  • 13. © 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
  • 14. © 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 Link http://www- 01.ibm.com/support/knowledgecenter/SSGR73_7.0.0/com.ibm.wci.gettingstarted.doc/ge tstart_migration61to70.html?lang=en 14
  • 15. © 2016 IBM Corporation External Tools  Oxygen editor  Soap UI  Filezilla ftp server and client  Wireshark network monitoring tool 15
  • 16. © 2016 IBM Corporation Questions and Answers 16

Editor's Notes

  1. Goals of <Topic>