如何理解:不要穿插其他网络操作RPC/HTTP请求或者剥离到事务方法外部

来源:3-2 使用Spring声明式事务配置

骑木马的哥哥

2017-04-01 20:45

老师在讲解事物的时候提到:保证事务方法的执行时间尽可能短,不要穿插其他网络操作RPC/HTTP请求或者剥离到事务方法外部。

这么做是因为防止表被行级锁锁住,如果在开启事物后执行update操作,但是因为事物没有提交,数据库并不会立即生效,但是数据库会锁定该行。如果这个时候有其他http请求调用,表会一直锁住,直到事物提交才会释放。

老师的意思是把http请求调用单独写一个方法,但是在事物中我们依然需要调用这个方法啊?方法执行完后才会执行下一行,这么做跟直接写http调用没有区别。

该如何理解:不要穿插其他网络操作RPC/HTTP请求或者剥离到事务方法外部

写回答 关注

1回答

  • 暴走的大猩猩
    2017-04-03 14:46:57
    已采纳

    老师的意思是说。在执行事物方法前调用http的方法。这样就不会在事物里了。

    骑木马的哥哥

    非常感谢!

    2017-04-03 16:11:25

    共 1 条回复 >

Java高并发秒杀API之Service层

Java实现高并发秒杀API,介绍秒杀业务Service层的设计和实现

59897 学习 · 137 问题

查看课程

相似问题