본문내용 바로가기
무료배송 소득공제

모바게를 지탱하는 기술 모바일 게임 플랫폼

반양장
DeNA(디엔에이) 지음 | 정인식 옮김 | 제이펍 | 2013년 03월 11일 출간

이 책의 다른 상품 정보

  • 정가 : 26,000원
    판매가 : 23,400 [10%↓ 2,600원 할인]
  • 통합포인트 :
    [기본적립] 1,300원 적립 [5% 적립] [추가적립] 5만원 이상 구매 시 2천원 추가적립 안내 [회원혜택] 실버등급 이상, 3만원 이상 구매 시 2~4% 추가적립 안내
  • 추가혜택 : 포인트 안내 도서소득공제 안내 추가혜택 더보기
  • 배송비 : 무료 배송비 안내
  • 도서상태 : 절판
상품상세정보
ISBN 9788994506449(8994506446)
쪽수 338쪽
크기 170 * 225 * 30 mm /745g 판형알림
원서명/저자명 Mobageを支える技術 : ソ-シャルゲ-ムの舞台裏./DeNA

책소개

이 책이 속한 분야

대규모 웹 서비스 구축 및 운용 노하우를 배우다!

모바게는 일본의 디엔에이(DeNA)가 맏느 소셜 게임 플랫폼인 모바일 게임 플랫폼 또는 소셜 게임 플랫폼을 의미한다. 『모바게를 지탱하는 기술』은 대규모 웹 서비스 구축 및 운용 노하우의 내용을 정리하는 책이다. 소셜 게임의 구체적인 개발 및 운용 기술, 효율화와 데이터의 분석 기술 등 실제 모바일 게임 개발의 현장에서 사용되는 내용을 다루고 있다. 모바일 게임 개발자와 스마트폰 애플리케이션 개발자, 대규모 플랫폼 개발자 등에게 실질적인 노하우를 전수해준다.

목차

PART 1 소셜 게임 개발 기술
CHAPTER 01 소셜 게임 개론_2

1-1 소셜 게임이란?_2
소셜 게임이란 무엇인가?_3
소셜 게임과 온라인 게임_4
소셜 게임의 기본 사이클_5
1-2 소셜 게임 운용_5
시스템 구성_6

CHAPTER 02 브라우저 기반의 소셜 게임: 피처폰_8
2-1 피처폰이란?_8
시장 규모와 장래성_9
2-2 피처폰 전용 웹 애플리케이션 개발_10
이모티콘과 문자 인코딩_10
단말기 인증_13
통신사업자와 단말 기종의 판별_14
2-3 피처폰 전용의 HTML_16
HTML의 주의점_16
2-4 Flash Lite_17
Flash Lite의 주의점_17
동적 Flash를 생성하는 방법_19
Ming의 사용법_20
2-5 소셜 게임의 Ul 설계_26
2-6 보안 대책_27

CHAPTER 03 브라우저 기반의 소셜 게임: 스마트폰_28
3-1 스마트폰의 장점_28
시장 규모와 장래성_29
3-2 UI와 UX에 대한 궁리_31
플레이 스타일을 중시한 화면 설계의 포인트_31
3-3 높은 퍼포먼스 - 소셜 게임_34
GPU 액셀레이션을 기대한 iOS용 애니메이션_35
리퀘스트 수 줄이기_35
콘텐츠 경량화하기_38
이미지 압축_39
JavaScript 로드 테크닉_39
JavaScript 지연 로드(동적 로드)_39
3-4 애니메이션 기법_41
제작 툴_42
변환 툴(+ 런타임)_44
SWF 런타임_46
정리_48

CHAPTER 04 애플리케이션 기반의 소셜 게임 개발_49
4-1 애플리케이션 방식의 구성_49
4종류의 게임 구성_49
4-2 애플리케이션 형식의 장점과 단점_54
풍부한 그래픽 표현_54
콘텐츠 다운로드의 제어_54
개발에는 시간과 노력이 소요된다_55
릴리스에 손이 많이 간다_56
고급 게임에 익숙해진 사람은 예전 게임으로 되돌아오지 않는다_56
4-3 게임 엔진 사용하기_57
ngCore의 게임 엔진으로서의 특징_57
ngCore의 게임 개발 주기_59
ngCore로 만든 게임의 기본 구조_64
ngCore의 아키텍처_70
ngCore 이외의 게임 엔진과 Mobage_73

PART 2 소셜 게임 운용 기술
CHAPTER 05 하루 35억 페이지 뷰를 처리하는 인프라 구성_76

