骑木马的哥哥
2017-04-01 20:45
老师在讲解事物的时候提到:保证事务方法的执行时间尽可能短,不要穿插其他网络操作RPC/HTTP请求或者剥离到事务方法外部。
这么做是因为防止表被行级锁锁住,如果在开启事物后执行update操作,但是因为事物没有提交,数据库并不会立即生效,但是数据库会锁定该行。如果这个时候有其他http请求调用,表会一直锁住,直到事物提交才会释放。
老师的意思是把http请求调用单独写一个方法,但是在事物中我们依然需要调用这个方法啊?方法执行完后才会执行下一行,这么做跟直接写http调用没有区别。
该如何理解:不要穿插其他网络操作RPC/HTTP请求或者剥离到事务方法外部
老师的意思是说。在执行事物方法前调用http的方法。这样就不会在事物里了。
Java高并发秒杀API之Service层
59897 学习 · 137 问题
相似问题