그림으로 공부하는 IT 인프라 구조
작가정보
저자(글) 야마자키 야스시
저자 야마자키 야스시(山崎 泰史)_1장, 3장, 8장 집필
인프라 컨설턴트. 요코하마에서 태어났고 미국 텍사스에서 자랐다. 오라클 데이터베이스를 오른손에, 잔재주를 왼손에 들고서 IT 인프라 속에 사는 도깨비들과 매일같이 싸우고 있다. IT 관련 일에 종사하는 분들이 조금이라도 일찍 퇴근할 수 있도록 노력하고 있다.
저자(글) 미나와 요시코
저자 미나와 요시코(三? 慶子)_2장, 5장 일부, 7장 집필
도쿄 출생의 문과생. 이토추 테크노솔루션즈㈜에 신입사원으로 입사한 후 현재는 일본 오라클에서 근무 중이다. 서버의 중저음을 자장가처럼 생각하면서 일상을 보내고 있다. IT 시스템에 대한 사랑을 관철하면서 인프라 ? 데이터베이스 ? 업무 애플리케이션으로 담당 업무를 바꾸는 중이다. 현장에서 평생 일하는 것을 목표로 열심히 일하고 있다.
저자(글) 아제카츠 요헤이
저자 아제카츠 요헤이(畔勝 洋平)_4장, 5장 일부, 8장 일부 집필
오사카 출생으로 나라, 와카야마에서 자랐다. 대학 졸업 후에는 오사카의 한 벤처에서 웹 디자이너로 일했다. 그 후 프리랜서 엔지니어로 경험을 쌓았고, 주식회사 와곤에서 DBA로 일했다. 《그림으로 공부하는 OS/저장소/네트워크》 집필로 인한 인연으로 일본 오라클로 전직했다. 사물을 분해하고 재조립해서 그 뒤에 숨겨져 있는 보편적인 원리 탐구를 즐긴다.
저자(글) 사토 타카히코
저자 사토 타카히코(佐藤 貴彦)_4장 일부, 5장 일부, 6장 집필
컨설턴트라기보다는 만물상에 가깝다. 나라 첨단과학기술 대학원대학에서 네트워크를 전공했고, 인프라가 가진 재미에 눈을 뜨고 있다. 졸업 후에는 일본 오라클에 입사해서 데이터베이스를 중심으로 한 인프라부터 애플리케이션까지 폭넓게 다루고 있다. 몸 쓰는 것을 좋아해서 요즘은 암벽타기에 열중하고 있다.
역자 김완섭은 네덜란드 ITC에서 GIS(지리정보시스템) 연계 재난재해 관리학(석사)을 전공했다. 약 9년간 한국 및 일본 대기업에서 다양한 IT 분야 업무를 담당했다. 일본에서는 시스템 엔지니어로 5년간 근무했으며, 대기업 세콤(SECOM) 계열사인 파스코에서 외무성, 국토지리정보원 등 일본 정부 기관을 대상으로 한 시스템 통합(SI) 업무를 담당했다. 이후 야후재팬으로 직장을 옮겨 야후맵 개발 담당 시니어 엔지니어로 근무하다 2010년 귀국하여 SK에서 내비게이션 데이터 담당 매니저로 근무했다. 저서로는 《나는 도쿄 롯폰기로 출근한다》가 있으며, 역서로는 《그림으로 공부하는 시스템 성능 구조》, 《빅 데이터 시대의 하둡 완벽 입문》, 《웹 서비스 개발 철저 공략》, 《코딩을 지탱하는 기술》, 《따라하며 배우는 서버 부하분산 입문》, 《SQL 더 쉽게 더 깊게》, 《성공으로 이끄는 팀 개발 실천 기술》, 《부트스트랩 사이트 디자인》, 《퍼펙트 루비》 등이 있다.
감수 오다 케이지
감수자 오다 케이지(小田 圭二)는 일본 오라클 소속. 최근에는 컨설턴트 양성에 힘쓰고 있으며, 《그림으로 공부하는 오라클 구조》(제이펍), 《나만 알고 싶은 오라클 실무 테크닉》(제이펍)을 포함하여 10여 종의 책을 집필하거나 감수를 맡았다.
목차
- Chapter 1 인프라 아키텍처를 살펴보자 1
1.1 | 시작하며 2
Column 궁극의 아키텍처와 최적의 아키텍처 3
1.2 | 집약형과 분할형 아키텍처 4
1.3 | 수직 분할형 아키텍처 10
Column 웹은 클라이언트-서버형을 대체할 수 있을까? 14
1.4 | 수평 분할형 아키텍처 14
Column 가상화 진행 상황 18
1.5 | 지리 분할형 아키텍처 19
Column 기술은 대물림되고 있다 23
Chapter 2 서버를 열어 보자 25
2.1 | 물리 서버 26
2.2 | CPU 31
2.3 | 메모리 33
2.4 | I/O 장치 36
Column 코드네임의 정체 36
Column 조립 PC 추천 43
2.5 | 버스 43
Column 불사조 InfiniBand 48
2.6 | 정리 49
Chapter 3 3계층형 시스템을 살펴보자 51
3.1 | 3계층형 시스템의 구성도 52
3.2 | 주요 개념 설명 53
Column 막대 인간의 모험 57
Column 커널은 결코 견고하지 않다 62
3.3 | 웹 데이터 흐름 63
Column 데이터와 함께 전달되는 당신을 향한 마음 71
Column RDBMS와 KVS의 소리 없는 전쟁 75
Column 높은 하늘을 날다 ― 조감도 78
Chapter 4 인프라를 지탱하는 기본 이론 79
4.1 | 웹 데이터 흐름 80
Column 병렬과 병행 86
4.2 | 동기/비동기 86
Column C10K 문제 93
4.3 | 큐 94
4.4 | 배타적 제어 101
Column 멀티 프로세서 시스템에서는 배타적 제어가 어렵다 106
4.5 | 상태 저장/상태 비저장 107
4.6 | 가변 길이/고정 길이 113
4.7 | 데이터 구조(배열과 연결 리스트) 119
4.8 | 탐색 알고리즘(해시/트리 등) 124
Chapter 5 인프라를 지탱하는 응용 이론 133
5.1 | 캐시 134
5.2 | 끼어들기 139
5.3 | 폴링 144
5.4 | 핑퐁 149
5.5 | 저널링 156
Column 변화는 항상 순식간에 일어난다 162
5.6 | 복제 163
5.7 | 마스터-슬레이브 168
5.8 | 압축 172
5.9 | 오류 체크/오류 수정 178
Chapter 6 시스템을 연결하는 네트워크 구조 185
6.1 | 네트워크 186
6.2 | 【기초】 계층 구조란? 187
6.3 | 【기초】 프로토콜이란? 191
Column 표준화 단체에 대해서 194
6.4 | TCP/IP를 이용하고 있는 현재의 네트워크 196
6.5 | 【레이어 7】 애플리케이션 계층의 프로토콜 HTTP 199
Column 한 번 잡으면 놓아주지 않는다 204
6.6 | 【레이어 4】 전송 계층 프로토콜 TCP 205
Column 인터넷의 주인은 누구? 207
6.7 | 【레이어 3】 네트워크 계층의 프로토콜 IP 216
Column IP 주소 고갈과 IPv6 221
Column IP 헤더에서 체크섬이 사라진 날 224
6.8 | 【레이어 2】 데이터 링크 계층의 프로토콜 이더넷 224
6.9 | TCP/IP를 이용한 통신 이후 231
Column NIC의 끼어들기와 패킷 처리 235
Chapter 7 무정지를 위한 인프라 구조 237
7.1 | 안정성 및 이중화 238
Column 장애 보호 240
7.2 | 서버 내 이중화 241
7.3 | 저장소 이중화 248
7.4 | 웹 서버 이중화 256
Column 장애 괴담 첫 번째 이야기, ‘벌써 시간이 다 됐어?’ 256
Column DSR(Direct Server Return) 264
7.5 | AP 서버 이중화 265
7.6 | DB 서버 이중화 270
Column 장애 괴담 두 번째 이야기, ‘진단 때문에 죽었다’ 279
7.7 | 네트워크 장비 이중화 279
Column 장애 괴담 세 번째 이야기, ‘브로드캐스트 스톰’ 289
7.8 | 사이트 이중화 290
7.9 | 감시 293
7.10 | 백업 301
7.11 | 정리 305
Chapter 8 성능 향상을 위한 인프라 구조 307
8.1 | 응답과 처리량 308
Column 가장 중요한 응답 시간은? 311
8.2 | 병목 현상이란? 315
Column CAP 정리를 익혀서 초능력자가 되자 317
Column 병목 현상의 숙명의 적, 데이터베이스 321
8.3 | 3계층형 시스템 그림을 통해 본 병목 현상 321
Column 여유가 있는 노련한 시스템 324
Column C는 자바보다 빠르다? 333
Column 아이들을 공원에서 놀게 하자 341
Column ORDER(N) ? 일인분 나왔습니다 344
Column 대역이 가장 중요한 것일까? 347
8.4 | 정리 354
찾아보기 .... 355
책 속으로
3계층 시스템에서는 사용자가 웹 브라우저를 통해 시스템에 접속한다. 예를 들어, 인터넷 검색 시스템에서는 사용자가 웹 브라우저에 입력하는 화면은 프레젠테이션 계층의 웹 서버에 먼저 전달된다. 웹 서버는 그 요청을 뒤에 있는 애플리케이션 계층의 애플리케이션 서버(AP 서버)에 전달한다. AP 서버는 검색 키워드를 바탕으로 무엇을 검색해야 할지 판단해서 뒤에 있는 데이터 계층의 데이터베이스(DB 서버)에 데이터를 요청한다. 이 처리 흐름은 3장에서 자세히 소개할 것이다. _13
프로세스 및 스레드가 활동하려면 메모리 공간이 필요하다. 이것은 커널(뒤에서 설명)에 의해 메모리 상에 확보된다. 이 메모리 공간은 막대 인간이 자신을 위해 소유하는 공간으로, 개인 공간이라 할 수 있다. 다양한 처리를 하면서 데이터를 주고받기 위해 이 공간을 사용한다. 그림 3.3에 있는 것처럼 프로세스 시작 시에 이 공간이 확보된다. _55p
여러 CPU로 병렬 처리를 하는 경우는 공유 데이터를 보호하기 위해 배타적 제어를 하지만, 필요 이상으로 배타적 제어를 사용하면 CPU가 여러 개 있더라도 하나밖에 사용할 수 없게 된다. 따라서 정말로 필요한 곳에만 배타적 제어를 하고 병렬 처리가 가능한 부분을 늘리면 CPU를 유용하게 활용해서 처리 속도를 높일 수 있다. _105p
저장소 제조사별로 조금씩 구조가 다르지만, 기본 개념은 그림과 같다. 블록 단위로 증감 데이터만 복제 위치에 반영해서 데이터 전송량을 줄인다. 복제 전송량은 실제 갱신 데이터 양에 비례한다. 또한, 데이터 보호를 최우선으로 할 때는 쓰기 처리 시 데이터가 복제되기까지 기다리는 모드가 있다. 4장의 4.2절 ‘동기/비동기’에서도 설명했지만, 기다리는 것이 동기, 기다리지 않는 것이 비동기다. _165p
OS에서는 커널 내에서 프레임을 처리하고 있지만, L2 스위치에서는 어떻게 처리할까? L2 스위치도 컴퓨터이기 때문에 내부에는 스위치용 OS가 동작하고 있다. 그러면 이 OS가 프레임을 처리하는 걸까? 사실은 좀 다르다. 이런 네트워크 스위치는 일반 서버와 달리 프레임이나 패킷 처리에 특화된 ASIC라 하는 회로를 가지고 있어서 하드웨어 처리만으로 빠르게 프레임이나 패킷을 전송할 수 있다. _232p
백업은 압축 기능이 유효한 처리다. 왜냐하면 백업은 데이터 갱신이 발생하지 않고, 평상 시에는 사용하지 않는 데이터로 가능한 작은 크기로 저장해 두고 싶은 데이터이기 때문이다. 압축은 압축 때는 물론 해제 시에도 CPU 사용률이 늘어나고 실행 시간도 길어지는 경향이 있다. 하지만 RTO 시간 내에 처리가 끝난다면 꼭 압축을 사용하도록 하자. _303p
출판사 서평
IT 인프라 전반에 대한 상식을 그림으로 이해하자!
이 책은 시스템이 동작하기 위한 토대인 ‘IT 인프라’ 구조에 관해 설명하고 있다. 최근 들어 시스템의 고도화, 복잡화가 이루어짐에 따라 인프라 전체 구조를 파악하기 어려워지고 있다. 이런 상황에서 엔지니어는 자신이 담당하는 업무 외의 영역에 대해서 본질적인 구조를 이해할 기회가 거의 없다. 하지만 고성능, 안정성을 추구하는 시스템을 만들고자 한다면 전체를 파악한 후에 담당 영역을 최적화해야 한다.
이 책의 저자들은 현장에서 인프라 구축을 담당했던 컨설턴트들이다. 다양한 환경에서 체득한 인프라 기술의 핵심을 포함해서 어떤 식으로 이 책을 집필해야 독자들이 이해하기 쉬울지에 주안점을 뒀다. 이 책의 내용을 이해해 두면 몰랐던 영역이나 새로운 기술을 접하더라도 그 원리를 쉽게 이해할 수 있을 것이다. 또, 시스템 전체 구성을 파악하기 쉬워져서 업무 능력 향상에도 도움이 될 것이다.
인프라 엔지니어를 포함해 애플리케이션 개발자, DB 관리자에게 적극 추천한다.
기본정보
ISBN | 9791185890265 | ||
---|---|---|---|
발행(출시)일자 | 2015년 07월 20일 | ||
쪽수 | 360쪽 | ||
크기 |
170 * 225
* 19
mm
/ 645 g
|
||
총권수 | 1권 | ||
원서(번역서)명/저자명 | 繪で見てわかるITインフラの仕組み/山崎 泰史 |
Klover 리뷰 (22)
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
판매가 5,000원 미만 상품의 경우 리워드 지급 대상에서 제외됩니다. (2024년 9월 30일부터 적용)
구매 후 리뷰 작성 시, e교환권 100원 적립
-
반품/교환방법
* 오픈마켓, 해외배송 주문, 기프트 주문시 [1:1 상담>반품/교환/환불] 또는 고객센터 (1544-1900) -
반품/교환가능 기간
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내 -
반품/교환비용
-
반품/교환 불가 사유
(단지 확인을 위한 포장 훼손은 제외)
2) 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
예) 화장품, 식품, 가전제품(악세서리 포함) 등
3) 복제가 가능한 상품 등의 포장을 훼손한 경우
예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
4) 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
5) 디지털 컨텐츠인 ebook, 오디오북 등을 1회이상 ‘다운로드’를 받았거나 '바로보기'로 열람한 경우
6) 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
7) 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
8) 세트상품 일부만 반품 불가 (필요시 세트상품 반품 후 낱권 재구매)
9) 기타 반품 불가 품목 - 잡지, 테이프, 대학입시자료, 사진집, 방통대 교재, 교과서, 만화, 미디어전품목, 악보집, 정부간행물, 지도, 각종 수험서, 적성검사자료, 성경, 사전, 법령집, 지류, 필기구류, 시즌상품, 개봉한 상품 등 -
상품 품절
-
소비자 피해보상 환불 지연에 따른 배상
2) 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함
상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)