5-1 소셜 게임 인프라 구성_76
전체 구성_76
DB 계층에서의 액세스 방식_78
전용 구성과 공용 구성_80
5-2 웹 애플리케이션 계층에서의 연구_82
처리의 비동기화_82
재기동 시의 부하 경감_84
메모리 이용의 효율화(파일 캐시 최적화)_90
메모리 이용의 효율화(FastCGI 프로세스의 메모리 사용량 절감)_94
지속적인 성능 분석_97
정리_98

CHAPTER 06 데이터베이스의 복제_99
6-1 DB 계층에서 중요시되는 지표99
6-2 복제의 활용_101
슬레이브 참조 분산_102
복제 지연에 대한 대책_104
원격 거점과의 분산 구성104
6-3 복제 지연에 대한 대처_105
무엇을 근거로 지연하고 있다고 판단하는가?_107
복제 지연의 조사 및 대처_112
복제 지연의 원인 조사_114
6-4 복제 지연을 방지하는 모범 사례_120
애플리케이션에서의 대처_120
인프라에서의 대처_121
정리_126

CHAPTER 07 데이터베이스의 고성능화/고가용성화_127
7-1 성능 관리 및 대수 감소_127
집약화에 의한 서버 대수 감소_127
메모리 내의 과부하 트래픽 제어(MySQL을 NoSQL로 사용)_130
7-2 마스터 분할(Sharding)의 전략_133
분할 방식과 확장 용이성_134
7-3 서비스의 확대/집약과 무중단 유지보수_139
마스터의 하드웨어 업그레이드_140
마스터 이동 방법_141
7-4 마스터의 자동 페일오버_154
마스터 다운에 의한 전환의 난점_154
「MHA for MySQL」에 의한 자동 페일오버_156
정리_160

CHAPTER 08 수천 대의 서버를 운용하는 기술_161
8-1 서버 정보의 관리_161
서버 관리에 필요한 정보_161
서버 정보 관리 시스템_164
서버 정보 관리의 인터페이스_168
8-2 서버 설치_172
서버의 신규 셋업의 과제_173
mbgaclone에 의해 가능한 것_175
mbgaclone의 내부 처리_176
8-3 감시_183
하드웨어 감시_183
사이트 overview 감시_186
MySQL 상태 모니터링_188
정리_188

PART 3 소셜 게임 효율화 기술
CHAPTER 09 MySQL과의 접목 방법_190

9-1 대규모 환경에서의 데이터베이스 프로그래밍_190
대규모 데이터베이스란?_190
샤딩을 고려한 데이터베이스 커넥터_192
샤딩 환경에서의 실천적인 데이터베이스 프로그래밍_196
9-2 데이터베이스 프로그래밍의 테스트 방법_199
9-3 MySQL의 저장 프로시저/트리거/이벤트 스케줄_202
저장 프로시저/트리거/이벤트 스케줄러를 사용하는 이유_202
Partition을 작성/삭제하는 저장 프로시저와 프리페어드 스테인트먼트_203
MyTAP과 my_prove와 MySQL::Sandbox_207
이벤트 스케줄러를 이용한 Partition의 rotate_210
이벤트 스케줄러 운용에 있어서의 주의사항_212
트리거의 이용 용도_213
9-4 RESTful API의 생각과 실제_214
ROA와 Mobage API_214
어드레스 가능성과 URI_214
비상태성_217
접속성과 링크_219
JSON Schema 가능성_220
통일 인터페이스_220
정렬 및 검색을 어떻게 제공할 것인가?_223
정리_225

CHAPTER 10 Job Queue와 Message Queue_226
10-1 Job Queue/Message Queue의 개요_226
Job Queue와 Message Queue의 다른 점_226
Job Queue 및 Message Queue를 어떤 곳에서 사용하는가?_227
Job Queue/Message Queue의 다양한 라이브러리_227
10-2 Q4M을 이용한 worker의 구현_228
Queue 테이블 만들기_228
Queue의 등록_229
Queue의 추출_230
prioritized queue_234
exponential backoff_236
룰 기반 Worker_238
정리_241

CHAPTER 11 애플리케이션 튜닝_242
11-1 캐시 사용하기_242
memcached의 사용법_243
memcached에 대한 액세스 은폐하기_244
메모리 자원을 유효하게 활용하기_246
제대로 캐시가 갱신되는 것 보증하기_247
memcached 서버의 부하 줄이기_249
memcached에 저장되는 데이터 최소화하기_253
11-2 다양한 DNS의 캐시_256
MyDNS 이용_256
데이터베이스 액세스를 위한 DNS 캐시_257
HTTP 리퀘스트를 위한 DNS 캐시_261
11-3 애플리케이션 튜닝_267
People API 개요_268
단순히 요약 테이블을 만들 수 없다_268
JOIN을 사용할 수 없다_270
과거의 구현_271
고속화의 길_273
Iterator::GroupedRange 이용_274
fetchall_arrayref로 메모리 절약화_275
app_install에서의 캐시 사용_276
user_data의 참조와 totalResults의 계산_279
정리_281

CHAPTER 12 DevOps_282
12-1 로그 모니터링_282
accesslog 감시_283
application log 모니터링_285
MySQL slowlog 감시_288
의식의 개선_289
log 감시의 프레임워크_289
12-2 운용_290
릴리스 사이클_290
daemontools WebUI_292
DB 상태 표시 웹 UI_293
정리_294

PART 4 소셜 게임 분석 기술
CHAPTER 13 대규모 데이터 마이닝_296
13-1 사용자의 즐거움에 관한 법칙과 세련된 서비스_296
대규모 기계 학습·데이터 마이닝 라이브러리 Mahout_297
13-2 Clustering_298
Clustering의 종류_299
Clustering 입력 데이터 변환 구현의 예_300
k-means Clusterilng_305
SequenceFile의 분석_307
seqdumper를 이용한 확인_313
Canopy 클러스터링_314
Mahout Clustering Library를 이용한 MapReduce의 구현_316
13-3 Frequent Pattern Mining_320
13-4 Classification_324
13-5 Recommendation_329
정리_331

찾아보기_332

책 속으로

이처럼 다년간 일본에서 모바일 게임 개발과 운영을 해왔던 모바게의 게임 개발 방식과 플랫폼의 구성, 운영 기술에 대한 노하우는 향후 비슷한 대규모의 서비스를 제공하거나 개발하고자 하는 이들에게 있어 알아두면 상당한 도움이 될 거라 생각한다.
_옮긴이 머리말 중에서

플레이하고 있는 사용자에게 편안하고 안정된 게임 플레이 환경을 제공하고 유지하기 위해 최대한의 노력을 해야 한다. 아무리 재미있는 게임이라도 「제대로 진척이 안 된다」, 「때때로 응답이 없다」라면 다시는 사용자가 게임하러 오지 않을 것이다.
_34쪽

소셜 게... 더보기

출판사 서평

하루 35억 페이지 뷰의 거대 시스템은 어떻게 개발 및 운용되고 있는가?
DeNA의 모든 기술력을 이 한 권의 책에 모았다!
대규모 웹 서비스 구축 및 운용 노하우를 배우자!

이 책은 단지 소셜 게임 개발의 배후를 소개하기만 하는 것이 아니다. 대규모 웹 서비스 구축 및 운용 노하우의 방대한 내용을 이 한 권에 담아 정리하고 있다. 또한, 탁상 이론보다는 생생한 실천 테크닉을 중시하였다. 우리는 너무나도 급격하게 성장하는 서비스에 대한 자체 조사 및 검증, 독창성, 그리고 새로운 솔루션을 창출하는 활동 등을 통하여 서비스와... 더보기

Klover 리뷰 (0)

북로그 리뷰 (0) 쓰러가기

도서 구매 후 리뷰를 작성하시면
결제 90일 이내 300원, 발송 후 5일 이내 400원, 이 상품의 첫 리뷰 500원의 포인트를 드립니다.

포인트는 작성 후 다음 날 적립되며, 도서 발송 전 작성 시에는 발송 후 익일에 적립됩니다.
북로그 리뷰는 본인인증을 거친 회원만 작성 가능합니다.
(※ 외서/eBook/음반/DVD/GIFT 및 잡지 상품 제외) 안내
  • 해당도서의 리뷰가 없습니다.

문장수집 (0) 문장수집 쓰기 나의 독서기록 보기
※구매도서의 문장수집을 기록하면 통합포인트 적립 안내

교환/반품/품절안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품/품절안내
반품/교환방법 마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환신청 ,
[1:1상담>반품/교환/환불] 또는 고객센터 (1544-1900)

※ 오픈마켓, 해외배송주문, 기프트 주문시 [1:1상담>반품/교환/환불]
    또는 고객센터 (1544-1900)
반품/교환가능 기간 변심반품의 경우 수령 후 7일 이내,
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에
    해당되는 경우
(1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시 ‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①서양도서-판매정가의 12%, ②일본도서-판매정가의 7%를 적용)
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는
이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
    소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
    소비자 보호에 관한 법률에 따라 처리함

바로가기

  • 우측 확장형 배너 2
  • 우측 확장형 배너 2

최근 본 상품