It only takes 1 hour and a few simple steps to install and start using GenericParallel. Do it now! Please note: this guide project is available for your reference as an OSB project within the distribution ZIP under name QuickStart.jar. STEP 1. Download GenericParallel Extracted GenericParallel distribution Download the distribution ZIP and extract it into a temporal working directory. STEP 2. Import Into OEPE (Eclipse) OSB project before importing GenericParallel
This is the shortest guide for making an OSB parallel call with GenericParallel. I assume the GenericParallel service is already deployed on your domain. (If not, here’s the guide.) All you need to do then is to call the GenericParallel entry proxy located at GenericParallel/GenericParallel path. The entry proxy takes a list of requests to execute. For example, collecting the monthly bill for electricity and heating may look like this:
How to pass OSB user headers to and from the backend service in a parallel call. A split-join service drops all user headers. End of story. This is because split-join is not really an OSB service, but an implementation of a BPEL engine. It has no idea of OSB-specific concepts such as user headers. As usual, GenericParallel has a built-in workaround for this limitation. Passing User Headers to the Backend To pass user headers with requests via GenericParallel, the caller just needs to include them as attributes of the element.
How to pass SOAP headers to and from backend service in parallel calls. In an ideal world, a split-join service would pass any SOAP headers to the backend service and back without any effort. In the real world, the headers inevitably get lost along the way. There is apparently a predefined set of conditions that both the WSDL and the request must comply with for the headers to travel through safely; however, most services I see in the real world simply do not comply.
Putting a cap on the maximum number of parallel request in GenericParallel. Parallel calls are an extremely powerful tool and, like any powerful tool, can be dangerous. Hitting a backend service with 5 parallel requests will reduce the response time. Hitting the same service with 50 parallel requests may bring that service down, causing a prolonged downtime. Overload Protection To prevent accidental overloading, GenericParallel uses the concept of maximum concurrency.
This is the shortest guide for making an OSB parallel call to REST services with GenericParallel. I assume the GenericParallel service is already deployed on your domain. If not, here’s the deployment guide. Suppose we need to call a RESTful service named RegisterResourceId. We’ll need to register a number of ids at once, hence the parallel call. To register one id, we need to call this service with the following parameters: