运筹决策 BaiCe(百策)
运筹决策 BaiCe(百策)
1 系统设计
+-----------------------------------------------------------+
| +source-------+ |
| | +---------+ | |
| | | bianque | | +-----------+ +------------+ |
| | +---------+ | event | | action | | |
| | +------>| baice +------->| xingqiao | |
| | +---------+ | | | | | |
| | | xxx | | +-----+-----+ +------------+ |
| | +---------+ | | |
| +-------------+ | |
| +-----V-----+ |
| | DB | |
| +-----------+ |
+-----------------------------------------------------------+1.1 存储 cloudevent
将 cloudevent 存储
1.2 发布事件
发布 cloudevent create 事件
发布 cloudevent 数据变化事件
1.3 执行决策(插件)
执行相应插件,发起 action(可以创建星桥 workflow,也可以直接执行某个任务)
局部决策:
监听 source create 事件, 进行决策
监听 source 数据变化事件, 进行决策(IFTTT: if this than that)
全局决策
定时任务
可以设置冷却期,冷却期间不再发 action 任务
2 上下游
〖扁鹊〗产生一个 event(cloudevent),将其 push 到消息队列中
〖百策〗将 event 进行存储,并根据 rule 规则生成任务
存储 cloudevent
发布 cloudevent create 事件
发布 cloudevent 数据变化事件
〖星桥〗工作流进行执行具体任务
3 实践
3.1 volume_resize_demo
Last updated