跳转到内容

触发器

触发器

触发器是集成平台中流程的起点,是定义通过哪种服务在哪种情况下触发并运行流程的配置数据,在新建流程时通过选择不同的触发器集成平台对外提供不同的服务。

Http服务监听

新建流程时触发器类型选择http-rest-listener会暴露一个http服务,通过在配置数据中定义对应的path、method等参数明确外部该如何调用这个http服务。以下是具体配置参数:

  • inModelId(输入结构):必填,定义接口的入参模型,表示该以何种结构请求这个接口

  • outModelId(输出结构):必填,定义接口的出参模型,表示接口的返回结构

  • enableLimit(开启限流):必填,是否开启限流

  • enableBreaker(开启熔断):必填,是否开启熔断

  • limiterId(限流熔断器):非必填,当enableLimit或enableBreaker开启时选择具体的限流熔断器

    限流熔断器概念理解

  • enableAuthenticator(开启鉴权):必填,是否开启鉴权

  • authenticatorId(鉴权器):非必填,当enableAuthenticator开启时选择具体的熔断器

    鉴权器概念理解

  • protocol(协议):必填,选择HTTPS或HTTP服务,定义外部该以何种协议请求

  • method(方法):必填,定义这个接口的请求方法。可选以下几种:

    POST、GET、PUT、DELETE、PATCH、MIX、TRACE、HEAD、CONNECT、OPTIONS

  • path(路径):必填,定义这个接口的请求路径(确保path在当前环境的唯一性,否则会引起冲突

  • timeout(超时时间):必填,外部调用时服务端的响应超时时间,单位ms

具体使用可查看:HTTP服务监听触发器开发指南

Dubbo服务提供者

新建流程时触发器类型选择dubbo-provider会暴露一个dubbo服务,通过在配置数据中定义serviceId、method等参数明确外部该如何调用这个dubbo服务。以下是具体配置参数:

  • inModelId(输入结构):必填,定义接口的入参模型,表示该以何种结构请求这个接口

  • outModelId(输出结构):必填,定义接口的出参模型,表示接口的返回结构

  • connectorId(连接器id):必填,dubbo类型的连接器,用于配置连接注册中心相关的信息

    dubbo连接器开发指南

  • serviceId(服务id):必填,定义服务的元信息,声明需要暴露的服务接口

  • method(服务方法):必填,定义服务方法

  • version (版本):必填,定义服务的版本

  • timeout(超时时间):必填,外部调用时服务端的响应超时时间,单位ms

具体使用可查看:Dubbo服务提供者开发指南

Soap服务监听器

新建流程时触发器类型选择soap-listener会暴露一个soap服务,通过在配置数据中定义对应的path、method等参数明确外部该如何调用这个soap服务。以下是具体配置参数:

  • inModelId(输入结构):必填,定义接口的入参模型,表示该以何种结构请求这个接口

  • outModelId(输出结构):必填,定义接口的出参模型,表示接口的返回结构

  • protocol(协议):必填,选择HTTPS或HTTP服务,定义外部该以何种协议请求

  • method(方法):必填,定义这个接口的请求方法。可选以下几种:

    POST、GET、PUT、DELETE、PATCH、MIX、TRACE、HEAD、CONNECT、OPTIONS

  • path(路径):必填,定义这个接口的请求方法(确保path在当前环境的唯一性,否则会引起冲突

  • timeout(超时时间):必填,外部调用时服务端的响应超时时间,单位ms

  • nullResponseBody(返回体为空):选择接口返回体是否为空

具体使用可查看:Soap服务监听器开发指南

AS2服务监听器

新建流程时触发器类型选择as2-server会暴露一个as2服务,能够接收外部系统的基于AS2协议的请求,并进行数据的鉴权解密,得到EDI数据。以下是具体配置参数:

  • requestUri(路径):必填,定义这个接口的请求路径(确保path在当前环境的唯一性,否则会引起冲突
  • uriPattern(请求过滤规则):必填,*表示所有请求改服务的请求全部接收并进行相应的鉴权检查及数据解密
  • partnerCertificate(合作方公钥):该配置为oss的文件地址
  • stationCertificate(集成平台公钥):该配置为oss的文件地址
  • stationPem(集成平台私钥):该配置为oss的文件地址

具体使用可查看:AS2服务监听器开发指南

Rocketmq消费者

新建流程时触发器类型选择rocketmq-consumer会启动一个rocketmq监听器,监听消息进行消费,通过在配置数据中定义nameServer、topic、consumerGroup等参数明确消费来源。以下是具体配置参数:

  • inModelId(输入结构):必填,定义消费者的入参模型

  • outModelId(输出结构):必填,定义消费者的出参模型

  • connectorId (连接器id):必填,rocketmq类型的连接器,用于配置nameServer等信息

    mq连接器开发指南

  • consumerType(消费者类型):必填,可选:PULLPUSH

  • topic(主题):必填,定义业务类型,通过topic对不同的业务消息进行分类

  • consumerGroup(消费者组):必填,消费者的标识(确保consumerGroup在当前环境的唯一性,否则会引起冲突

  • tags(标签):非必填,进一步区分某topic下的消息分类

  • autocommit(消费自动确认):必填,选择消费是否自动确认

    • 消费自动确认:rocketmq消费者消费到消息时即表示消费成功

    • 消费不自动确认:需要在流程中和rocketmq-commit处理器配合使用。即在流程中添加rocketmq-commit处理器,如果在该rocketmq-commit处理器之前的节点发生异常,则消费的offset不变更。

      rocketmq-commit处理器开发指南

具体使用可查看:Rocketmq消费者开发指南

Kafka消费者

新建流程时触发器类型选择kafka-consumer会启动一个kafka监听器,监听消息进行消费,通过在配置数据中定义broker、topic、groupId等参数明确消费来源。以下是具体配置参数:

  • inModelId(输入结构):必填,定义消费者的入参模型

  • outModelId(输出结构):必填,定义消费者的出参模型

  • connectorId(连接器id):必填,kafka类型的连接器,用于配置kafka的broker信息

    mq连接器开发指南

  • topic(主题):必填,定义业务类型,通过topic对不同的业务消息进行分类

  • groupId(消费者组id):必填,消费者的标识(确保groupId在当前环境的唯一性,否则会引起冲突

  • autocommit(消费自动确认):必填,选择消费是否自动确认

    • 消费自动确认:kafka消费者消费到消息时即表示消费成功

    • 消费不自动确认:需要在流程中和kafka-commit处理器配合使用。即在流程中添加kafka-commit处理器,如果在该kafka-commit处理器之前的节点发生异常,则消费的offset不变更。

      kafka-commit处理器开发指南

具体使用可查看:Kafka消费者开发指南

Ftp文件下载器

新建流程时触发器类型选择ftp-download通过配置cron、connectorId等配置信息定时去文件服务器下载文件。以下是具体配置参数:

  • inModelId(输入结构):必填,定义入参模型

  • connectorId(连接器id):必填,ftp类型的连接器,用于配置文件服务器的连接信息

    ftp连接器开发指南

  • delete(执行成功是否删除文件):必填

  • cron(cron表达式):必填,根据规则定时调度

  • path(路径):必填,下载文件在服务器的路径

  • fileName(文件名):非必填,下载文件在服务器上的文件名,如果为空则下载路径下所有文件

具体使用可查看:Ftp文件下载器开发指南

定时任务调度器

新建流程时触发器类型选择elastic-job通过配置cron、serverLists等配置信息定时去触发执行该流程。elastic-job内部依赖zookeeper的3.6.0以上版本,需要在dice的dice.yml文件中添加zookeeper的3.6.2版本。以下是具体配置参数:

  • serverLists (zookeeper地址):必填,多个地址用英文逗号分隔
  • namespace(命名空间):必填,zookeeper的namespace
  • jobName(作业名称):必填,(确保jobName在当前环境的唯一性,否则会引起冲突
  • cron(cron表达式):必填
  • shardingTotalCount(作业分片总数):必填,不大于serverLists的地址数

具体使用可查看:定时任务调度器开发指南