小田 圭二 監修
山崎 泰史 著
三縄 慶子 著
畔勝 洋平 著
佐藤 貴彦 著
本書は大好評「絵で見てわかる」シリーズの新刊です。今回は大多数のエンジニアにかかわりがある“ITインフラ”がテーマです。複雑化する現代のエンタープライズシステム構築において、自分の担当外の領域ではどのような仕組みで動いているのか、理解しづらくなっています。本書では、執筆者自身が学んだ経験を生かし、基盤技術をどのようにとらえれば理解しやすいのかを意識して解説しています。
マクロの視点からミクロの視点へと解説を進めており、システムの各部分に共通する原理(仕組み)を無理なく、本質的に理解することができます。今回も図や写真を豊富に掲載し、実務経験が浅い読者にもイメージを作りやすいように配慮しました。インフラ担当者はもちろん、アプリ開発者、DB管理者にもおすすめの内容です。
CHAPTER 1 インフラアーキテクチャを見てみよう
1.1 はじめに
1.2 集約型と分割型アーキテクチャ
1.2.1 集約型アーキテクチャ
メリット
デメリット
1.2.2 分割型アーキテクチャ
メリット
デメリット
物理サーバーと論理サーバーの違い
1.3 垂直分割型アーキテクチャ
1.3.1 クライアントサーバー型アーキテクチャ
メリット
デメリット
1.3.2 3 階層型アーキテクチャ
メリット
デメリット
1.4 水平分割型アーキテクチャ
1.4.1 単純水平分割型アーキテクチャ
メリット
デメリット
1.4.2 シェアード型アーキテクチャ
メリット
デメリット
1.5 地理分割型アーキテクチャ
1.5.1 スタンバイ型アーキテクチャ
1.5.2 災害対策型アーキテクチャ
1.5.3 クラウド型アーキテクチャ
CHAPTER 2 サーバーを開けてみよう
2.1 物理サーバーとは
2.1.1 サーバーの外観と設置場所
2.1.2 サーバーの内部構成
2.2 CPU とは
2.3 メモリとは
2.4 I/O デバイス
2.4.1 ハードディスクデバイス(HDD)
2.4.2 ネットワークインターフェース
2.4.3 I/O の制御
2.5 バス
2.5.1 帯域とは
2.5.2 バスの帯域
2.6 まとめ
CHAPTER 3 3階層型システムを見てみよう
3.1 3階層型システムの図解
3.2 主要概念の説明
3.2.1 プロセスおよびスレッドとは
3.2.2 OS カーネルとは
(1)システムコールインターフェース
(2)プロセス管理
(3)メモリ管理
(4)ネットワークスタック
(5)ファイルシステム管理
(6)デバイスドライバー
3.3 Web データの流れ
3.3.1 クライアントPC からWeb サーバーまで
3.3.2 Web サーバーから AP サーバーまで
3.3.3 AP サーバーからDB サーバーまで
3.3.4 AP サーバーからWeb サーバーまで
3.3.5 Web サーバーからクライアントPC まで
3.3.6 Web データの流れのまとめ
CHAPTER 4 インフラを支える理論の基本
4.1 直列/並列
4.1.1 直列/並列とは
4.1.2 どこで使われているか
4.1.3 まとめ
4.2 同期/非同期
4.2.1 同期/非同期とは
4.2.2 どこで使われているか
DBMS で使われる非同期I/O
4.2.3 まとめ
4.3 キュー
4.3.1 キューとは
4.3.2 どこで使われているか
データベースのディスクI/O
4.3.3 まとめ
4.4 排他制御
4.4.1 排他制御とは
4.4.2 どこで使われているか
DBMS で使われる排他制御
OS のカーネルで使われる排他制御
4.4.3 まとめ
クラスタデータベースでの排他制御
4.5 ステートフル/ステートレス
4.5.1 ステートフル/ステートレスとは
4.5.2 深く見てみよう
4.5.3 どこで使われているか
コンピュータ内部の仕組み
ネットワーク通信における仕組み
4.5.4 まとめ
4.6 可変長/固定長
4.6.1 可変長/固定長とは
4.6.2 どこで使われているか
4.6.3 まとめ
4.7 データ構造(配列と連結リスト)
4.7.1 データ構造( 配列と連結リスト)とは
4.7.2 どこで使われているか
4.7.3 まとめ
4.8 探索アルゴリズム(ハッシュ/ ツリーなど)
4.8.1 探索アルゴリズム(ハッシュ/ ツリーなど)とは
4.8.2 どこで使われているか
4.8.3 まとめ
CHAPTER 5 インフラを支える理論の応用
5.1 キャッシュ
5.1.1 キャッシュとは
5.1.2 どこで使われているか
5.1.3 まとめ
5.2 割り込み
5.2.1 割り込みとは
5.2.2 深く見てみよう
5.2.3 どこで使われているか
5.2.4 まとめ
5.3 ポーリング
5.3.1 ポーリングってなあに?
5.3.2 どこで使われているか
5.3.3 まとめ
5.4 ピンポン
5.4.1 ピンポンとは
5.4.2 どこで使われているか
Oracle Database の例
ネットワークの例
5.4.3 まとめ
5.5 ジャーナリング
5.5.1 ジャーナリングとは
5.5.2 どこで使われているか
Linux のext3 ファイルシステム
Oracle Database
5.5.3 まとめ
5.6 レプリケーション
5.6.1 レプリケーションとは
5.6.2 どこで使われているか
5.6.3 まとめ
5.7 マスター・スレーブ
5.7.1 マスター・スレーブとは
5.7.2 どこで使われているか
5.7.3 まとめ
5.8 圧縮
5.8.1 圧縮とは
5.8.2 深く見てみよう
5.8.3 どこで使われているか
5.8.4 まとめ
5.9 エラーチェック/誤り訂正
5.9.1 エラーチェック/誤り訂正とは
5.9.2 深く見てみよう
5.9.3 誤りやエラーを検出するには
誤りの検出
5.9.4 どこで使われているか
5.9.5 まとめ
CHAPTER 6 システムをつなぐネットワークの仕組み
6.1 ネットワーク
6.2 【基礎】階層構造とは
6.2.1 会社で例える階層構造
6.2.2 階層構造は役割分担
6.2.3 階層モデルの代表例 - OSI 7 階層モデル
6.2.4 階層構造はネットワークだけではない
6.3 【基礎】プロトコルとは
6.3.1 人間同士の意思疎通もプロトコル
6.3.2 コンピュータにはプロトコルが必要不可欠
6.3.3 プロトコルはサーバーの内部にも
6.4 TCP/IP による今日のネットワーク
6.4.1 インターネットの発展とTCP/IP プロトコルスイート
6.4.2 TCP/IP の階層構造
6.5 【レイヤー7】アプリケーション層のプロトコルHTTP
6.5.1 リクエストとレスポンスの具体的な中身
6.5.2 アプリケーションプロトコルはユーザー空間での処理
6.5.3 ソケット以下はカーネル空間での処理
6.6 【レイヤー4】トランスポート層のプロトコルTCP
6.6.1 TCP の役割
6.6.2 カーネル空間でのTCP の処理イメージ
6.6.3 ポート番号によるデータ転送
6.6.4 コネクションの生成
6.6.5 データの保証と再送制御
6.6.6 フロー制御と輻輳制御
6.7 【レイヤー3】ネットワーク層のプロトコルIP
6.7.1 IP の役割
6.7.2 カーネル空間でのIP の処理イメージ
6.7.3 IP アドレスによる最終宛先へのデータ転送
6.7.4 ルーティング
6.8 【レイヤー2】データリンク層のプロトコルEthernet
6.8.1 Ethernet の役割
6.8.2 カーネル空間でのEthernet の処理イメージ
6.8.3 同一リンク内のデータ転送
6.8.4 VLAN
6.9 TCP/IP による通信のその後
6.9.1 ネットワークスイッチの中継処理
6.9.2 最終宛先での受信処理
CHAPTER 7 止めないためのインフラの仕組み
7.1 耐障害性、冗長化とは
7.1.1 耐障害性とは
7.1.2 冗長化とは
7.2 サーバー内冗長化
7.2.1 電源、デバイス等の冗長化
7.2.2 ネットワークインターフェースの冗長化
障害が発生したらどうなるの?
7.3 ストレージ冗長化
7.3.1 HDD の冗長化
RAID の構成パターン
障害が発生したらどうなるの?
7.3.2 パスの冗長化
7.4 Web サーバーの冗長化
7.4.1 Web サーバーにおけるサーバー内冗長化
障害が発生したらどうなるの?
7.4.2 サーバー冗長化
ロードバランサーによるWeb サーバーの冗長化
障害が発生したらどうなるの?
7.5 AP サーバーの冗長化
7.5.1 サーバー冗長化
障害が発生したらどうなるの?
7.5.2 DB へのコネクションの冗長化
障害が発生したらどうなるの?
7.6 DB サーバーの冗長化
7.6.1 サーバー冗長化(アクティブ- スタンバイ)
障害が発生したらどうなるの?
クラスタ構成向きなサービスとは
7.6.2 サーバー冗長化(アクティブ- アクティブ)
キャッシュの転送
7.7 ネットワーク機器の冗長化
7.7.1 L2 スイッチの冗長化
トランクポート利用の際に必要な対策
7.7.2 L3 スイッチの冗長化
障害が発生したらどうなるの?
7.7.3 ネットワークトポロジー
ネットワーク構成の代表的なパターン
7.8 サイトの冗長化
7.8.1 サイト内の冗長化全体図
7.8.2 Web サイト間の冗長化
7.9 監視
7.9.1 監視とは
7.9.2 死活監視
7.9.3 ログ監視
7.9.4 性能監視
7.9.5 SNMP
7.9.6 コンテンツ監視
7.10 バックアップ
7.10.1 バックアップとは
7.10.2 システムバックアップ
7.10.3 データバックアップ
7-11 まとめ
CHAPTER 8 性能を引き出すためのインフラの仕組み
8.1 レスポンスとスループット
8.1.1 性能問題の2 種類の原因
8.1.2 レスポンス問題
8.1.3 スループット問題
8.2 ボトルネックとは
8.2.1 処理速度の制限要因となるボトルネック
8.2.2 ボトルネックはどう解消すべきか
8.2.3 ボトルネックは必ず存在する
8.3 3 階層型システム図から見たボトルネック
8.3.1 CPU ボトルネックの例
待ち行列でのボトルネック
レスポンスでのボトルネック
処理能力を向上させる
並列で処理をさせる
CPU 使用率が上がらない
8.3.2 メモリボトルネックの例
領域不足によるボトルネック
同じデータに対するボトルネック
8.3.3 ディスクI/O ボトルネックの例
ローカルディスク、SAN ストレージ、ネットワークストレージ
シーケンシャルI/O とランダムI/O
8.3.4 ネットワークI/O ボトルネックの例
通信プロセスのボトルネック
ネットワーク経路のボトルネック
8.3.5 アプリケーションボトルネックの例
データ更新のボトルネック
外部問合せのボトルネック
8.4 まとめ
内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。
正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。
本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。
刷数は奥付(書籍の最終ページ)に記載されています。
書籍の種類:
書籍の刷数:
本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。
対象の書籍は正誤表がありません。
発生刷 | ページ数 | 書籍改訂刷 | 電子書籍訂正 | 内容 | 登録日 | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|
1刷 | 045 下から6行目 |
2刷 | 未 |
|
2012.10.18 | ||||||
1刷 | 099 図4.16のフキダシ内文章2行目 |
4刷 | 未 |
|
2013.04.26 | ||||||
1刷 | 105 下から13行目 |
5刷 | 未 |
|
2014.05.14 | ||||||
1刷 | 105 下から10行目 |
4刷 | 未 |
|
2013.01.11 | ||||||
1刷 | 145 2行目 |
4刷 | 未 |
|
2013.01.11 | ||||||
1刷 | 176 1行目 |
5刷 | 未 |
|
2014.05.14 | ||||||
1刷 | 186 下から5行目 |
5刷 | 未 |
|
2014.05.14 | ||||||
1刷 | 202 4行目 |
4刷 | 未 |
|
2013.06.17 | ||||||
1刷 | 210 6.7節の3行目 |
5刷 | 未 |
|
2014.05.14 | ||||||
1刷 | 219 最下行 |
4刷 | 未 |
|
2013.06.17 | ||||||
1刷 | 219 3行目 |
4刷 | 未 |
|
2013.01.11 | ||||||
1刷 | 220 2行目 |
4刷 | 未 |
|
2013.06.17 | ||||||
1刷 | 221 図6.25 |
4刷 | 未 |
|
2013.01.11 | ||||||
1刷 | 245 1行目 |
5刷 | 未 |
|
2014.05.14 | ||||||
1刷 | 257 図Aのキャプション |
5刷 | 未 |
|
2015.01.20 | ||||||
1刷 | 277 「障害が発生したらどうなるの?」の4行目 |
5刷 | 未 |
|
2014.05.14 | ||||||
1刷 | 278 図7.37の凡例 |
4刷 | 未 |
|
2013.01.11 | ||||||
1刷 | 282 図A |
4刷 | 未 |
|
2013.01.11 | ||||||
1刷 | 288 下から4行目 |
5刷 | 未 |
|
2015.01.20 | ||||||
1刷 | 296 2行目(箇条書き除く) |
5刷 | 未 |
|
2014.05.14 | ||||||
1刷 | 298 下から4行目 |
5刷 | 未 |
|
2014.05.14 | ||||||
1刷 | 314 2行目 |
5刷 | 未 |
|
2015.01.20 | ||||||
1刷 | 330 6行目 |
4刷 | 未 |
|
2013.01.24 |
izw さん
2014-06-25
オラクルのコンサルタントたちが書いたITインフラの本。流し読み(拾い読み)しただけですが、ITインフラ全般に渡り分かりやすく解説されていて、ITインフラに関わり始めた人にお薦めです。データベースのコンサルをしたいのに、インフラのことを延々と説明しなければならない、訳の分からないクライアントにプレゼントしようと企んだ本ではないかと憶測しています。
toiwata さん
2013-03-25
基盤系の話を抑えるのに良い本だと思いました。(大体を知っているひとにもおそらく知識を整理するのに有効。)
とりもり さん
2016-06-08
Webサーバ、APサーバ、DBサーバから構成される3階層型システムの仕組みを解説した一冊。図入りで比喩も多く、非常に分かり易い。「止めない」システム作りのために必要な要素技術についてコンパクトに理解できる。とは言え、一読で全てを理解するのは難しいので、再読の必要がありそう。カバー裏のシステム図は分かり易いが、開くのが大変なので、本書の中に入れて欲しかった。用語集のようなものが付いていれば満点。改訂時に付けて欲しい。★★★★☆