【发布时间】:2019-02-01 12:31:33
【问题描述】:
我在实现微服务架构方面还很陌生,这个问题让我大吃一惊
微服务架构如何解决不同端点调用之间的事务机制。
一个例子是基于微服务架构的银行服务 基本上,银行操作是针对不同的服务调用不同的服务来完成一笔交易,如果其中一个失败,那么就没有办法消除部分流程,不知道有没有什么机制可以解决这个问题
创建付款
POST /payments/customer/10/payment/100/
从帐户中扣款
PUT /customers/10/accounts/20
发送客户通知
发布 /alerts/customers/10
【问题讨论】:
-
最终的一致性和和解。 (在这种特定情况下,第一类记录可能是发布到日志的事务,然后消费者负责更新下游记录,如客户余额和发送警报。)
-
我觉得你提到的诉诸抵抗而不是取消案例的观点很有趣
标签: java rest microservices acid