JUST WRITE

Session Clustering 본문

Network

Session Clustering

천재보단범재 2021. 9. 2. 23:20

Session Clustering

 

성능향상, 고가용성을 위해서 Multi Server로 구성하다보면 Session 정합성 문제가 발생하게 된다.

이러한 문제를 해결하기 위해 Sticky Session, Session Clustering과 같은 기술이 고안되었다.

 

Sticky Session

sticky란 단어는 사전적으로 끈적거리는 이라는 의미를 가진다.

Sticky Session는 특정 사용자가 처음 Request를 처리한 서버에서 계속 Request를 처리하는 방식이다.특정 사용자 - 특정 서버가 끈적한 관계(?)를 가지게 되는 구조이다.Cookie를 이용하거나 IP Tracking 방식을 통해 구현된다.

출처 : https://smjeon.dev/web/sticky-session/

단점

  • Load Balancing이 잘 작동하지 않을 수 있다.
  • 한 서버로 과부하가 될 수 있다.
  • 해당 서버 fail시 Session 소실 될 수 있다.

Session Clustering

Session Clustering은 한 Session을 여러 Server에서 동일하게 관리하는 방식이다.

Session이 하나로 관리 되므로 다른 Server에서 동일하게 Request 처리가 가능하다.

하지만, Server가 늘어날 시 다시 설정, Clustering를 해야 되는 단점이 있다.

출처: https://velog.io/@tjdrnr0557/Multi-Server%EC%97%90%EC%84%9C-Session-%EA%B4%80%EB%A6%AC-%EB%B0%A9%EB%B2%95-Sticky-Session-Session-Clustering-Redis-Session-Storage

 

Session Storage

Redis에서 Session Storage 기능을 제공하여 따로 Session 관리만을 위한 서버를 구성할 수 있다.

출처 :https://velog.io/@tjdrnr0557/Multi-Server%EC%97%90%EC%84%9C-Session-%EA%B4%80%EB%A6%AC-%EB%B0%A9%EB%B2%95-Sticky-Session-Session-Clustering-Redis-Session-Storage

Scale out시 생기는 Session Clustering의 문제를 보완할 수 있다.

하지만 Redis 서버에 문제 발생 시 모든 Session이 죽을 수 있다.

해당 방식으로 구현 시 Redis 서버 failover를 고민해야 한다.

 

[참고사이트]

더보기

 

728x90
반응형

'Network' 카테고리의 다른 글

SSL  (0) 2021.09.18
HTTP vs HTTPS  (0) 2021.09.17
Load Balancing  (0) 2021.08.31
CSR vs SSR  (0) 2021.08.21
Web의 역사(1)  (0) 2021.08.20
Comments