分布式系统中存在的问题

来源:16-2 高可用一些手段

慕侠4425575

2019-08-28

Jimin老师您好。
系统情况:订单,商品,支付等服务独立部署在不同的web容器中,然后公用一个DB。
问: 1.这样的形式算分布式吗?
2.下单的时候,减商品库存,给用户加奖励,然后订单入库。订单服务调用商品服务减库存,订单服务调用任务服务加奖励,然后订单服务订单入库。如果订单调用其它的服务是使用http发送请求,同步获取结果的方式,合理吗?还是应该使用异步调用?
3.如果订单调用商品减库存事务成功;订单调用任务服务加奖励事务成功,但是返回给订单服务超时,这时数据一致性如何保证?

写回答

1回答

Jimin

2019-08-28

你好
1、算分布式,分布式是按照应用级别来分的,不是按照db
2、严格来说不太合理,异步更好些,其他操作其实也可以优化,比如借助mq等
3、这时很多人会想到使用分布式事务,但是这个使用成本比较高。我个人比较倾向于补偿,异步去检查两项数据是否都成功,或者一个成功一个是没成功,根据检查结果去结合业务做后续的事情。

0
0

Java高并发编程,构建并发知识体系,提升面试成功率

构建完整并发与高并发知识体系,倍增高薪面试成功率!

3923 学习 · 832 问题

查看课程