Download PDF (1.3 MB) - IBM Redbooks
Download PDF (1.3 MB) - IBM Redbooks
Download PDF (1.3 MB) - IBM Redbooks
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
2.2.2 Process Designer architecture best practices<br />
This section presents best practices for the Process Designer.<br />
Use a fast connection between Process Designer and Process Center<br />
The Process Designer interacts frequently with the Process Center for authoring tasks. For<br />
this reason, minimize network latency to provide optimal response times. Place the Process<br />
Center in the same physical location as the Process Designer users. Also, place the Process<br />
Center in the same physical location as its database. If you cannot relocate the Process<br />
Center, you can remotely connect to the environment where the Process Center is physically<br />
located and use the Process Designer through that mechanism.<br />
Minimize use of Service Tasks<br />
Where possible, call system lane tasks with Service No Task because Service Tasks have<br />
significant performance costs. The potential performance benefit of executing Service Tasks<br />
asynchronously is usually far outweighed by the additional overhead of Service Tasks,<br />
because the Process Server persists the state and context to the database at transition<br />
points. In particular, avoid patterns such as the following pattern:<br />
JavaScript 1 Service Task 1 JavaScript 2 Service Task 2<br />
If possible, avoid Service Tasks altogether, or switch to the following example to minimize the<br />
number of times that state and context are persisted:<br />
JavaScript 1 JavaScript 2 Service Tasks 1 and 2 combined<br />
Use searchable business variables judiciously<br />
Business variables add more overhead to the Process Server, so limit business data<br />
searches to only those fields that need to be searchable in the Process Portal. As a general<br />
guideline, rarely are more than 10 searchable variables required in a BPD. If your<br />
implementation has more searchable variables than this, re-evaluate your design and<br />
re-factor as needed to reduce the number of searchable variables.<br />
Manage variable usage<br />
Variables are persisted to the database when execution contexts are saved, which happens<br />
fairly frequently (for example, when changing from BPD to service execution, and when<br />
running each coach). These persistence operations are expensive. Minimize the persistence<br />
cost in the following ways:<br />
►<br />
►<br />
►<br />
►<br />
►<br />
Minimize the number of variables used.<br />
Minimize the size of each variable.<br />
Set variables, such as DB result sets, to null when they are no longer needed.<br />
Minimize the number and size of variables that are passed to each task.<br />
If industry-standard schema are being used (for example, ACORD or HIPAA), recognize<br />
that these schema contain many fields, and use only the variables that are required from<br />
the schema. If necessary, convert to or from the industry standard schema on the edges of<br />
the application to avoid unnecessary persistence cost in the BPD processing.<br />
Chapter 2. Architecture best practices 9