본문 바로가기

컴퓨터공학/분산시스템

분산시스템의 확장성

반응형

분산시스템에서는 확장성이 용이하여야 한다.
그러기 때문에 분산시스템을 하는 것이다.

아래는 확장성이 문제되는 (한계되는) 3가지
중앙집중식 서비스 (Centralized Service)
중앙집중식 데이터 (Centralized Data)
중앙집중식 알고리즘 (Centralized Algorithms)


비중앙 알고리즘의 특성
- 어떤 기계도 시스템 상태에 대한 완전한 정보를 가지고 있지 않다.
- 기계는 자신이 가지고 있는 로컬 정보에만 근거하여 결정을 내린다.
- 하나의 기계에 오류가 있어도 알고리즘이 손상되지 않는다.
- 글로벌클럭이 있다는 암묵적 가정이 없다.

 

확장성을 위한 스캘링 기술 (Scaling Techniques)
크기 / 거리 / 관리  이 세가지 관점에서 보아야 한다.

크기: 시스템의 노드 수, 데이터량 등
거리: 캔버스-시-국가-글로벌 단위 등
관리: 중앙집중 (관리쉬움)

 

 

 

예▲ [거리] 짧은 거리에서 클라이언트와 서버가 통신하면 문제가 없지만 먼 거리라면?
(a)비동기적 통신방식을 (b)동기적 통신방식으로 바꾸는 방법

체크폼 (Check form): 데이터가 유효한지, 정확한지를 체크한다.
(a) 체크폼이 서버에 있다보니 도착하는 순서대로 데이터 유효한지 확인하고, 유효하지 않으면 클라이언트에게 재요청하고 다시받고 한다. 그러다보니 거리에 따라서 시간영향을 미친다.
(b) 체크폼이 클라이언트측에 있으며, 클라이언트쪽에서 체크폼을 확인 후 서버에 보내므로 유효성검사가 빠르다.

 
 
 

예▲ [크기/관리] 중앙집중은 크기가 커지면 관리가 힘들기 때문에 Z1/Z2/Z3 식으로 별도의 DNS 영역을 나눈다.
국가도메인 / 일반도매인 / ...
관리적측면 중앙집중을 탈피하면 캐시를 활용하여 데이터베이스가 죽어도 서비스를 계속 사용할 수 있다.

반응형