묠니르묘묘
꾸준히 성장하는 개발자스토리
묠니르묘묘
전체 방문자
오늘
어제
  • 분류 전체보기 (188)
    • 프로그래밍 (48)
      • 디자인패턴 (4)
      • 예외,에러 (4)
      • Java (29)
      • Kotlin (3)
      • React.js (4)
      • JavaScript (2)
      • Apache Kafka (2)
    • Spring (49)
      • Spring (21)
      • Spring Cloud (3)
      • JPA (25)
    • 코딩테스트 (31)
      • 알고리즘 (5)
      • Java - 백준 (26)
      • Java - 프로그래머스 (0)
    • AWS (7)
    • 데이터베이스 (6)
    • 개발 etc (23)
    • 도서 (5)
    • 회고록 (4)
    • 데브코스-데이터엔지니어링 (15)

인기 글

최근 글

hELLO · Designed By 정상우.
묠니르묘묘

꾸준히 성장하는 개발자스토리

로그인 세션 과정과 세션에 대한 문제점
개발 etc

로그인 세션 과정과 세션에 대한 문제점

2022. 3. 18. 12:06

 

 

세션 - 로그인 과정

위 사진에 로그인 과정이 나와있다. 그렇다면 여기서 문제점은 무엇일까?

클라이언트가 엄청 많을 때 동시 접속자 수도 엄청나다. 이 때 문제점이 생긴다.

만약 1개의 서버가 100명을 감당할 수 있다고 생각하자. 동시접속자 수는 300명이므로 서버를 2개 더 늘린다.

이 때 요청할 때마다 원활한 서버로 요청을 보내게 되는데 이것을 로드 밸런싱이라고 한다.

1번 서버에서 로그인 과정을 거치고, 다시 2번 서버에 요청을 보내면 또 다시 로그인 과정을 거쳐야한다.

여기에 대한 해결 방안은 무엇이 있을까?

 

1. 최초 요청에는 무조건 하나의 서버에만 요청이 가는 방법

2. 모든 서버 세션에 복사해주는 방법

3. 모든 서버들이 하나의 DB에 세션을 저장하여 사용하는 방법

 

이 모든 방법들이 복잡하고 느리다. 3번은 HDD에서 I/O 입출력이 발생하기에 더더욱 느리다.

그래서 이 3번을 개선한 방법이 있다.

메모리 공유 서버

메모리 공유 서버를 사용하는 것이다!!!

따라서 HDD에 I/O를 일으키지도 않으며, RAM을 사용하기에 상대적으로 매우 빠르다.

(속도 : CPU > RAM > HDD)

저작자표시 비영리 (새창열림)

'개발 etc' 카테고리의 다른 글

RSA 암호화 알고리즘이란?  (0) 2022.03.18
OSI 7계층 예시  (0) 2022.03.18
Nginx란?  (7) 2022.02.21
맥북 특정포트 프로세스 종료  (0) 2022.02.07
맥북 homebrew 설치  (0) 2022.02.05
    '개발 etc' 카테고리의 다른 글
    • RSA 암호화 알고리즘이란?
    • OSI 7계층 예시
    • Nginx란?
    • 맥북 특정포트 프로세스 종료
    묠니르묘묘
    묠니르묘묘

    티스토리툴바