TL;DR
- Go アプリケーションの効率やスケーリングについての疑問に、実用的な答えを与える本である。
- レイテンシー、CPU、メモリについての知識、OS や Go がそれらを抽象化する方法、データに基づく意思決定、計算量解析の手法、最適化の例などを紹介する。
対象読者
Go などのモダンな言語でプログラムを設計、作成、変更するソフトウェア開発者に向けた本である。他人が書いたソフトウェアを主に運用する DevOps エンジニア、SRE、システム管理者、プラットフォームチームも対象にしている。いつ、どのように効率を最適化するかを判断するための知識が身につく。
目次
- ソフトウェア効率性が重要
- 効率的な Go 入門
- 効率化の攻略
- Go での CPU リソースの活用方法の(ちょっとした)解説
- Go でのメモリリソースの使用方法
- 効率性オブザーバビリティ
- データ駆動効率性評価
- ベンチマーク
- データ駆動ボトルネック分析
- 最適化の例
- 最適化パターン
付録
- 付録A ナプキン計算用のレイテンシー