Hi all, long time lurker here, first time poster. I’m trying to fingure out if a concept I have in mind is even possible to accomlpish and I hoped someone here might be able to tell me it really is impossible before I waste too much more time trying to find out how to do it. (Yes I know proving a negative is pretty hard )
The basic premise is this: I have a large batch of work to do, call it a batch of bicycles to put together. I have a flow service that takes a single bike as input and puts it together. What I want to have is some method of looping through my massive order of bicycles and kick off the bicycle creation service many times without waiting on it’s completion. I.e. I want my order for 100 bikes to be processed with all 100 bikes being assembled at the same time.
I found this quote from mcarlson in a thread:
Your question seems to indicate that you want to run two Flow services in parallel each on its own processing thread. You have to write a java service or two to do this. The Service.doThreadedInvoke method allows you to specify a service name to invoke and the IData containing the inputs of that service. See the WmSamples package for one example. You can also search WM Users for doThreadedInvoke to turn up more discussion on this point.
Integration Server is multithreaded. Using multiple threads to perform your integration work is a process of analyzing the work to determine what can be executed in parallel, invoking multiple additional threads to do the work and then collecting and reassembling the results (including any exceptions).
I’m hoping someone can confirm for me that I can write this java service so that it invokes a flow service, but makes a trip back out through my load balancer so that the other servers in my WM farm get a share of the work. Has anyone had any luck doing anything like that?
Thanks in advance,