典型场景¶
WeEvent
作为一个事件中间件,属于MOM
编程实践的一部分。理论上,使用传统消息队列Message Queue
的场景,都可以使用WeEvent
代替。WeEvent
支持的STOMP
协议,也使这种切换变的更简单和方便。
相比传统MQ
,WeEvent
是去中心化的,更加关注访问安全,数据不可篡改等特性。非常适合应用在跨组织的,多个公司之间的合作。
例如网上购物过程中购买退货险这个场景,涉及到提供卖场的电子商务公司,作为卖方的商家,快递公司等。围绕某个订单的状态改变,在三个公司间会有各种通知和数据需要触达。现有的方案,数据是集中式处理的,卖场说了算。但是在更加平等的商业环境下,应该是去中心化处理的,数据不属于任何一家公司,多方共管,共享。使用WeEvent
服务可以很好的满足这个需求。首先:多方公司共同部署一个区块链。其次:业务程序通过WeEvent
提供的订阅发布机制来管理区块链上的数据。然后:其他公司可以及时得到可靠的关于数据变化的通知,更进一步的可以做到及时平账等。
传统MQ模式如何转到WeEvent
WeEvent
的发布订阅机制、API
定义、访问协议(如STOMP
)和传统的MQ
是一致的。很容易切换。传统RPC模式如何转到WeEvent
一个种方案是,业务程序做一些调整,以适应
MOM
编程范式。另一种改动比较小的方案是,在数据库上建立
trigger
,从数据库这一层将数据及其变化桥接到WeEvent
上来。