컴퓨터/네트워크

[네트워크] 이중화(HA) 및 세션 관리 | 끊기지 않고 돌아가는 프로그램을 위한 기술

버니케이 2025. 5. 2. 09:05
반응형

 

🔥 이중화(HA, High Availability)

"서버가 죽어도 서비스는 끊기지 않게 만드는 것"

 

 

우리가 서비스하는 사이트가 있는데, 서버가 하나밖에 없으면?

서버 고장나면 사이트도 그냥 🧨🧨 망가짐.

 

 

그래서 서버를 두 개 이상 띄워놓고:

하나가 죽으면 다른 서버가 바로 대신 일하는 구조를 만들어 놓는 것.

고객은 아무것도 모르게 계속 서비스를 쓸 수 있어야 한다. 

 

 

 

 

🛠️ 기술적으로는 이렇게

로드밸런서 (트래픽 분배기) 앞에 두고

서버(A) 서버(B) 서버(C) 여러 대를 동시에 돌림.

A 서버가 죽으면 → B C가 대신 응답함.

그리고 세션이나 데이터도 서버끼리 공유하거나 복제해서,

끊기지 않고 이어지게 만들어야 한다. 

 

 

 

🌟 이중화 안 하면

서버 한 대가 죽으면

로그인했던 사람튕김

결제 중이던 사람결제 실패

페이지 보던 사람에러 페이지

, 비즈니스에 치명타

 

 

 

이중화를 위해 필요한 기술들 

 

세션 클러스터링:

사용자의 로그인 정보나 상태를 서버끼리 공유해야 한다. 

 

토큰 세션 관리:

세션 대신 JWT 같은 토큰을 써서 서버가 따로 상태를 기억 안 하게 만드는 방법도 있다.

 

JDBC 세션:

DB에 세션 정보를 저장하는 방식. 서버끼리 DB를 바라보니까 자연스럽게 세션 공유됨.

반응형