[게임 서버] 9.2 서버 분산이 없다면?

게시:     수정

카테고리:

태그:

이 글은 아래의 책을 자세히 정리한 후, 정리한 글을 GPT에게 요약을 요청하여 작성되었습니다.
게임 서버 프로그래밍 교과서, 배현직 저자

📦 9. 분산 서버 구조

👉🏻 2. 서버 분산이 없다면?

📌 상황

분산 처리가 안된 서버에서, 동시접속자 수가 늘어나는 경우


💻 클라이언트

  • 메시지 응답이 늦게 도착한다.
  • 서버 접속 과정이 오래 걸린다.
  • 서버 연결이 돌발 해제된다.
    • TCP 재전송 타임아웃
    • 사용자 정의 킵얼라이브 메시징 타임아웃
  • 서버 접속 실패로 인한 타임아웃

🖥️ 서버

  • CPU/RAM 사용량이 증가한다.
    • 메시지 수신 속도 > 메시지 처리 속도
    • 메시지 요청 발생 속도 > 메시지 송신 속도
  • 32비트 서버: 메모리 할당 함수 malloc()에서 null을 리턴하고, 비정상 종료된다.
  • 64비트 서버:
    1. 물리적 메모리보다 더 많은 메모리 할당
    2. 대량의 메모리 스와핑 발생
    3. 실행 속도 감소 및 메모리 할당량 증가
    4. 메모리 할당 함수에서 문제 발생

🗄️ 데이터베이스

  1. DB 질의 수 < 디스크 최대 처리 속도
  2. 메모리 사용량 증가
  3. 메모리 할당 함수에서 문제 발생

🌐 네트워크 기기

  • 라우터 과부하로 패킷 유실 발생
  • TCP 재전송 타임아웃으로 TCP 연결 해제 발생
  • TCP 소켓에서 ECONNABORTED 오류 발생

GameServer 카테고리 내 다른 글 보러가기

댓글남기기