基于流程的流式规则引擎。
规则引擎支持3种模式运行:
- 单点模式
只能在一个服务器节点上运行规则。
- 集群模式
规则运行方式与单点模式相同,可以在多台服务节点上运行相同的规则进行负载均衡。
- 分布式模式
可指定同一个规则的不同规则节点在不同的服务节点上运行。
//规则模型
RuleModel{
events:[ RuleLink ] # 事件连接点,用于自定义规则事件的处理规则
nodes:[ RuleNodeModel ] # 所有节点信息,包含事件节点
}
//节点模型
RuleNodeModel{
executor: "" # 节点执行器标识
configuration: { Map } # 节点配置
events:[ RuleLink ] # 事件连接点,用于自定义节点事件的处理规则
inputs:[ RuleLink ] # 输入连接点
outputs:[ RuleLink ] # 输出连接点
}
//连接点,将2个规则节点关联
RuleLink{
type: "" # 类型,为事件连接点时类型则为事件类型
condition: Condition # 连接条件
source: RuleNodeModel # 连接节点
target: RuleNodeModel # 被连接节点
}
//条件
Condition{
type: "" # 条件类型。如: expression
configuration: { Map } # 条件配置
}
TODO
TODO