FastAPI — 타입이 곧 계약이다 · ETag로 덮어쓰기 충돌을 막는 API · 퀴즈
ETag로 덮어쓰기 충돌을 막는 API 확인
6문항. 정답과 해설은 풀어 본 뒤에 보여 드립니다.
SELECT로 버전 확인 후 조건 없이 UPDATE하면 왜 위험한가?
- SELECT는 항상 이전 트랜잭션만 읽는다
- 두 문장 사이에 다른 갱신이 들어올 수 있다
- UPDATE가 버전을 자동으로 두 번 올린다
- HTTP가 요청 순서를 항상 뒤집는다
If-Match가 오래된 값이라 412를 받았다. 다음 행동은?
- 같은 태그로 무한 재시도한다
- If-Match를 삭제하고 강제 저장한다
- 최신 내용을 읽고 충돌을 해결한다
- 서버의 버전을 1로 되돌린다
같은 버전의 두 수정 요청이 경쟁할 때 기대되는 결과는?
- 둘 다 성공하고 마지막 저장이 승리
- 둘 다 버전 증가 없이 성공
- DB 파일이 반드시 손상됨
- 하나만 성공하고 다른 하나는 조건 실패
이 실습에서 If-Match 없이 기존 메모를 수정하면?
- 428
- 204
- 301
- 404
강한 ETag를 버전 번호만으로 만들 수 있는 전제는?
- 모든 사용자가 같은 브라우저를 쓴다
- 같은 리소스의 표현 변경이 그 버전에 반영된다
- 응답 본문은 어떤 식으로 바뀌어도 된다
- DB에 버전 컬럼만 있으면 항상 된다
412 응답을 검사할 때 함께 확인해야 하는 것은?
- 응답 시간이 정확히 1초인지
- 서버 로그의 문장 길이
- 기존 내용과 버전이 그대로인지
- 메모 테이블이 비어 있는지