웹 개발자를 위한 대규모 서비스를 지탱하는 기술

이토 나오야 다나카 신지 공저 | 제이펍 | 2022년 03월 23일 | PDF

이용가능환경 : Windows/Android/iOS 구매 후, PC, 스마트폰, 태블릿PC에서 파일 용량 제한없이 다운로드 및 열람이 가능합니다.

구매

종이책 정가 25,000원

전자책 정가 17,500원

판매가 17,500원

도서소개

이 책은 대규모 서비스를 개발, 운용하는 기술자를 위한 입문서다. 하테나가 학생을 대상으로 개최하는 인턴십에서 수행하는 실제 기술 강의를 기반으로 구성되어 있다. 계속해서 성장하고 있는 웹 서비스를 간단히 처리할 수 없는 규모의 데이터에 직면했을 때 어떻게 처리할까? 자신이 작성한 코드가 시스템을 다운시키지 않게 하려면 어떤 점에 주의해야 할까? 확장성을 고려한 시스템을 설계하려면 무엇을 확보해 두어야 할까? 이러한 쟁점들을 해결할 수 있는 다양한 실전 기술들을 다루고 있다.

내용은 OS 및 컴퓨터의 동작원리, DB 분산방법, 실전적인 알고리즘을 시스템에 적용하는 방법, 대규모 데이터를 요리하는 검색엔진의 원리와 구조, 시스템 전체를 조망하기 위한 인프라 설계지식 등을 다양한 샘플 코드와 함께 자세하게 소개하고 있다. 이와 같은 기본 지식 외에도 하테나의 서비스 개발 현장에서 엔지니어 간 의사소통 방법과 활용도구에 대한 사용 이유, 목표도 소개하고 있어서 개발뿐 아니라 팀 운영 면에서도 도움이 될 만한 정보들이 가득 차 있다. 또한 향후 서비스 전체를 클라우드로의 이전 여부를 선택할 경우에 있을 수 있는 문제나 자체 서버를 사용하려는 입장에서의 고려사항 및 전망, 글로벌화를 위해 넘어야 할 장벽에 대한 설명도 중대규모 서비스를 운영하는 이들에게 도움이 될 것이다.

저자소개

저자 : 이토 나오야 Naoya Ito
㈜하테나의 최고기술책임자이다. 공저로는 『(24시간/365일)서버/인프라를 지탱하는 기술』(제이펍), 『Blog Hacks』(오라일리 재팬) 등이 있다. 일본 정보처리학회 주최 「소프트웨어 재팬 2009」에서 소프트웨어 재팬 어워드, 「라쿠텐 테크놀로지 컨퍼런스 2008」에서 테크놀로지 어워드 은상 등을 수상하기도 하였다.

저자 : 다나카 신지 Shinji Tanaka
현재 ㈜하테나의 서비스를 지탱하는 600대 이상의 서버, 시스템 성능 및 인프라 등을 총괄하고 있다. 정보학 박사이기도 하다. 공저로는 『(24시간/365일)서버/인프라를 지탱하는 기술』(제이펍)이 있으며, 기타 다수의 번역서들이 있다.

역자 : 진명조
㈜오늘과내일 연구소의 책임연구원이다. 옮긴 책으로는 『클라우드의 충격』(제이펍), 『서버/인프라를 지탱하는 기술』(제이펍), 『DEBUG HACKS』(와우북스), 『입문자를 위한 루비』(아이티씨), 『Binary Hacks』(아이티씨), 『C언어로 배우는 알고리즘 입문』(한빛미디어) 등이 있다. IT 산업의 미시적인 영역과 거시적인 영역을 아우르는 통찰력을 갖게 되기를 꿈꾸고 있고, 최근 모바일 생태계를 향해 작은 보폭으로 한걸음씩 내딛고 있다.

목차소개

제1장 대규모 웹 서비스 개발 오리엔테이션 -전체 그림 파악하기

강의 0 이 책의 근본 - 이 책에서 설명하는 것과 설명하지 않는 것
강의 1 대규모 서비스와 소규모 서비스
강의 2 계속 성장하는 서비스와 대규모화의 벽
강의 3 서비스 개발의 현장

