詳解システムパフォーマンス 8章ファイルシステム メモ

今回も章末の練習問題をみながら、みんなで議論をしていた。 アプリケーションの I/O パフォーマンスを解析するときには、ファイルシステムのパフォーマ ンスの方がディスクパフォーマンスよりも大きな問題になる。ファイルシステムは、アプリ…

詳解システムパフォーマンス 7章「メモリ」メモ

しばらく輪読を休んでたけど、再開した。第7章「メモリ」。 章末の練習問題を見ながら、みんなで議論していた。 メモリのページとはなにか OSとCPUがメモリを管理する単位 仮想メモリとは何か 無限のメモリの抽象 メインメモリとスワップ領域を抽象化してい…

書籍「Mackerel サーバ監視[実践]入門」執筆成功

執筆成功と言いつつ、自分は元となった連載記事をいくつか書いただけで、書籍化にあたってはプロフィールを書く以外のことは何もしていません。気づいたら、書籍を初執筆していたことになりました。 書籍「Mackerel サーバ監視[実践]入門」を執筆しました …

Go言語をほぼ毎日書いている話 (序)

はてなの京都オフィスで開催された そうだ Go、京都。 - connpass にて、「Go言語をほぼ毎日書いている話(序)」というふわっとした話をしました。いわゆる Write Code Every Dayという活動ですね。 タイトルに(序)と付けているのは、書き始めてまだ5ヶ月程度…

mkr + peco + tmux + ssh

Mackerel Meetup #10 Tokyo のLT枠で「mkr + peco + tmux + ssh」というタイトルで話をしました。当日の発表スライドを以下に貼っておきます。 speakerdeck.com 話の内容は、tmux + ssh + Mackerel API を組み合わせたとにかくモダンなサーバオペレーション …

詳解システム・パフォーマンス 3章「オペレーティングシステム」輪読メモ

詳解システム・パフォーマンス 第2章「メソドロジ」メモ - ゆううきメモ の続き。今回は第3章「オペレーティングシステム」 システムパフォーマンス分析では、オペレーティングシステムとそのカーネルについての理解は必要不可欠だ。システムコー…

書籍「Designing Data-Intensive Applications」下読み

全体として何に関する本か ストレージとデータ処理技術に関する基礎概念について、原理と実践の両方の観点を通して、読者がdata-intensive applicationsを構築するための技術選択の意思決定を助ける本である。 この分野は、NoSQL、ビッグデータ、スケーラビ…

MySQLの同期レプリケーションで複数の更新クエリを1トランザクション内で発行すると速くなるケース

っていう話をいちりんちゃんこと id:ichirin2501 に聞いた。 MySQLで準同期レプリケーションまたは同期レプリケーションを使って、マスター・スレーブ構成で運用している場合、マスターはコミット後、スレーブが更新イベントを受け取ってログに書き込むまで…

詳解システム・パフォーマンス 第2章「メソドロジ」メモ

書籍「詳解システム・パフォーマンス」 下読み - ゆううきメモ の続き。今回は第2章「メソドロジ」。 パフォーマンスアナリストが複雑なシステムに立ち向かうときに、パフォーマンス問題を起こ している場所を特定し、問題を分析するためにどこから…

書籍「詳解システム・パフォーマンス」 下読み

詳解システム・パフォーマンス輪読を始めた。初回は、全体把握と第1章。 全体把握というのは、書籍「本を読む本」でいうところの読書の第2段階「点検読書」のうち組織的拾い読みに該当する。さらに同著には、積極的読書のためには質問をすることが重要と書か…

最近のXenの変遷について

Xen をとりまく状況 【仮想化道場】コードの全面的なリフレッシュを行ったハイパーバイザー「Xen 4.5」 - クラウド Watch が詳しい。 2003年 Xen 最初のバージョン公開 2007年 CitrixがXenSourceを買収 => 開発がスローペースに 2011年 Linux 3.0 からメイン…

OS仮想化の性能オーバヘッド

ハードウェア仮想化に対するOS仮想化の利点と欠点 - ゆううきメモ の続き。 Systems Performance 11.2.1 Overheadの内容。 OS仮想化の性能オーバヘッドは、CPU実行とI/Oのオーバヘッド、他のテナント(ゲスト)からの影響にまとめられる。 CPU CPU実行のオーバ…

マルチスレッドアプリケーションにおける同期プリミティブ

Systems Performance 5.2.5 Concurrency and Parallelism に各種同期プリミティブについて書かれている。 マルチスレッドプログラミングは、マルチプロセスプログラミングのIPCのような、オーバヘッドのあるインタフェースなしで、スレッドが同じメモリに読…

ハードウェア仮想化に対するOS仮想化の利点と欠点

Systems Performance 11.2 OS Vertualization の内容。 基本的には、ハードウェア仮想化はリソースを二重に持っている分、オーバヘッドがあるけれども、その分独立性が高い、ということ。 Advantages ホストカーネルに対して、ゲストアプリケーションのI/Oオ…

リトルの法則とキャパシティプランニング

(引用: Systems Performance figure 2.18 Queueing Model) リトルの法則とは、安定した系において、平均待ち行列数は、平均到着率と平均待ち時間の積に等しい、という法則である。 (Systems Performanceの原文ではaverage service timeになっていたが、正確…

StackOverflowのシステムアーキテクチャ

Scaling Stack Overflow: Keeping it Vertical by Obsessing Over Performance from C4Media www.slideshare.net www.infoq.com “退屈さ”を維持する方法論に意味がある 知っていることから始めて,実地で測定し,遅い部分を直す パフォーマンスはサービスの"…

計算機の代表的なレイテンシとスケール感

レイテンシの単位は時間であるため、他の時間を単位とするメトリックと数値的に比較できる。 したがって、比較するための基準として、代表的なレイテンシのスケール感を覚えておくと役に立つ。 CPU cycle は 3.3 GHz プロセッサがベース Latency は実際の値…

ディスクが遅い?

書籍 Systems PerformanceのChapter 1の1.9節 Case Studiesの話。 データベースチームから、データベースサーバのディスクが遅いと言われる。 ディスクが遅いということが、データベースの問題を引き起こす直接の原因かどうかはわからない。 データベースチ…

パフォーマンス解析の観点

ボトルネック、もしくはレイテンシが支配的な処理以外を高速化しても意味がない。 高速化する価値のあるポイントを見極めるには、システムのパフォーマンス状況を把握する必要がある。 書籍 Systems Performance にはシステムパフォーマンスの解析の方向性と…