1. Stickey Sessions ?
- AWS EC2 를 이미지 복사하여 여러개의 서버로 구성하였을 때 로드 밸런서는 서버 부하에 따라
클라이언트 요청을 분산하여 각 서버로 전달하게 됨
이때, 클라이언트가 A의 서버로 요청을 전달하여 세션(로그인)을 생성하였지만 새로고침을 하거나
다시 요청을 하였을 경우 B의 서버로 요청하게 될 수도 있음
요청받은 B서버는 세션을 가지고 있지 않기 때문에 똑같은 요청(로그인)을 진행해야 함
이런 상황을 보완하기 위해 사용하는 방법이 Stickey Session
* 라운드로빈 방식 ?
- 서버에 들어온 요청을 순서대로 돌아가며 배정하는 방식
* 로드밸런싱 ?
- 대용량 트래픽을 장애 없이(무중단) 처리하기 위해 여러 대의 서버에 적절히 트래픽을 분배하는 것
클라이언트 1번이 처음으로 요청을 보낸 첫번째 EC2(서버)와 지속적으로 응답을 주고받는 것
마찬가지로 클라이언트 2번이 처음으로 요청을 보낸 두번째 EC2(서버) 지속적으로 응답을 주고받음
이렇게 처음요청한 서버와 지속적으로 요청을 주고받는게 Stickey Session (서버고정방식)
2. Stickey Session 장점
- Cookie 를 사용하여 요청 서버 저장
- IP Hash 방식으로 서버를 지정하면 발생할 수 있는 트래픽 부하 현상을 Cookie를 사용하여 해결
- 클라이언트의 IP 트래킹 방식
* IP Hash ?
- 클라이언트의 IP 주소를 특정 서버에 매핑하여 요청을 처리
IP 주소를 해싱하여 로드를 분산하여 동일한 서버로 연결되는 것보장
3. Stickey Session 단점
- 특정 서버에 과부하가 올 수 있음
- 특정 서버에 문제가 생겼을 경우 서버와 연결된 클라이언트 세션을 다 잃을 수 있음
- 로드밸랜서의 효율이 떨어짐
AWS 고정세션 관련 (Stickey Session) 링크
https://docs.aws.amazon.com/ko_kr/elasticloadbalancing/latest/application/sticky-sessions.html
'개발지식' 카테고리의 다른 글
브라우저 URL 입력했을 때 발생하는 일 (0) | 2022.07.13 |
---|---|
세마포어와 뮤택스 (0) | 2022.07.01 |
Redis 란 (0) | 2022.06.11 |
RDBMS 와 NoSQL의 차이 (0) | 2022.06.10 |
PHP란 무엇인가 ? (0) | 2022.06.10 |