Develop solution in Java to communicate to set of devices through REST APIs, from different vendors

Belolow is our requirement:

Developing a solution in Java which communicates with a set of devices through REST APIs which belongs to different vendors. So for each vendor, there are a set of processes that needs perform inside the solution. However, these processes will be changed according to each vendor. Following are the high-level processes that need to be performed.

. Retrieve an XML file from a folder
. Process the XML file
. Perform some image processing
. Schedule a job and execute it on the scheduled time
. Storing data on a MySQL DB and perform some REST calls to outside APIs

So for one vendor might have all of the above processes. But for another, might not have some processes (Eg: Image processing). Following things should be able to obtain from the selected solution.

. slotion shuld be able to create custom workflows for new vendors
. Need to identify any failures that have been occurred within the workflow and perform retry mechanisms.
. Should be able to execute some functions parallelly (Eg: Image processing)
. Scalable
. Opensource

we are thinking about workflow managers like Nifi/Airflow/Falcon. ion.

NOTE: There is NO requirement to use Hadoop or any other cluster and data flow frequency is not that high

Can we use Nifi. What would be the best solution for our use case?

Tagged:
Sign In or Register to comment.