inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

12-04 Transaction - Isolation 1

트랜잭션 queryRunner 더러운 읽기 , 반복 못하는 읽기 기타 등등 질문있습니다.

해결된 질문

175

반가우면반갑다고해

작성한 질문수 142

0

예시 코드를 보면 트랜잭션 이용해서 조회하고, 작성하고 하시는데 이거는 예시를 위해서 그렇게 하신걸까요?

 

실무에서는 한가지 작업할 때는 트랜잭션 사용안하고 바로 디비에 저장하고, 조회하고 하는걸까요?

 

 

javascript node.js docker rest-api nestjs

답변 2

1

노원두

안녕하세요! 반가우면반갑다고해님!

해당 코드들은 더러운읽기를 제외하고는 모두 실제로 발생 가능한 여러상황을 담은 예시들이랍니다!^^
따라서, 현재 직면한 상황에 따라서 모두 사용 가능하며, 실제로 실무에서 사용되는 방식들이에요!^^

현재 어떤 로직을 처리하고 있는지 비즈니스 상황을 고려하시어, 적절하게 대응해 주세요!^^

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

트랜잭션의 사용 여부는 작업의 성격과 요구사항에 따라 달라집니다. 예시코드에서 트랜잭션을 사용하는 것은, 여러 데이터베이스 작업을 하나의 작업 단위로 묶어 일관성을 유지하고, 작업 중에 오류가 발생했을 때 모든 작업을 원래 상태로 되돌릴 수 있기 때문일 수 있습니다. 실무에서도 이러한 트랜잭션의 원칙은 동일하게 적용됩니다.

하나의 작업만 수행한다고 하더라도, 예를 들어 데이터를 조회한 후 이를 바탕으로 복잡한 로직을 처리하고 결과를 다시 데이터베이스에 저장하는 과정 등 혼자 실행될 때에도 일관성이 중요한 경우가 많습니다. 이러한 경우에도 트랜잭션을 사용하여 데이터의 일관성과 안전성을 보장합니다.

단순히 한 가지 데이터를 저장하거나 조회하는 등의 간단한 작업이고, 그 작업에 대해 별도의 일관성 유지나 롤백 처리가 필요 없다면 트랜잭션을 사용하지 않을 수 있습니다. 하지만 실무에서는 데이터의 무결성과 일관성을 위해 트랜잭션을 적절히 사용하는 것이 중요합니다.

결과적으로 트랜잭션 사용 여부는 해당 작업의 성격, 데이터의 중요성, 실행 환경 등을 고려하여 결정되어야 합니다.

그래프 ql 문서 사용할때 느낌표 남는거 어떻게 없애나요?

0

82

2

강의 전체 소스 코드를 받고싶습니다.

0

75

2

fontawesome 사용 문의

0

75

2

소스 코드 부탁드립니다~

0

84

2

깃 레포지터리 소스

0

80

2

커리큘럼12.css 정렬 에 나오는 과제 정답알고싶어요

0

72

2

10-01 Entity TypeOrmModule.forRoot 에 entities

0

84

3

강의 버전관련 문의입니다

0

101

2

Ubuntu 설치 관련

0

60

1

schema.gql 질문 드립니다.

0

49

1

서버 재실행시 Many to Many

0

100

3

input 관련 문의

0

89

2

Rest API 보다는 graphql이 주된 내용인데

0

130

2

강의 전체 소스코드 받을수있을까요?

0

154

1

도커볼륨 마운트 관련

0

126

2

findOne 타입스크립트오류

0

108

1

http => htrtps 호출 인증서 신뢰 오류

0

348

1

self-signed certificate in certificate chain 에러 발생

0

409

1

mongoose 설치 오류

0

141

1

특정 API, 특정 IP 허용 (단일경로에 CORS 활성화)

0

280

2

08-06

0

177

3

구조랑 패턴 관련해서 질문

0

123

2

mydocker

0

127

2

coolsms statuscode 2000 인데 전송안돼는 경우 확인.

0

155

1