简体   繁体   中英

execute a DAG of tasks from a querying service in a microservice architecture

I am looking for solutions out there to execute a DAG of tasks/processors (each processor could be a stand alone task or calls another microservice underneath) from a service (written in Java). Conceptually similar to Airflow (it can be lot simpler as well), but for services instead of data processing. I would like the ability to define the DAG/chain in an external config file. I want to pick different DAG depending on the use case (based on some request parameters).

Notes :

  1. In my general investigation so far it looks like Apache Camel or Spring Integration are good candidates to consider. Are these good solutions to use for my use case or camel is only for offline use case? Are there some alternatives out there that i am missing to consider.
  2. This is a querying service, where the user is waiting for a response from the time request is received. I am not sure if a message driven architecture would be applicable here.
  3. I am using Spring Boot for my service.

take a look at this list of workflow engines I would focus on Netflix's Conductor as it allows generic dispatch of HTTP endpoints (among others) and has lots of extensions and Java integrations Camel doesn't have anything with durably and reliably executing your DAG, but will allow you (also with Conductor) to apply transformations on the input/output data of the DAG's nodes

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM