TECH PLAY

達人が教えるWebパフォーマンスチューニング 〜ISUCONから学ぶ高速化の実践

3,278円 (税込)

楽天

達人が教えるWebパフォーマンスチューニング 〜ISUCONから学ぶ高速化の実践

書籍情報

発売日:

著者/編集:藤原 俊一郎/馬場 俊彰/中西 建登/長野 雅広/金子 達哉/草野 翔

出版社:技術評論社

発行形態:単行本

書籍説明

内容紹介

サーバー・インフラの性能改善をして軽快で落ちないWebサービス・アプリケーションをつくる。ISUCON(Iikanjini Speed Up Contest)を攻略する知識と技術を鍛える。実務にも必須のテクニック満載!

目次

Chapter1 チューニングの基礎知識 1-1 “高速であること”は現代のWebサービスの必須要件 1-2 高速なWebサービスとは 1-3 Webサービスの負荷 1-4 必要十分なキャパシティを用意するには 1-5 パフォーマンスチューニング“きほんのき” 1-6 パフォーマンスチューニング“きほんのほ” 1-7 パフォーマンスチューニング“きほんのん” 1-8 まとめ Chapter2 モニタリング 2-1 モニタリングとは - インフラにおけるテスト 2-2 モニタリングに対する考え方 2-3 モニタリングの種類 2-4 手動でのモニタリング 2-5 モニタリングツール 2-6 モニタリングツールのアーキテクチャ 2-7 実際にモニタリングを行う 2-8 モニタリングの注意点 2-9 ログに対するモニタリング 2-10 まとめ Chapter3 基礎的な負荷試験 3-1 本書で扱うWeb サービス private-isu 3-2 負荷試験の準備 3-3 ベンチマーカーによる負荷試験の実行 3-4 パフォーマンスチューニング 最初の一歩 3-5 ベンチマーカーの並列度 3-6 まとめ Chapter4 シナリオを持った負荷試験 4-1 負荷試験ツールk6 4-2 k6による単純な負荷試験 4-3 k6でシナリオを記述する 4-4 複数のシナリオを組み合わせた統合シナリオを実行する 4-5 負荷試験で得られたアクセスログを解析する 4-6 まとめ Chapter5 データベースのチューニング 5-1 データベースの種類と選択 5-2 データベースの負荷を測る 5-3 インデックスでデータベースを速くする 5-4 N+1とは 5-5 データベースとリソースを効率的に利用する 5-6 まとめ Chapter6 リバースプロキシの利用 6-1 アプリケーションとプロセス・スレッド 6-2 リバースプロキシを利用するメリット 6-3 nginxとは 6-4 nginxのアーキテクチャ 6-5 nginxによる転送時のデータ圧縮 6-6 nginxによるリクエスト・レスポンスのバッファリング 6-7 nginxとアップストリームサーバーのコネクション管理 6-8 nginx のTLS通信を高速にする 6-9 まとめ Chapter7 キャッシュの活用 7-1 キャッシュデータ保存に利用されるミドルウェア 7-2 キャッシュをKVSに保存する際の注意点 7-3 いつキャッシュを利用するか 7-4 具体的なキャッシュ実装方法 7-5 キャッシュを監視する 7-6 まとめ Chapter8 押さえておきたい高速化手法 8-1 外部コマンド実行ではなく、ライブラリを利用する 8-2 開発用の設定で冗長なログを出力しない 8-3 HTTPクライアントの使い方 8-4 静的ファイル配信をリバースプロキシから直接配信する 8-5 HTTPヘッダーを活用してクライアント側にキャッシュさせる 8-6 CDN上にHTTPレスポンスをキャッシュする 8-7 まとめ Chapter9 OSの基礎知識とチューニング 9-1 流れを見極める 9-2 Linux Kernelの基礎知識 9-3 Linux のプロセス管理 9-4 Linuxのネットワーク 9-5 LinuxのディスクI/O 9-6 CPU利用率 9-7 Linuxにおける効率的なシステム設定 9-8 Linuxカーネルパラメータ 9-9 MTU(Maximum Transmission Unit) 9-10 まとめ 付録 A private-isuの攻略実践 A-1 用意した競技用環境 A-2 ベンチマーカーの実行方法 A-3 各章の技法を適用する A-4 まとめ B ベンチマーカーの実装 B-1 ISUCONのベンチマーカーは何をするのか B-2 ベンチマーカーに頻出する実装パターン B-3 private-isuを対象としたベンチマーカーの実装 B-4 まとめ

著者情報

中西 建登

中西建登 株式会社サイバーエージェント 2019年新卒入社。CloudMakerとしてプライベートクラウドの開発運用に従事。ISUCON8にて史上初の学生総合優勝、ISUCON10にて史上初のプライベートクラウドチームによるインフラ提供を主導。インターネットコミュニティだいすき。

中西, 建登

草野 翔

草野翔 宇宙海賊合同会社代表、株式会社ハンマーキットCTO、株式会社 Tech Consiglie CTO、プロモータル株式会社相談役、IPTech特許業務法人技術顧問。ISUCON9優勝、ISUCON4とISUCON10出題。ISUCONベンチマーカーが大好き。

草野, 翔

藤原 俊一郎

藤原俊一郎 2011年より面白法人カヤック。SREチーム所属。ISUCON優勝4回、出題3回。最近の趣味はマネージドサービスの隙間を埋める隙間家具のようなツールを作ってOSSにすること。著書に『みんなのGo言語[現場で使える実践テクニック]』(共著、技術評論社)。

藤原, 俊一郎

金子 達哉

金子達哉 株式会社PR TIMES開発本部長CTO。ピクシブ・メルカリを経て現職。ISUCON9予選・ISUCON6本選出題。ISUCON9予選では問題・ベンチマーカーを実装。高速なWebサービスの作り方に関する情報やISUCONのベンチマーカーに関する資料を複数公開している。

金子, 達哉, 1991-

長野 雅広

長野雅広 さくらインターネット株式会社所属。ミクシィ、livedoor、LINE、メルカリでWebサービスの運用に携わり2021年より現職。ISUCON1、ISUCON2、ISUCON9予選で問題作成。参加者として優勝も予選落ちも経験。

長野, 雅広

馬場 俊彰

馬場俊彰 株式会社X-Tech 5取締役CTO、株式会社iCARE技術顧問。ISUCON第一回にプロジェクターを持ち込んで参加しSELinux=Enforcingで入賞。本選に進出したり、遠巻きに運営の手伝いをしたりしています。

馬場, 俊彰

類似書籍