首页 > 解决方案 > 事件溯源中是否有接近智能合约的概念?

问题描述

我正在为一个处于早期阶段的项目研究架构概念。我想知道需要实现的行为及其设计含义。基本上:特定事件,如果满足一组条件(两者都可能动态变化)应该触发其他事件的发射。

示意性地,希望能够在我的系统中拥有某种可以执行的合同:

If received: PaymentSuccessEvent with user_id 123 and amount $12
 then:
   emit PurchaseCompletedEvent
elseif(current date > some dead end):
   emit PurchaseFailedEvent

(我知道这非常广泛,我怀疑我可能错过了一些现有的模式,因为我没有充分地用词来表达我的搜索。)

这种行为在概念上似乎接近智能合约的意图。那么我的问题是,你能想到指向那个方向的设计模式、会议或作者吗?

编辑感谢 Rafael Almeida,(搜索措辞确实是我的问题)。规则引擎设计模式正是我所需要的。如果你偶然发现这篇文章并对设计模式感兴趣,我强烈建议你深入研究这个主题。(注意:它实际上并不是智能合约的概念等价物,尽管它是一个很好的概念起点,可以以这种方式实现某些东西)

标签: architectureevent-sourcing

解决方案


推荐阅读