This is the WSO2 Business Process Server documentation version 3.0.0.View documentation for the latest release.

Unknown macro: {next_previous_link3}
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

Business process deployment capability is provided by the following feature in the WSO2 feature repository:

Name : WSO2 Carbon - BPEL Application Deployer Feature
Identifier: org.wso2.carbon.application.deployer.bpel.feature.group

If process management capability is not included in your product by default, you can add it by installing the above feature using the instructions given in section, Feature Management. Follow the instructions below to deploy a business process.

1. Log on to the product's management console and select "Processes -> Add" under the "Main" menu.


2. The "New BPEL Package" window opens. Provide the file and click "Upload."

3. If the deployment is successful, a dialog box  appears as follows.


4. The "Deployed Processes" page opens with the newly-added process listed. For example,


  • Package Name:
  • Process ID:
  • Version:
  • Status:
  • Deployed Date:
  • Manage: A newly-created process has status as "Active", which can be retired by clicking on the "Retire" link. Once a process is retired, a new instance of it cannot be created.

5. Once the process is deployed in the BPS, it will be exposed as a BPEL service. Click "Services -> List" menu under the "Main" menu.

6. The "Deployed Services" window opens with the newly-deployed service listed. For example,

From here, the BPEL service can be managed just like any other Web service. For instructions, refer to section Service Management.

Note

Instead of using the management console, you can deploy a BPEL process manually by copying the zipped file to the $CARBON_HOME/repository/deployment/server/bpel directory. For instructions on preparing the process zip file, refer to section Preparing for Process Deployment.

Deployment Best Practices

The default distribution of WSO2 BPS comes with an embedded H2 database as the BPEL engine's persistence storage along with other settings suitable for development environment. However, it is recommended that some of these configurations be changed when moving to production. Configuration setting may change depending on the number of requests BPS is going to handle per second, your auditing and monitoring requirements, performance requirements and nature of your processes.

Given below are the key points to note:

1. Configure an external database server such as MySQL as the persistence storage instead of embedded H2 database. Althogh slight performance gains can be experienced when using simple BPEL processes with H2 database, it cannot handle multiple concurrent requests and complex processes with the same efficiency.

2. Configure 'multi-threaded Http connection manager' connection pool settings to suit your BPEL processes.Typically, the HTTP connection manager should be configured to be in sync with the concurrent HTTP connections in the BPS server.

There are two configurations in Http connection manager. One is 'max total connections' and other is 'max total connection per host'. These settings depend on the number of concurrent requests BPS needs to handle, and the number of external service calls per process instance. For example,

<tns:WSO2BPSxmlns:tns="http://wso2.org/bps/config">
    ...
    <tns:MultithreadedHttpConnectionManagerConfig><tns:maxConnectionsPerHostvalue="20"/><tns:maxTotalConnectionsvalue="200"/></tns:MultithreadedHttpConnectionManagerConfig>
    ...
</tns:WSO2BPS>

3. Configure BPEL process persistence. If a process is implemented in the request-response interaction model, use in-memory processes instead of persistence processes. This decision mainly depends on the specific business use-case.

4. Configure even-filtering at process and scope level. By reducing the number of events generated, a lot of database resources can be saved.

5. Use process-to-process communication. This reduces the overhead introduced by additional network calls, when calling one BPEL process from another deployed in the same BPS instance.

6. Configure even-filtering at process and scope level. A lot of database resources can be saved by reducing the number of events generated.

 

  • No labels