SOLVED: Triggering a Process without waiting for Process to finish
Dear all,
First of all, thanks to the Rapid-I team for the great work.
We are using Rapidminer and RapidAnalytics in quite some complex apps and we are really happy with the results.
The question: we would like to use an external trigger to activate a process, but without waiting for the result, i.e. use some kind of async communication.
If we expose the process as a web-service, then the process (apparantly) has to finish to say "ok" to the triggering app.
There are in RapidAnalytics definable "file" triggers, but we cannot find any documentation about this. Still, this would not be our ideal solution, as we would like to pass a context to the application using http parameters.
Any suggestions?
As the actual trigger will come from a human request and the process execution could take more than a minute, we are considering replying immediately to the user with some kind of "process accepted", and in the background execute/trigger the process which will then result in an email notification, after execution, with some result message to the triggering person.
Thank you,
Julio
First of all, thanks to the Rapid-I team for the great work.
We are using Rapidminer and RapidAnalytics in quite some complex apps and we are really happy with the results.
The question: we would like to use an external trigger to activate a process, but without waiting for the result, i.e. use some kind of async communication.
If we expose the process as a web-service, then the process (apparantly) has to finish to say "ok" to the triggering app.
There are in RapidAnalytics definable "file" triggers, but we cannot find any documentation about this. Still, this would not be our ideal solution, as we would like to pass a context to the application using http parameters.
Any suggestions?
As the actual trigger will come from a human request and the process execution could take more than a minute, we are considering replying immediately to the user with some kind of "process accepted", and in the background execute/trigger the process which will then result in an email notification, after execution, with some result message to the triggering person.
Thank you,
Julio
0
Answers
-
Hi Julio,
the RapidAnalytics Enterprise Edition comes with an extension that contains a special operator that will allow you to schedule other processes. With that it is very easy, because the scheduling happens immediately and the process will finish. So basically you will have one process A that will done the work and a second process B that simply schedules A to be executed immediately and then does something for returning an appropriate result immediately. You can then offer the Process B as webservice to every other application or person.
Please always consider that WebServices of the RapidAnalytics Community Edition are licensed under AGPL3 and each calling program must be licensed under AGPL3 as well! In case this is not an option, the Enterprise Edition allows you to deploy the webservices to any program. If you need more information about this, please contact us directly by mail or webform.
With kind regards,
Sebastian0 -
Thank you Sebastian,
Indeed, the programs that would invoke this are AGPL3.
I understand then that this is not a standard feature in the CE edition. We will analyse then if we can build such a contribution.
Thank you for your answer!
Julio0 -
Very convenient because quite fast.0
-
If anyone is interested, we created an operator for Rapidminer 5.3 to do exactly this. We heard Rapidminer 6 has this functionality incorporated, so if you are still with Rapidminer 5.3, just send me a message and we will share.
We will publish it somewhere in the near future.
Julio0