unreal 8기

1일차

왕건 2026. 2. 3. 10:54

1. 클라이언트

  • 사용자가 직접 사용하는 프로그램
  • 입력을 받고, 화면과 소리를 출력하는 역할

예시

  • 웹: 크롬, 사파리 같은 브라우저
  • 게임: 내가 실행한 게임 프로그램(.exe, 앱)

게임 클라이언트 역할

  • 키보드, 마우스, 터치 입력 받기
  • 입력 정보를 서버에 전달
  • 서버 응답을 화면에 표시 (캐릭터 이동, 이펙트, 사운드 등)

대표적인 클라이언트 엔진

  • Unity
    • 진입 장벽 낮음
    • 모바일, 인디 게임에 많이 사용
  • Unreal
    • 고퀄리티 그래픽
    • 대형 게임, 콘솔 게임에 많이 사용

2. 서버

  • 사용자가 직접 보지는 않지만, 서비스의 핵심
  • 데이터 관리와 최종 판단 담당

웹 서버

  • 웹 페이지, 이미지, 데이터 제공
  • HTTP / HTTPS 기반 요청-응답

게임 서버

  • 실시간 처리 중요
  • 여러 유저 상태를 동시에 관리
  • 판정 담당
    • 공격 성공 여부
    • 아이템 획득
    • 캐릭터 상태

3. 프로토콜(통신 규칙)

  • 서버와 클라이언트가 통신할 때 지키는 약속

종류

  • HTTP / HTTPS
    • 웹에서 주로 사용
  • TCP
    • 안정성 중요할 때
  • UDP
    • 실시간성 중요할 때 (게임에서 자주 사용)
  • WebSocket
    • 실시간 웹 통신

4. 서버-클라이언트 관계

기본 흐름

  • 클라이언트  > 서버: 요청
  • 서버 > 클라이언트: 처리 결과 응답

5. 클라이언트-서버 구조

장점

  • 서버가 모든 로직을 관리 > 보안, 공정성 좋음
  • 멀티플레이 구현에 적합

단점

  • 서버 장애 시 서비스 전체 영향
  • 운영 비용 발생

6. 서버 구조

단일 서버

  • 서버 1대가 모든 역할 담당
  • 구조는 단순
  • 사용자 많아지면 성능의 한계가 옴

분산 서버

  • 역할별로 서버 분리 (로그인, 채팅, 전투 등)
  • 대규모 서비스에 적합
  • 관리 복잡도가 증가함

7. 서버 확장 방식

수직 확장

  • 서버 1대 성능 강화
  • CPU, 메모리 업그레이드 등등

수평 확장

  • 서버 여러 대로 분산
  • 대규모 서비스에서 주로 사용

나의 생각

서버와 클라이언트의 기본 개념이 훨씬 명확해졌다.

'unreal 8기' 카테고리의 다른 글

4일차  (0) 2026.02.06
3일차  (0) 2026.02.05
2일차 퀘스트  (0) 2026.02.04
2일차  (0) 2026.02.04
1일차 퀘스트  (0) 2026.02.03