패키지
세션이란 본문
세션이란?
1) 망 환경에서 사용자간 또는 컴퓨터 간의 대화를 위한 논리적 연결
2) 프로세스들 사이에서 통신을 하기 위해 메세지 교환을 통해 서로를 인식한 이후부터 통신을 마칠 때까지의 시간.
*세션이란
일정 시간동안 같은 사용자(정확하게 브라우저)로 부터 들어오는 일련의 요구를 하나의 상태로 보고 그 상태를 일정하게 유지시키는 기술.
또한 여기서 일정 시간이란 방문자가 웹 브라우저를 통해 웹 서버에 접속한 시점부터 웹 브라우저를 종료함으로써 연결을 끝내는 시점을 말한다.
즉, 방문자가 웹서버에 접속해 있는 상태를 하나의 단위로 보고 세션이라고 칭한다.
*쿠기
특정 웹 사이트를 방문 했을 때 만들어지는 정보를 담는 파일을 지칭.
쉽게 말해, 상태정보를 유지하는 기술
**쿠기와 세션의 차이점
-쿠키
방문자의 정보를 방문자 컴퓨터의 메모리에 저장하는 것.
예를 들면 id나 비밀번호를 저장하거나 방문한 사이트를 저장하는데 사용.
(IE 인터넷 옵션에서 검색 기록 삭제할 때 임시파일, 열어본 페이지목록, 쿠키, 저장된 암호 및 웹 양식 정보 삭제)
-세션
방문자의 요청에 따른 정보를 방문자 메모리에 저장하는 것이 아닌 웹 서버가 세션 아이디 파일을 만들어 서비스가 돌아가고 있는 서버에 저장을 하는 것.
**SO
그래서
쿠키와 달리 세션은 사용자들의 로그인 정보에 대한 보안을 한층 업그레이드 할 수 있어 웹사이트에 방문항 계속 접속을 유지할 때 이전의 접속 정보를 이용할 수 있는 방법으로 많이들 사용한다.
1. HTTP Session이란?
1. session이란? 서버가 해당 서버(웹)로 접근(request)한 클라이언트(사용자)를 식별하는 방법
2. 서버(웹)는 접근한 클라이언트(사용자)에게 response-header field인 set-cookie 값으로 클라이언트 식별자인 session-id(임의의 긴 문자열)를 발행(응답)한다.
3. 서버로부터 발행(응답)된 session-id는 해당 서버(웹)와 클라이언트(브라우저) 메모리에 저장된다.
이때 클라이언트 메모리에 사용되는 cookie 타입은 세션 종료 시 같이 소멸되는 "Memory cookie"가 사용된다.
4. 서버로부터 발행된 session(데이터)을 통해 개인화(사용자)를 위한 데이터(userInfo 등..)로 활용할 수 있다.
2. HTTP Session 동작 순서
1. 클라이언트(사용자)가 서버로 접속(http 요청)을 시도한다.
2. 서버(웹)는 접근한 클라이언트의 request-header field인 cookie를 확인해 클라이언트가 해당 session-id를 보내왔는지 확인한다.
3. 만약 클라이언트로 부터 발송된 session-id가 없다면, 서버는 session-id를 생성해 클라이언트에게 response-header field인 set-cookie 값으로 session-id(임의의 긴 문자열)를 발행(응답)한다.
* 첫 번째 요청(http) 시 클라이언트로 부터 발송된 session-id 가 없으므로 서버는 session-id를 생성해 클라이언트에게 발행(응답)한다.
* 두 번째 요청(http) 시 클라이언트는 서버로 부터 발행(응답)된 session-id를 request-header cookie 값으로 포함하고 있다.
4. 서버로부터 발행(응답)된 session-id는 해당 서버(웹)와 클라이언트(사용자 브라우저) 메모리에 저장된다.
이때 사용되는 cookie 타입은 세션 종료 시 같이 소멸되는 "memory cookie"가 사용된다.
5. 클라이언트 접속 종료(브라우저 닫기 등..) 시 서버에 저장된 session-id(server resource 소유)는 소멸된다.
참고 블로그
http://88240.tistory.com/entry/Session-%EC%9D%B4%EB%9E%80
http://mohwaproject.tistory.com/176
'기타' 카테고리의 다른 글
java에서 엑셀 핸들링 과 전위,후위 연산자 (0) | 2017.02.08 |
---|---|
썸네일(thumbnail) (0) | 2017.02.06 |
하드코딩 이란??_출처참조 (0) | 2016.06.12 |
컬럼 개발자, '왜'에서 시작하라/임백준 IT칼럼니스트 (0) | 2015.08.28 |
미들웨어란 / 개념 및 종류 (0) | 2015.08.18 |