로드 밸런서 사용 시의 이슈 중 세션 관리 문제 로드 밸런서에 의해 이전 요청과 현 요청에 분배되는 서버가 다를 경우 세션 관리 일관성에 문제가 발생한다. 로드 밸런서 세션 관리 문제의 예시 1) 먼저 로그인 요청을 A서버로 보낸다. A서버의 세션에는 martin이라는 값이 저장되고 A서버에서는 로그인 성공이라는 응답을 보낸다. 2...
1) 로드 밸런싱(Load Balancing) 부하 분산을 위해 가상 IP를 통해 각 서버에 Request를 분배하는 기능 LoadBalancer 2) Scale Up, Scale Out 서버의 부하를 체크하여 서버를 늘리거나 성능을 향상 시키는 방식 스케일 업(Scale Up): 서버에 CPU나 RAM 등을 추가하여 서버의 하드...
MSA 환경에서 고민해야되는 포인트는 도메인별로 분산된 DB를 가질때의 트랜잭션 관리다. 단일 DB에서 제공하는 트랜잭션을 활용할 수 없다보니 전체적인 데이터 일관성과 무결성을 보장하기 위한 고민이 필요하다. 이를 해결하기 위한 대표적인 방식인 2PC 프로토콜(2Phase Commit)과 Saga Pattern에 대해 알아보자. 2PC(2Phas...
[Docker] Docker
[Backend] Refactoring(리팩토링)