
@Transactional 최적화
·
project/poppin-server
팝핀(Poppin) 프로젝트 회고@Transactional이 무분별하게 사용되는 것을 방지하고자 트랜잭션 최적화 작업을 일부 수행했다.@Transactional특정 메서드나 클래스에서 수행되는 트랜잭션 관리를 위해 사용하는 어노테이션이다.해당 어노테이션을 선언하면 런타임 중 트랜잭션에 오류가 발생하면 트랜잭션이 롤백(rollback)되고 변경 사항이 모두 취소된다.이는 트랜잭션의 ACID 성질 중 원자성(Atomicity)과 관련이 있다.여러 개의 작업을 하나로 묶은 논리적 단위가 트랜잭션이 되는데 이 작업들 중 하나라도 실패하면 모든 작업을 실패한 것으로 간주하고 트랜잭션이 실행되기 전으로 돌아간다.반면, 모든 작업이 성공하면 커밋(commit)되고 변경사항이 반영된다.둘 중 어느 것을 사용해야 할까❓..