詳解システム・パフォーマンスを読み終えたので感想とか

2020年8月16日 engineering

こんにちは, @kz_morita です.

今回は,詳解システム・パフォーマンスを読み終えたので,軽く感想などを書いていきます.

詳解システム・パフォーマンス

目次

  • 1章 イントロダクション
  • 2章 メソドロジ
  • 3章 オペレーティングシステム
  • 4章 可観測性ツール
  • 5章 アプリケーション
  • 6章 CPU
  • 7章 メモリ
  • 8章 ファイルシステム
  • 9章 ディスク
  • 10章 ネットワーク
  • 11章 クラウドコンピューティング
  • 12章 ベンチマーキング
  • 13章 ケーススタディ

感想とか

この本は,OSやアプリケーションにおけるパフォーマンス分析の方法と,チューニングについて書かれていました. 読もうと思ったきっかけは単純に好奇心です.普段はアプリケーションエンジニアとしてサーバーサイドを書いたりフロントのコーディングをしたりしていますが,自分が書いたコードのパフォーマンスというものに関心がありました.また,パフォーマンスチューニングも好きで,ISUCON などもここ3,4年くらい毎年でてます.

たまたま,何かのタイミングでこの本が紹介されているのを見かけて衝動買いをしました.

読んでみた感想としては,パフォーマンス以前に,OS などの基礎知識を知ることができるとても良い本だなぁと感じました.

1 章と 2 章では,パフォーマンスとは何か,どうやって計測をするのかといった前提知識が書かれていました.

つづく章では,OS,アプリケーション,ネットワーク,CPU,メモリなどの各分野におけるパフォーマンスの分析とチューニングが書かれていました. これらの章がとても良かったです.
各章,用語, モデル, コンセプト, アーキテクチャ, メソドロジ, 分析 といった節が用意されていて,前半の 用語・モデル・コンセプト・アーキテクチャなどを通して,その分野の概要を知れたのが収穫でした.たとえば,オペレーティングシステムの章では以下のような内容について触れられていて,非常に勉強になりました.

- カーネル
- スタック
- 割り込みと割り込みスレッド
- 割り込み優先レベル
- プロセス
- システムコール
- 仮装メモリ
- メモリ管理
- スケジューラ
- ファイルシステム
- キャッシング
- ネットワーク
- デバイスドライバ
- マルチプロセッサ
- プリエンプション
- リソース監視
- 可観測性

もちろん,この書籍だけですべてを網羅できるわけではないですが,なんとなく足がかりをつかむのにとても良かったです.

書籍は一通り読み終えたのですが,正直「パフォーマンスを完全に理解した!」とは言えずに,また何度か読み直すことになるかと思います.

総じて,実際にパフォーマンス改善に取り組む際に手元において見るといった使い方が非常に役に立ちそうな本だと思いました.

この記事をシェア