제2장 대규모 데이터 처리 입문 - 메모리와 디스크, 웹 애플리케이션과 부하

강의 4 하테나 북마크의 데이터 규모 - 데이터가 많을수록 처리에 시간이 걸린다
강의 5 대규모 데이터 처리의 어려운 점 ㆍ 메모리와 디스크
강의 6 규모조정의 요소
강의 7 대규모 데이터를 다루기 위한 기초지식

제3장 OS 캐시와 분산 - 대규모 데이터를 효율적으로 처리하는 원리

강의 8 OS의 캐시 구조
강의 9 I/O 부하를 줄이는 방법
강의 10 국소성을 살리는 분산

제4장 DB 스케일아웃 전략 - 분산을 고려한 MySQL 운용

강의 11 인덱스를 올바르게 운용하기 ㆍ 분산을 고려한 MySQL 운용의 대전제
강의 12 MySQL의 분산 ㆍ 확장을 전제로 한 시스템 설계
강의 13 MySQL의 스케일아웃과 파티셔닝

제5장 대규모 데이터 처리 실전 입문 - 애플리케이션 개발의 급소

강의 14 용도특화형 인덱싱 ㆍ 대규모 데이터를 능수능란하게 다루기
강의 15 이론과 실전 양쪽과의 싸움

제6장 [과제] 압축 프로그래밍 - 데이터 크기, I/O 고속화와의 관계 인식하기

강의 16 [과제] 정수 데이터를 컴팩트하게 가져가기
강의 17 VB Code와 속도감각
강의 18 과제에 대한 상세설명과 응답 사례

제7장 알고리즘 실용화 - 가까운 예로 보는 이론ㆍ연구의 실전 투입

강의 19 알고리즘과 평가
강의 20 하테나 다이어리의 키워드 링크
강의 21 하테나 북마크의 기사 분류

제8장 [과제] 하테나 키워드링크 구현 - 응용으로 가는 길 깨닫기

강의 22 [과제] 하테나 키워드 링크 만들기
강의 23 응답 사례와 사고방식

제9장 전문 검색기술 도전 - 대규모 데이터 처리의 노하우

강의 24 전문 검색기술의 응용범위
강의 25 검색 시스템의 아키텍처
강의 26 검색엔진의 내부구조

제10장 [과제] 전문 검색엔진 작성 - 기초, 상세부분 작성, 속도와 정확성 추구

강의 27 [과제] 하테나 북마크 전문 검색 만들기
강의 28 응답 사례와 사고방식

제11장 대규모 데이터 처리를 지탱하는 서버/인프라 입문 - 웹 서비스의 백엔드

강의 29 엔터프라이즈 vs. 웹 서비스
강의 30 클라우드 vs. 자체구축 인프라

제12장 확장성 확보에 필요한 사고방식 - 규모 증대와 시스템 확장

강의 31 계층과 확장성
강의 32 부하 파악, 튜닝

제13장 다중성 확보, 시스템 안정화 - 100%에 근접한 가동률을 실현하는 원리

강의 33 다중성 확보
강의 34 시스템 안정화
강의 35 시스템 안정화 대책

제14장 효율향상전략 - 하드웨어의 리소스 사용률 높이기

강의 36 가상화 기술
강의 37 하드웨어와 효율향상 ㆍ 저비용을 실현하는 요소기술

제15장 웹 서비스와 네트워크 - 서비스의 성장

강의 38 네트워크 분기점
강의 39 한층 높은 단계로

특별편 현대 웹 서비스 구축에 필요한 실전 기술 - 대규모 서비스에 대응하기 위해서

Special 강의 1 작업큐(Job-Queue) 시스템 ㆍ TheSchwartz, Gearman
Special 강의 2 스토리지 선택 ㆍ RDBMS와 key-value 스토어
Special 강의 3 캐시 시스템 ㆍ Squid, Varnish
Special 강의 4 계산 클러스터 ㆍ Hadoop

회원리뷰 (0)

현재 회원리뷰가 없습니다.

첫 번째 리뷰를 남겨주세요!