conductor 系统任务

动态任务:

参数:

dynamicTaskNameParam:来自任务输入的参数的名称,其值用于调度任务。 例如 如果参数的值为ABC,则调度的下一个任务类型为“ABC”。

Example

{
  "name": "user_task",
  "taskReferenceName": "t1",
  "inputParameters": {
    "files": "${workflow.input.files}",
    "taskToExecute": "${workflow.input.user_supplied_task}"
  },
  "type": "DYNAMIC",
  "dynamicTaskNameParam": "taskToExecute"
}
如果以user_task_2的输入参数user_supplied_task的值启动工作流程,Conductor将在调度此动态任务时调度user_task_2。

决策任务:决策任务与编程语言中的case ... switch语句相似。 该任务需要3个参数:caseValueParam: 其值将用作开关的任务输入中的参数名称。decisionCases: 映射其中key是caseValueParam的可能值,值是要执行的任务列表。defaultCase:在决策案例中找不到匹配值时执行的任务列表(默认条件)

Example

{
  "name": "decide_task",
  "taskReferenceName": "decide1",
  "inputParameters": {
    "case_value_param": "${workflow.input.movieType}"
  },
  "type": "DECISION",
  "caseValueParam": "case_value_param",
  "decisionCases": {
    "Show": [
      {
        "name": "setup_episodes",
        "taskReferenceName": "se1",
        "inputParameters": {
          "movieId": "${workflow.input.movieId}"
        },
        "type": "SIMPLE"
      },
      {
        "name": "generate_episode_artwork",
        "taskReferenceName": "ga",
        "inputParameters": {
          "movieId": "${workflow.input.movieId}"
        },
        "type": "SIMPLE"
      }
    ],
    "Movie": [
      {
        "name": "setup_movie",
        "taskReferenceName": "sm",
        "inputParameters": {
          "movieId": "${workflow.input.movieId}"
        },
        "type": "SIMPLE"
      },
      {
        "name": "generate_movie_artwork",
        "taskReferenceName": "gma",
        "inputParameters": {
          "movieId": "${workflow.input.movieId}"
        },
        "type": "SIMPLE"
      }
    ]
  }
}

Fork任务:fork用于调度并行的任务。参数:forkTasks:任务列表的列表。 每个子列表被安排并行执行。 然而,子列表中的任务是以串行方式安排的。

Example

{
  "forkTasks": [
    [
      {
        "name": "task11",
        "taskReferenceName": "t11"
      },
      {
        "name": "task12",
        "taskReferenceName": "t12"
      }
    ],
    [
      {
        "name": "task21",
        "taskReferenceName": "t21"
      },
      {
        "name": "task22",
        "taskReferenceName": "t22"
      }
    ]
  ]
}
当执行时,task11和task21被调度为同时执行。

动态fork任务:动态fork与FORK_JOIN任务相同。 除了在运行时使用任务的输入提供要分配的任务的列表。 当fork的任务数量不固定并且根据输入而变化时很有用。dynamicForkTasksParam:包含并行执行的工作流任务配置列表的参数名称dynamicForkTasksInputParamName: 参数的名字,此参数的值是一个映射,映射的key是fork任务的别名,value是fork任务的input



时间: 2024-12-06 19:55:34

conductor 系统任务的相关文章

Extending Conductor

后端 导体提供了可插拔的后端.目前的实现使用Dynomite. 每个后端需要实现4个接口: //Store for workflow and task definitions com.netflix.conductor.dao.MetadataDAO //Store for workflow executions com.netflix.conductor.dao.ExecutionDAO //Index for workflow executions com.netflix.conductor

conductor FAQ

