一、背景
并发环境下,数据库事务和分布式锁的嵌套关系使用不当,可能会引起并发问题。
事务里嵌套锁:
@Transaction
public void method() {
redisLock.lock();
try {
} finally {
redisLock.unlock();
}
}
锁中调用事务方法:
@Autowire
private TransService transService;
@PostMapping("/trans")
public ResponseEntity trans() {
try {
redisLock.lock();
// @Transaction
transService.method();
} finally {
redisLock.unLock();
}
}
先说结论,锁里事务可以解决并发问题
二、分析
在之前的文章