컴퓨터/네트워크
[네트워크] 이중화(HA) 및 세션 관리 | 끊기지 않고 돌아가는 프로그램을 위한 기술
버니케이
2025. 5. 2. 09:05
반응형
🔥 이중화(HA, High Availability)
"서버가 죽어도 서비스는 끊기지 않게 만드는 것"
우리가 서비스하는 사이트가 있는데, 서버가 하나밖에 없으면?
서버 고장나면 사이트도 그냥 🧨펑🧨 망가짐.
그래서 서버를 두 개 이상 띄워놓고:
하나가 죽으면 다른 서버가 바로 대신 일하는 구조를 만들어 놓는 것.
고객은 아무것도 모르게 계속 서비스를 쓸 수 있어야 한다.
🛠️ 기술적으로는 이렇게
로드밸런서 (트래픽 분배기) 앞에 두고
서버(A) 서버(B) 서버(C) 여러 대를 동시에 돌림.
A 서버가 죽으면 → B나 C가 대신 응답함.
그리고 세션이나 데이터도 서버끼리 공유하거나 복제해서,
끊기지 않고 이어지게 만들어야 한다.
🌟 이중화 안 하면
서버 한 대가 죽으면
로그인했던 사람 → 튕김
결제 중이던 사람 → 결제 실패
페이지 보던 사람 → 에러 페이지
즉, 비즈니스에 치명타
이중화를 위해 필요한 기술들
세션 클러스터링:
사용자의 로그인 정보나 상태를 서버끼리 공유해야 한다.
토큰 세션 관리:
세션 대신 JWT 같은 토큰을 써서 서버가 따로 상태를 기억 안 하게 만드는 방법도 있다.
JDBC 세션:
DB에 세션 정보를 저장하는 방식. 서버끼리 DB를 바라보니까 자연스럽게 세션 공유됨.
반응형