쿠키와 세션의 차이점을 알아보기 전에 공통점부터 알아보자.
HTTP가 비연결성
과 Stateless
의 특징을 갖기 때문에 쿠키와 세션을 사용한다.
웹 서비스를 이용하면서 유지해야될 로그인 정보와 매번 연결 시 불러와야 하는 이미지 파일과 같은 정보를 저장하여 좀 더 간편하고 빠르게 서비스를 이용하기 위한 목적이 있다.
쿠키와 세션의 가장 큰 차이점은 저장위치이다.
쿠키는 정보를 클라이언트에 저장한다. (개인 PC)
세션은 정보를 웹서버에 저장한다.
쿠키가 세션보다 빠르다.
보안은 세션이 쿠키보다 좋다.
데이터 형태는 key, value 형태이며, String으로 이루어져 있다.
이름, 값, 만료일, 경로 정보로 구성되어있다.
세션은 웹 브라우저 당 1개씩 생성되고 웹 컨테이너에 저장한다.
브라우저가 종료되면 세션도 삭제된다.
로그아웃을 하면 쿠키가 삭제되어 보안성이 좋다.
브라우저를 닫거나 세션을 삭제해야만 삭제가 된다.
저장 데이터 제한이 없다.
세션을 무분별하게 사용할 경우 부하발생으로 서비스 지연이 우려가 있다.
따라서 쿠키와 세션을 필요에 따라 사용해야한다.