在一段时间后(如1小时,1天等),您如何安排将任务放入队列中? 轮询任务后,更新任务的状态IN_PROGRESS并将其callbackAfterSeconds设置为所需的时间.任务将保留在队列中,直到指定的第二个工作者轮询为止,它将再次接收到它. 如果为该任务设置了一个callbackAfterSeconds超时值,超过超时值,将导致任务为TIMED_OUT. 工作流在运行状态多长时间?我可以拥有持续运行数天或数月的工作流程吗? 是.只要将任务超时设置为处理长时间运行的工作流程,它将保持运行状态

Conductor Task Workers

由远程worker执行的conductor任务通过HTTP端点进行通信以轮询任务并更新执行状态. conductor提供了轮询任务的框架,管理执行线程并将执行状态更新回服务器.该框架提供了Java和Python中的库.可以通过使用用于任务管理的HTTP端点来添加其他语言支持. Java 实现Worker接口来实现任务.https://github.com/Netflix/conductor/blob/dev/client/src/main/java/com/netflix/conductor/c

华为机试题--操作系统任务调度问题

[问题] 操作系统任务调度问题.操作系统任务分为系统任务和用户任务两种.其中,系统任务的优先级 < 50,用户任务的优先级 >= 50且 <= 255.优先级大于255的为非法任务,应予以剔除.现有一任务队列task[],长度为n,task中的元素值表示任务的优先级,数值越小,优先级越高.函数scheduler实现如下功能,将task[]中的任务按照系统任务.用户任务依次存放到 system_task[]数组和 user_task[]数组中(数组中元素的值是任务在task[]数组中的下标

SSIS 文件系统任务无法使用变量配置目标路径

SSIS 文件系统任务无法使用变量配置目标路径 需求: 在SSIS2012中,某个从平面文件导入数据的包中,需要把处理出错的文件拷贝到一个专门的文件夹,便于管理人员查看. 问题描述: 1. 在包参数中添加一个参数传入目标文件夹路径. 2. 添加一个文件系统任务用来复制错误文件到指定的文件夹.该任务在文件处理失败时执行. 3. 由于是在循环中处理,每次处理的文件名都不一样,因此源文件和目标文件都使用变量来配置. 4. 在配置目标路径的时候,首先选择目标路径使用变量,发现在目标路径变量的下拉框内无法

thinkphp 定时执行php文件--windows系统任务计划

实现思路如下: 通过win的"任务"功能来定时执行一个bat文件,bat文件会调用php.exe文件,php.exe可以传递参数指定执行哪个类和方法 方法如下: 一,thinkphp开启cli支持 1.tp正好支持cli命令模式,手册的路径为13.7.4 如果是用的其他框架不支持cli,那么只能直接写程序了,其实就是写面向过程的最基础的php代码. 2.在入口文件下开启命令,加入一句 define('MODE_NAME', 'cli'); 网站一般还有可以通过网页访问的模块,所以可以新

conductor Workflow Metrics

Server Metrics conductor使用spectator收集指标.https://github.com/Netflix/spectator 名称 目的 标签 workflow_server_error 服务器端错误发生的速率 方法名 workflow_failure 计算失败的工作流程 workflowName,status workflow_start_error 计数器无法启动工作流 workflowName workflow_running 柜台为否.的运行工作流 workf

Linux 系统任务有关命令

fg.bg.jobs.&.ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的 & 最经常被用到 这个用在一个命令的最后,可以把这个命令放到后台执行 ctrl + z 可以将一个正在前台执行的命令放到后台,并且暂停 jobs 查看当前有多少在后台运行的命令 fg 将后台中的命令调至前台继续运行 如果后台中有多个命令,可以用 fg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid

【BZOJ2216】[Poi2011]Lightning Conductor 决策单调性

[BZOJ2216][Poi2011]Lightning Conductor Description 已知一个长度为n的序列a1,a2,...,an.对于每个1<=i<=n,找到最小的非负整数p满足 对于任意的j, aj < = ai + p - sqrt(abs(i-j)) Input 第一行n,(1<=n<=500000)下面每行一个整数,其中第i行是ai.(0<=ai<=1000000000) Output n行,第i行表示对于i,得到的p Sample I