彦祖们,请教下这个问题有什么好的解决方案?
資深大佬 : MeloForsaken 6
有两个部署在不同服务器的系统 A 、B (对应的数据库也是分开的)。
正常情况:A 向 B 发请求,B 写数据库,A 根据 B 回传的信息写数据库。
现在 A 因为偶尔的网络问题没有收到 B 回传的信息,导致 B 写了数据库,A 没有写数据库,造成数据不一致。
请教下有什么方案解决这种事务问题?(网络问题不可解决的情况下)
大佬有話說 (12)
有两个部署在不同服务器的系统 A 、B (对应的数据库也是分开的)。
正常情况:A 向 B 发请求,B 写数据库,A 根据 B 回传的信息写数据库。
现在 A 因为偶尔的网络问题没有收到 B 回传的信息,导致 B 写了数据库,A 没有写数据库,造成数据不一致。
请教下有什么方案解决这种事务问题?(网络问题不可解决的情况下)
但是既然你有这样的网络问题,那以上任何解决方案都是不可靠的,因为任何策略都基于多次网络通信,你单次通信都不能保证到达,怎么保证这些多次网络通信可靠呢?
在 AB 的通信不能保证的情况下,只能再找一个双方都能访问的第三方用来做中介了,比如 MQ 或者数据库,双方都监听或者轮询这个第三方来做确认。