【分布式事务】分布式事务的实现

如果在多个服务中需要对不同的数据库进行操作。

  因为不同服务操作的数据库都不同,所以保证在同一个事务中完成操作显然是不科学的。

那实现分布式事务的思想:

  1》  方法入口,创建一条日志记录,状态定义为初始状态,即保存本条日志记录

  2》  可以在异步线程或在定时任务中,去读取日志表中,是否有满足条件的日志需要处理【同时为了放置多个示例开启多个定时任务,可以将定时任务放入redis,保证同一时刻只有一个定时任务在执行】

  3》  如果有需要处理的任务,先取出本条日志,然后分别对不同服务进行处理,哪一个服务处理完成,就设置本服务对应的状态为成功标志

  4》  只有所有服务对应标志都成功,才表示次服务最终完成【同时删除redis中的定时任务】

以此来实现分布式事务的思想。

猜你喜欢

转载自www.cnblogs.com/sxdcgaq8080/p/9288387.html