서버1에 1, 2, 3
서버2에 4, 5, 6을 가지고 있고.
서버1의 로드한계를 1000,
서버2의 로드한계를 10000으로 설정,
룸 1, 2, 3에 100명의 인원을 고르게 분산하여 할당,
룸 하나당 5000~6000사이의 패킷송수신량이 발생함
즉, 서버1은 패킷송수신량이 조금이라도 있다면 룸을 서버2에 넘겨주고
서버2에서는 자신이 소유한 룸의 갯수가 2개이상이 됀다면 서버1에게 룸을 전달함.
(예외처리가 좀더 필요한 상태.)
과정 1) 더미클라이언트 100대를 서버 1에 룸1:33, 룸2:34 룸3:33 으로 분산함.
과정 2) 서버1에서 로드가 발생하여 패킷송수신량이 가장 많은 룸2를 서버2에 할당함
과정 3) 서버1에서 로드가 발생하여 패킷송수신량이 가장 많은 룸1을 서버2에 할당함.
과정 4, 5) 서버 1에서 로드가 발생하여 패킷송수신량이 가장 많은 룸3을 서버2에 할당함,
서버2에서 로드가 발생하여 패킷송수신량이 가장 많은 룸2를 서버1에 할당함.
최종 : 서버1 : 2 서버2 : 1,3 을 소유하게 됌.
'서버프로그래밍' 카테고리의 다른 글
WINDOW SOCKET APPLICATION 함수에 대해서. (0) | 2019.04.06 |
---|---|
python Socket 통신 (0) | 2019.04.03 |
졸업작품 - 분산 서버를 위한 서버간 터미널 통신 영상 (0) | 2018.12.17 |
객체 초기화에 memset을 이용한 방법의 위험성.. (0) | 2018.11.03 |
c++ thread 를 사용하기 위한 방법들 나와있는 페이지 (0) | 2018.11.02 |