경험과 지식 부족으로 말문이 막혔던 질문이 있다.
request가 들어왔고 여러 테이블에 걸쳐 write를 해야 하는 작업이다.
트랜잭션을 통해 원자성 원칙을 준수하고 싶다.
그런데 여러 테이블에 한 번에 트랜잭션을 걸게 되면 테이블 lock으로 시간 지연이 발생하게 될 거다.
그러면 트랜잭션을 걸지 말아야 할까..?
아니면 트랜잭션을 걸고 시간 지연으로 불편을 초래할 것인가..?
해결방안 중 하나
mysql engine 중 InnoDB는 row lock을 지원하고 있다.
위의 engine을 사용함으로써 row lock으로 시간 지연을 막을 수 있는 방법을 모색할 수 있다.