일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Next
- MongoDB
- 게임 서버 아키텍처
- insomnia
- 그리디
- 더 흔한 색칠 타일 문제
- PROJECT
- localstorage
- map
- 자바스크립트
- 백준 32029번
- Prisma
- HTTP
- router
- Express.js
- ucpc 2023 예선 i번
- ucpc 2023 예선 d번
- Github
- html5
- string
- pm2
- 백준 28303번
- MySQL
- ccw 알고리즘
- 지금 자면 꿈을 꾸지만
- branch
- ucpc 2024 예선 e번
- ERD
- 백준 32028번
- JavaScript
Archives
- Today
- Total
dh_0e
[특강] 게임 서버 아키텍처 본문
서버 아키텍처 종류
일반적인 클라이언트 - 서버 아키텍처
- 게임 서버의 모든 기능이 하나의 코드베이스와 배포 단위로 구성되는 방식
- 배포를 단순하게 할 수 있고, 초기 개발 및 설정이 쉬움
- 확장성과 유지보수에 어려움이 있음
- 초기 스타트업이나 소규모 프로젝트에 적용하기에 좋음
데디케이트 서버 아키텍처
- 게임 회사에서 관리하는 전용 서버를 이용하여 게임 세션을 호스팅하는 방식
- 하나의 서버가 게임 한판 만을 전담
- 높은 대역폭과 최적화된 네트워크 환경을 제공하여 지연 시간을 최소화함
- FPS게임에서 많이 사용되는 아키텍처로 일관성을 유지할 수 있음
분산 서버 아키텍처
- 단일 서버 대신 여러 서버가 협력하여 하나의 시스템을 구성하는 방식
- 대규모 사용자 기반 처리, 시스템의 가용성과 확장성을 극대화하기에 용이함
- 대부분의 상용 게임들이 이 아키텍처를 사용중임
Stateful 서버는 분산 서버로 운영할 수 있는가?
- Stateless 서버는 비연결성 서버로 각 요청이 독립적이므로 로드 밸런서를 통해 여러 서버로 부냅하면 되므로 분산 서버 아키텍처로 가도 큰 문제가 없음
- Stateful 서버는 세션 정보와 상태를 유지해야 한다는 조건이 있기 때문에 적절한 방법을 통해 분산 서버로 녹여내야 함
세션 클러스터링 기법
- 세션 정보 자체를 서버가 직접 들고 있지 않고, 여러 서버 간에 세션 정보를 공유하는 것이 특징
- Redis, Memcached와 같은 캐시 엔진을 지원하는 메모리 저장소를 사용하여 구현
'내일배움캠프 > 특강' 카테고리의 다른 글
[특강] 멀티스레드 동기화 문제 (뮤텍스, 세마포어, CAS) (0) | 2024.07.26 |
---|---|
[특강] 프로세스, 스레드, 컨텍스트 스위치 (0) | 2024.07.12 |
[발표] CPU란? (1) | 2024.07.09 |
[특강] CI/CD (0) | 2024.07.08 |
[과제] 삼각함수, 역삼각함수 (+티스토리 수식 넣는 법) (0) | 2024.07.01 |