TIL 23_07_04 (화)

jegw·2023년 7월 5일
0

TIL

목록 보기
36/77
post-custom-banner

오늘 한 일

노드 심화 학습

  • 트랜잭션
  • accessToken, refreshToken

트랜잭션

  • 트랜잭션은 DB의 상태를 바꾸는 하나의 작업 단위이다.

    • 만약 트랜잭션으로 처리되는 여러 단계중에서 에러가 나면
      모든 단계는 롤백된다.
  • 예 : 통장에서 돈을 차감한다와 다른 통장에 돈을 추가하는 두가지 변경은 따로 존재해선 안된다. 한쪽의 돈만 차감되거나 한쪽의 돈만 추가되면 혼란이 생기니까.

  • 그래서 두 작업을 트랜잭션으로 묶으면 두가지 성공하기 전에는 DB를 변화시키지 않게 된다.

accessToken, refreshToken

  • 액세스 토큰은 만료 기한이 짧은 상태로 발급한다.

  • 리프레쉬 토큰에는 내용이 없다.

    • 만료기간이 액세스 토큰보다 길다.
    • 리프레쉬 토큰이 존재하면 액세스 토큰을 재발급받을 수 있다.
  • 리프레쉬 토큰을 키로, 값을 id로 객체 안에 넣는다.

    • 이 객체는 서버가 재부팅되어도 인증 가능하도록 DB나, 캐시DB에 저장하는 것이 좋다. (= stateless 서버)
post-custom-banner

0개의 댓글