TIL(Today I Learned)
12월 18일(월)
공부한 내용을 제 언어로 빠르게 정리한 내용이라서 잘못된 내용이 있을 수 있습니다.
서버 스터디
- HTTP Stateless
- 클라이언트와 서버간의 각 요청과 응답이 독립적인 트랜잭션임
- 이전의 요청과 응답에 대한 상태정보를 유지하지 않음
- 따라서 로그인 등 Authentication을 위해서 쿠키, 세션, 토큰이 사용
- Session
- 웹서버에서 사용자의 상태정보를 일정 시간 동안 유지하고 관리하는 매커니즘
- 클라이언트의 로그인 상태를 유지하기 위해 사용
- 일정시간이 지나거나 사용자의 요청이 없으면 세션이 만료
- 작동방식
- 서버가 Session ID를 생성해서 사용자에게 전송
- 서버에서는 Session ID에 해당하는 사용자 정보를 서버 메모리, 데이터베이스 등에 저장
- 클라이언트는 Session ID를 브라우저의 쿠키에 저장
- 브라우저는 요청을 보낼때마다 쿠키에 저장된 Session ID를 같이 전송
- 서버는 Session ID를 통해 사용자 상태 정보를 조회하고, 응답함
- 서버가 Session ID를 생성해서 사용자에게 전송
- 웹서버에서 사용자의 상태정보를 일정 시간 동안 유지하고 관리하는 매커니즘
- 테스트코드 이점
- 테스트코드를 통해 코드가 변경됐을 때 발생할 수 있는 문제점을 미리 감지할 수 있음
- 특정 함수를 테스트하는 테스트 코드가 있을 경우, 함수의 파라미터가 변경되거나 반환값의 타입이 변경되면 테스트 코드에서 문제가 생기기 때문에
- 테스트코드를 통해 코드가 변경됐을 때 발생할 수 있는 문제점을 미리 감지할 수 있음