게임 서버 프로그래밍 교과서 - 프라우드넷 개발자가 알려주는 게임 서버 개발의 핵심 원리와 노하우
저자: 배현직
출판: 길벗
발행: 2019.04.08.
목차
1장 멀티스레딩
1.1 프로그램과 프로세스
1.2 스레드
1.3 멀티스레드 프로그래밍은 언제 해야 할까?
1.4 스레드 정체
1.5 스레드를 다룰 때 주의 사항
1.6 임계 영역과 뮤텍스
1.7 교착 상태
1.8 잠금 순서의 규칙
1.9 병렬성과 시리얼 병목
1.10 싱글스레드 게임 서버
1.11 멀티스레드 게임 서버
1.12 스레드 풀링
1.13 이벤트
1.14 세마포어
1.15 원자 조작
1.16 멀티스레드 프로그래밍의 흔한 실수들
1.17 심화 내용 및 더 읽을거리
2장 컴퓨터 네트워크
2.1 컴퓨터 네트워크를 구성하는 기기
2.2 인터넷
2.3 컴퓨터 네트워크 데이터
2.4 컴퓨터 네트워크 식별자
2.5 컴퓨터 네트워크의 품질과 특성
2.6 컴퓨터 네트워크에서 데이터 보내기와 받기
2.7 패킷 유실시 UDP와 TCP에서 현상
2.8 주로 사용하는 메시지 형식
2.9 네트워크 주소 변환
2.10 요약
2.11 더 읽을거리
3장 소켓 프로그래밍
3.1 블로킹 소켓
3.2 네트워크 연결 및 송신
3.3 블로킹과 소켓 버퍼
3.4 네트워크 연결받기 및 수신
3.5 수신 버퍼가 가득 차면 발생하는 현상
3.6 논블록 소켓
3.7 Overlapped I/O 혹은 비동기 I/O
3.8 epoll
3.9 IOCP
3.10 더 읽을거리
4장 게임 서버와 클라이언트
4.1 패키지 게임에서 게임 서버
4.2 온라인 게임에서 게임 서버
4.3 서버의 역할
4.4 게임 클라이언트와 서버의 상호 작용
4.5 게임 서버가 하는 일
4.6 게임 서버의 품질
4.7 플레이어 정보의 저장
4.8 서버 구동 환경
4.9 서버 개발 지침
4.10 더 읽을거리
5장 게임 네트워킹
5.1 UML
5.2 게임 플레이 네트워킹
5.3 레이턴시 마스킹
5.4 넓은 월드, 많은 캐릭터 처리
5.5 실시간 전략 시뮬레이션 게임에서 네트워크 동기화
5.6 실제 레이턴시 줄이기
5.7 게임 플레이 이외의 네트워킹
5.8 해킹과 보안
5.9 요약
6장 게임 네트워크 엔진 프라우드넷
6.1 게임 서버, 네트워크 엔진
6.2 개발 환경과 기본 모듈
6.3 게임 클라이언트-서버 간 통신
6.4 메시지 주고받기
6.5 와이파이 셀룰러 연결 핸드오버 기능
6.6 원격 메서드 호출
6.7 클라이언트끼리 P2P 통신
6.8 예시: 채팅 처리
6.9 스레드 모델
6.10 더 읽을거리
7장 데이터베이스 기초
7.1 플레이어의 정보 저장
7.2 데이터베이스 사용
7.3 데이터베이스의 데이터 구성
7.4 데이터베이스 시작
7.5 SQL 질의 구문
7.6 인덱스와 키
7.7 플레이어 정보를 데이터베이스에 저장하는 방법 1
7.8 플레이어 정보를 데이터베이스에 저장하는 방법 2
7.9 질의 구문 실행
7.10 게임 서버에서 질의 구문 실행
7.11 보안을 위한 주의 사항
7.12 더 읽을거리
8장 NoSQL 기초
8.1 관계형 데이터베이스와 NoSQL
8.2 관계형 데이터베이스에서 확장성
8.3 관계형 데이터베이스에서 고가용성
8.4 MongoDB를 위한 JSON 이해
8.5 MongoDB 시작
8.6 MongoDB에 데이터 액세스
8.7 성능 분석 기능
8.8 MongoDB 수평 확장
8.9 게임 서버에서 MongoDB 명령 실행
8.10 요약 및 더 알아보기
9장 분산 서버 구조
9.1 수직 확장과 수평 확장
9.2 서버 분산이 없다면?
9.3 고전적인 서버 분산 방법
9.4 논리적 단일 서버 분산
9.5 데이터 분산 vs 기능적 분산
9.6 로직 처리의 분산 방식들
9.7 데이터 응집도
9.8 기능적 분산 처리
9.9 분산 처리를 엄선해야 하는 이유
9.10 분산 처리 전략
9.11 분산 서버의 또 다른 장점
9.12 고가용성
9.13 데이터베이스의 분산
9.14 요약
10장 분산 서버 구조 사례
10.1 로그온 처리의 분산
10.2 데이터베이스의 수평 확장
10.3 매치메이킹의 분산 처리
10.4 몬스터 NPC 처리의 분산 처리
10.5 플레이어 간 상호 작용 분산 처리
10.6 로그 및 통계 분석의 분산 처리
10.7 게임 장르별 분산 서버 형태
10.8 요약 및 결론
'독서 기록' 카테고리의 다른 글
냉정과 열정사이 - Rosso / 에쿠니 가오리 (0) | 2024.04.04 |
---|---|
4차 산업혁명 시대 정보보안기사로 성공을 디자인하라 - 나는 정보보안기사로 당당하게 독립을 꿈꾼다 / 김동혁 (0) | 2024.04.03 |
리버싱 이 정도는 알아야지 - 만들고 분석하면서 배우는 악성코드 분석 / 이시우 (0) | 2024.04.01 |
읽기 좋은 코드가 좋은 코드다 - 더 나은 코드를 작성하는 간단하고 실전적인 테크닉 / 더스틴 보즈웰, 트레버 파우커 (0) | 2024.03.31 |
커리어 스킬 - 완벽한 개발자 인생 로드맵 / 존 손메즈 (0) | 2024.03.30 |