나만의 작은 도서관
[TIL] 240709 캠프 86일차: 데디케이트 서버(dedicated Server), 위치 동기화는 완벽할 수 없다, 서버 주도 방식에서 서버의 FPS보다 클라이언트의 FPS가 낮은 경우 본문
Today I Learn
[TIL] 240709 캠프 86일차: 데디케이트 서버(dedicated Server), 위치 동기화는 완벽할 수 없다, 서버 주도 방식에서 서버의 FPS보다 클라이언트의 FPS가 낮은 경우
pledge24 2024. 7. 9. 22:22오늘 배운 내용
데디케이트 서버(dedicated Server)
데디케이트 서버(전용 서버)는 한 고객이나 애플리케이션에 전적으로 할당된 물리적인 서버를 의미합니다. 이는 공유 호스팅과는 다르게 한 서버의 모든 자원을 특정 사용자나 특정 목적을 위해 독점적으로 사용하는 방식입니다. 데디케이트 서버는 성능, 안정성, 보안성 측면에서 많은 이점을 제공합니다.
주요 특징
- 독점적 자원 사용: CPU, 메모리, 디스크 등 모든 서버 자원이 특정 사용자에게만 할당됩니다.
- 고성능: 다른 사용자의 활동에 의해 영향을 받지 않기 때문에 안정적이고 높은 성능을 유지할 수 있습니다.
- 고급 보안: 데이터와 애플리케이션이 다른 사용자와 공유되지 않기 때문에 보안이 강화됩니다.
- 완전한 제어: 서버의 소프트웨어 구성, 하드웨어 업그레이드 등을 자유롭게 관리할 수 있습니다.
- 유연한 커스터마이징: 사용자가 필요에 따라 서버를 커스터마이즈할 수 있습니다.
사용 사례
- 대규모 웹사이트 및 애플리케이션: 많은 트래픽과 데이터 처리량을 필요로 하는 서비스
- 게임 서버: 높은 성능과 안정성을 필요로 하는 온라인 게임
- 데이터베이스 서버: 중요한 데이터베이스를 운영하는 경우
- 안전이 중요한 서비스: 금융, 의료 등 민감한 데이터를 다루는 서비스
장점
- 높은 성능 및 안정성
- 향상된 보안
- 완전한 사용자 제어
- 커스터마이징 가능
단점
- 비용: 공유 호스팅보다 비용이 많이 듭니다.
- 관리 부담: 서버 관리와 유지보수는 사용자 책임입니다.
위치 동기화는 완벽할 수 없다.
오늘 TCP 게임 서버 과제에 대한 강의를 듣다가 "위치 동기화는 완벽할 수 없다"는 이야기를 듣게 되었다. 내가 생각하기로는 모든 클라이언트가 각 유저들의 위치를 레이턴시와 상관없이 같은 시간에 같은 위치를 가져야한다고 생각했는데 사실은 같은 위치를 가지려고 노력할 뿐, 레이턴시가 있는 한 항상 일치하는 위치를 가진다고 보장할 수 없다는 하셨다. 결국 레이턴시의 차이를 최대한 가리려고 할 뿐이고(레이턴시 마스킹), 근본적인 문제 자체를 없앨 수는 없다.
서버 주도 방식에서 서버의 FPS보다 클라이언트의 FPS가 낮은 경우
서버 주도 방식에서 서버의 FPS보다 클라이언트의 FPS가 낮게되면, 아무리 서버가 서버 FPS에 맞추어 패킷을 보내도 클라이언트는 받은 패킷을 모두 처리할 능력이 없다. 이런 경우, 클라이언트는 설정한 FPS 주기에 맞체 패킷을 받고 주기 사이에 오는 패킷들은 drop시켜버린다. 그리고 그 사이를 메꾸기 위해 보간을 하게된다.
오늘 한 일
더보기
- Node.js TCP 게임 서버 개인 과제 해설 영상 -완-
'Today I Learn' 카테고리의 다른 글
[TIL] 240711 캠프 88일차: Lockstep, 게임서버 멀티플레이어 동기화 방식 종류 (0) | 2024.07.11 |
---|---|
[TIL] 240710 캠프 87일차: 메모리, 상태 동기화 (0) | 2024.07.10 |
[TIL] 240708 캠프 85일차: net모듈 server.listen([port[, host[, backlog]]][, callback]) host 기본값, CPU란? (0) | 2024.07.08 |
[TIL] 240705 캠프 82일차: setInterval의 time은 동적할당, uuid의 중복 가능성, 추측 항법 (0) | 2024.07.05 |
[TIL] 240704 캠프 81일차: TCP과제 패킷 구조 파악 (0) | 2024.07.04 |