基于可协商合约实现从组件到自主元素的转变
在组件化系统中,为了实现一些自主特性,可协商合约起到了关键作用。下面将详细介绍相关内容。
1. 协商协议与参与方
在外部组合合约的协商中,参与方包括作为发起者的 <ms> 的合约控制器、作为保证人的 <pr> 以及作为受益方的 <ms> 和 <rtm> 。协商协议的交互流程如下:
1. 发起者首先向协商参与方请求恢复违反条款有效性的提案,参与方提出修改建议。
2. 发起者执行这些修改建议并检查条款的有效性。
3. 上述步骤会对所有参与方的提案进行迭代。若找到满意的解决方案,协商过程结束;若没有提案能恢复条款有效性或达到协商超时,则协商失败。
为完善协商模型,还需定义策略。
2. 反馈控制循环中的合约
基于合约的系统管理在 ConFract 中呈现为反馈控制循环结构。合约在系统中扮演核心角色,用于增强应用的自主性。它能明确系统各部分之间的协作属性,在系统整个生命周期内被监控,并根据架构变化进行更新,同时为协商模型提供支持,以启动和完成每次原子协商。具体而言,合约可作为知识和分析工具,精确识别系统中需要监控的部分、每个违反条款的责任组件,以及所提议的修改是否能使合约重新生效。
在 ConFract 中,合约由合约控制器管理。每个合约控制器负责对其管控的合约组件进行监控,包括在组装和执行阶段。它会检查条款,检测架构或行为方面的合约违规,并依据协商规则和策略推动协商活动。
可协商合约实现组件自主性
超级会员免费看
订阅专栏 解锁全文
4498

被折叠的 条评论
为什么被折叠?



