Book description
現代のアプリケーションエンジニアは、UIやデータ処理、開発言語、プラットフォームの仕様や癖だけでなく、サーバやネットワークについても、上から下まで、表から裏まで広く知ることを求められます。本書は「ブラウザ」に関連し、インターネットで使用されるさまざまなネットワーク技術をまとめたものです。HTTP/2.0やWebRTCなどの最新技術、WebSocketやXMLHttpRequestなどのブラウザAPI、そしてそれらの土台となるTCPやUDPやトランスポート層についてまでを幅広くカバーします。また改善前後の性能・速さを可能な限り具体化し、それぞれの場面においてのパフォーマンス改善幅を示します。
Table of contents
- ハイパフォーマンス ブラウザネットワーキング
- 大扉
- 原書大扉
- クレジット
- まえがき
- 訳者まえがき
- はじめに
- 本書について
- 本書の表記法
- サンプルコードの使用
- 意見と質問
- 1章 レイテンシ・帯域幅入門
- 1.1 スピードは機能
- 1.2 レイテンシを構成する多数の構成要素
- 1.3 光の速さと伝播遅延
- 1.4 ラストマイルのレイテンシ
- 1.5 基幹ネットワークの帯域幅
- 1.6 ネットワークエッジの帯域幅
- 1.7 より大きな帯域幅とより低いレイテンシを提供
- 2章 TCPの構成要素
- 2.1 3ウェイハンドシェイク
- 2.2 輻輳回避と輻輳制御
- 2.3 帯域幅遅延積
- 2.4 HoLブロッキング
- 2.5 TCPの最適化
- 3章 UDPの構成要素
- 3.1 ヌルプロトコルサービス
- 3.2 UDPとネットワークアドレス変換(NAT)
- 3.3 UDPの最適化
- 4章 TLS
- 4.1 暗号化、認証、データ整合性
- 4.2 TLSハンドシェイク
- 4.3 TLSセッション再開(TLS Session Resumption)
- 4.4 信頼チェーンと認証局
- 4.5 証明書の失効
- 4.6 TLSレコードプロトコル
- 4.7 TLSの最適化
- 4.8 パフォーマンスチェックリスト
- 4.9 テストと検証
- 5章 ワイヤレスネットワーク入門
- 5.1 ユビキタスコネクティビティ
- 5.2 ワイヤレスネットワークの種類
- 5.3 ワイヤレスネットワークにおけるパフォーマンスの基礎
- 5.4 実世界のワイヤレスパフォーマンスを測定
- 6章 WiFi
- 6.1 Ethernetから無線LANへ
- 6.2 WiFi標準とその機能
- 6.3 WiFiパフォーマンスの計測と最適化
- 6.4 WiFiネットワークの最適化
- 7章 モバイルネットワーク
- 7.1 モバイルネットワーク世代の歴史の概要
- 7.2 デバイスの機能と性能
- 7.3 RRC(Radio Resource Controller)
- 7.4 エンドツーエンドの移動体通信事業者ネットワークアーキテクチャ
- 7.5 モバイルネットワーク内のパケットフロー
- 7.6 ヘテロジニアスネットワーク(HetNet)
- 7.7 実世界の3G、4G、そしてWiFiパフォーマンス
- 8章 モバイルネットワークの最適化
- 8.1 バッテリー消費量を抑える
- 8.2 非効率な定期的データ送受信を排除
- 8.3 ネットワークレイテンシのオーバーヘッドを予想
- 8.4 変化するネットワークインターフェイス状態に対応するデザイン
- 8.5 バースト的に送受信し、アイドル状態に戻る
- 8.6 WiFiネットワークへオフロード
- 8.7 プロトコルとアプリケーションのベストプラクティスを適用
- 9章 HTTPの歴史
- 9.1 HTTP 0.9:ワンラインプロトコル
- 9.2 HTTP 1.0:急速な成長とInformational RFC
- 9.3 HTTP 1.1:インターネット標準
- 9.4 HTTP 2.0:トランスポートのパフォーマンス向上
- 10章 Webパフォーマンス入門
- 10.1 ハイパーテキスト、Webページ、Webアプリケーション
- 10.2 モダンWebアプリケーションの解剖学
- 10.3 パフォーマンスの柱:演算、レンダリング、ネットワーク
- 10.4 人工的テストとリアルユーザでのパフォーマンス計測
- 10.5 ブラウザ最適化
- 11章 HTTP 1.x
- 11.1 キープアライブ接続の利点
- 11.2 HTTPパイプライン
- 11.3 複数のTCP接続を使用する
- 11.4 ドメインシャーディング
- 11.5 プロトコルオーバーヘッドの計測と制御
- 11.6 ファイル結合とスプライト
- 11.7 リソースインライン化
- 12章 HTTP 2.0
- 12.1 HTTP 2.0の歴史、そしてSPDYとの関係
- 12.2 HTTP 2.0への道
- 12.3 設計と技術的目標
- 12.4 バイナリフレーム入門
- 13章 アプリケーション配信最適化
- 13.1 定番のパフォーマンスベストプラクティス
- 13.2 HTTP 1.xの最適化
- 13.3 HTTP 2.0の最適化
- 14章 ブラウザネットワーク入門
- 14.1 接続管理と最適化
- 14.2 ネットワークセキュリティとサンドボックス化
- 14.3 リソースとクライアント状態キャッシュ
- 14.4 アプリケーションAPIとプロトコル
- 15章 XMLHttpRequest
- 15.1 XHRの歴史
- 15.2 Cross-Origin Resource Sharing(CORS)
- 15.3 XHRでデータをダウンロード
- 15.4 XHRでデータをアップロード
- 15.5 ダウンロードとアップロードの進行状況を監視
- 15.6 XHRでデータストリーミング
- 15.7 リアルタイム通知と配信
- 15.8 XHRのユースケースとパフォーマンス
- 16章 Server-Sent Events
- 16.1 EventSource API
- 16.2 イベントストリームフォーマット
- 16.3 SSEのユースケースとパフォーマンス
- 17章 WebSocket
- 17.1 WebSocket API
- 17.2 WebSocketプロトコル
- 17.3 WebSocketのユースケースとパフォーマンス
- 17.4 パフォーマンスチェックリスト
- 18章 WebRTC
- 18.1 WebRTCの標準と開発
- 18.2 音声・動画処理エンジン
- 18.3 リアルタイムネットワークトランスポート
- 18.4 P2P接続を確立
- 18.5 メディアとアプリケーションデータを配信
- 18.6 DataChannel
- 18.7 WebRTCのユースケースとパフォーマンス
- 18.8 パフォーマンスチェックリスト
- 著者・訳者紹介
- 奥付
Product information
- Title: ハイパフォーマンス ブラウザネットワーキング ―ネットワークアプリケーションのためのパフォーマンス最適化
- Author(s):
- Release date: May 2014
- Publisher(s): O'Reilly Japan, Inc.
- ISBN: 9784873116761
You might also like
book
マスタリングLinuxシェルスクリプト 第2版 ―Linuxコマンド、bashスクリプト、シェルプログラミング実践入門
Linuxシェルスクリプトの解説書。その中でも特にbashのシェルスクリプティングに焦点を当てています。シェルスクリプトの書き方、デバッグ方法、bashプログラミングの基本といったシェルスクリプティングの基礎から、sedやAWKなど各種ツールとの連携といった実践的な応用までを体系的に解説します。WebサーバーなどのLinuxシステムの管理を任されるようになった初級の管理者にも、もっと高度で実践的なテクニックを必要としている中級の管理者や開発者にも広く役に立つ内容です。
book
行動を変えるデザイン ―心理学と行動経済学をプロダクトデザインに活用する
深津貴之氏推薦!「行動経済学、データ分析、サービス設計のエッセンスが高度に統合された行動変容デザインの良書です」 本書は、行動経済学と心理学をもとに、人々の行動、日常習慣を変える“行動変容”を促すプロダクトをデザインするための書籍です。主にヘルスケア(健康管理)、金融(資産管理)など、これまでITプロダクト(サービス、アプリなど)がなかなか使われてこなかった分野を対象に、ユーザーがやりたいと思っていたものの実行できなかった行動の実現を助けるプロダクトを作り出すための、実践的な視点や知識を提供します。
book
リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック
美しいコードを見ると感動する。優れたコードは見た瞬間に何をしているかが伝わってくる。そういうコードは使うのが楽しいし、自分のコードもそうあるべきだと思わせてくれる。本書の目的は、君のコードを良くすることだ。(本書「はじめに」より) コードは理解しやすくなければならない。本書はこの原則を日々のコーディングの様々な場面に当てはめる方法を紹介します。名前の付け方、コメントの書き方など表面上の改善について。コードを動かすための制御フロー、論理式、変数などループとロジックについて。またコードを再構成するための方法。さらにテストの書き方などについて、楽しいイラストと共に説明しています。日本語版ではRubyやgroongaのコミッタとしても著名な須藤功平氏による解説を収録。
book
プロダクションレディマイクロサービス ―運用に強い本番対応システムの実装と標準化
UberのSRE(サイト信頼性エンジニア、サイトリライアビリティエンジニア)として、マイクロサービスの本番対応向上を担当していた著者が、その取り組みから得られた知見をまとめたものです。モノリス(一枚岩)を複数のマイクロサービスに分割した後に、安定性、信頼性、スケーラビリティ、耐障害性、パフォーマンス、監視、ドキュメント、大惨事対応を備えたシステムにするために必要な原則と標準に焦点を当て、本番対応力のあるマイクロサービスを構築する手法を紹介します。本書で採用している原則と標準は、マイクロサービスだけなく多くのサービスやアプリケーションの改善にも威力を発揮します。