開発者とオペレーターが注目すべき Linux デバッグ ツール [推奨]

開発者とオペレーターが注目すべき Linux デバッグ ツール [推奨]

システム パフォーマンスの専門家である Brendan D. Gregg 氏は、LinuxCon NA 2014 カンファレンスで、Linux パフォーマンスに関する有名な講演 (Linux パフォーマンス ツール) とスライドを更新しました。日常の Linux 開発で使用されるツールを、監視、テスト、最適化、構成の観点からまとめています。以下に主な写真と情報を記載しますので、ご参考になれば幸いです。

パフォーマンス ツール (Linux パフォーマンス ツール - フル)

この画像は、監視、テスト、およびチューニングのプロセスの高解像度バージョンです。後ほどカテゴリごとに別々に表示されます。

Linux パフォーマンス ベンチマーク ツール

ベンチマークは、データセット、ワークロード、測定指標の 3 つの部分で構成される評価方法です。コンピュータ分野全体にわたって長期的な応用が可能です。

コンピュータ分野におけるベンチマークの最も成功した応用はパフォーマンス テストであり、主に負荷の実行時間、伝送速度、スループット、リソース使用率などをテストします。

Linux パフォーマンス観測ツール

監視内容の違いに応じて、ツールは基本、中級、上級の 3 つのレベルに分けられます。それぞれ以下の3つの章に対応

基本的な Linux 監視ツール

パフォーマンスツール

perf-tools: は、Brendan Gregg によって作成されたツールセットです。その目標は、最小限の依存関係で最大限の機能を実現し、簡単にインストールして使用できるようにすることです。

一つのことをしっかりやり遂げなさい。 ——ブレンダン・グレッグ

サル

sar (System Activity Reporter) は、Linux で最も包括的なシステム パフォーマンス分析ツールの 1 つです。ファイルの読み取りと書き込み、システム コールの使用状況、ディスク I/O、CPU 効率、メモリ使用量、プロセス アクティビティ、IPC 関連アクティビティなど、さまざまな側面からシステム アクティビティをレポートできます。

Linux パフォーマンス チューニング ツール

ほとんどのシステムでは、負荷の増加に対してある程度のパフォーマンス低下を伴います。システムがより高い負荷を受け入れる能力はスケーラビリティと呼ばれ、より高い負荷を処理できるようにシステムを変更することがパフォーマンス チューニング ツールの目的です。

トレース ツール (Linux bcc/BPF ツール)

Linux では、システム管理者や開発者にパフォーマンス分析やトラブルシューティングのための多数の新しいツールやダッシュボードを提供する新しいテクノロジーが登場しています。これはBPF(Berkeley Packet Filter)と呼ばれます。

eBPF は BPF の拡張バージョンであり、Linux 4.x シリーズ カーネルに追加されています。パケットをフィルタリングするだけでなく、Linux の動的トレース、静的トレース、分析イベントでカスタム アナライザーを実行できます。

静的情報 (Linux 静的パフォーマンス ツール)

これらは Linux 実践者には非常によく知られていると思います。

仕事をうまくやり遂げたいなら、まず道具を研がなければなりません。優れたツールを使用すると、問題をすばやく特定し、デバッグ サイクルを短縮できます。 Linux プラットフォームには非常に多くのツールがあるため、どれが最適かを判断するのは困難です。最も試行錯誤されたシンプルなツールはすべて上記の記事に記載されています。あなたはそれらをすべて知っていますか?

要約する

以上が、開発や運用・保守に欠かせないLinuxデバッグツールの紹介です。お役に立てれば幸いです。ご質問がございましたら、メッセージを残していただければ、すぐに返信させていただきます。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • パフォーマンステストにPython標準ライブラリを使用する方法
  • Python でパフォーマンス テスト ツールを作成する (パート 1)
  • パフォーマンステスト監視ネットワークスループットプロセスの詳細な説明

<<:  JavaScript における正規表現の実際的な応用の詳細な説明

>>:  MySQL における count(*)、count(1)、count(col) の違いのまとめ

推薦する

Docker 学習: コンテナ コンテナの具体的な使用方法

コンテナは Docker のもう一つの中心的な概念です。簡単に言えば、コンテナとは、独立して実行され...

MySQL シリーズ 12 バックアップとリカバリ

目次チュートリアルシリーズ1. バックアップ戦略の説明1. バックアップの種類2. バックアップで考...

CSSは高さを設定せずにdivを完全に中央に配置することを実現します

必要とする本文の下のdivは垂直方向に中央揃えになっていますdiv 内のテキストを垂直中央に配置する...

mysql8 共通テーブル式 CTE 使用例の分析

この記事では、例を使用して、MySQL 8 の共通テーブル式 (CTE) の使用方法を説明します。ご...

ソースコードから、Vue2がデータとメソッドを直接取得できる理由がわかる

目次1. 例: これはデータとメソッドを直接取得できます2. 環境を準備し、ソースコードをデバッグし...

ページ内のリストプルダウン効果を実現するための純粋なCSS

次のような効果がよく見られます。 そうです、ページ上でよく使われる「展開と折りたたみ」のインタラクシ...

ElementUI コンポーネント el-dropdown (落とし穴)

選択して変更: クリックすると現在の値が表示され、ページ UI が表示され、CSS スタイルが変更さ...

MySQL 5.7.9 シャットダウン構文例の詳細な説明

mysql-5.7.9 では、ついにシャットダウン構文が提供されます。以前は、MySQL データベー...

MySQLデータベースはsysbenchに基づくOLTPベンチマークテストを実装します

Sysbench は、MySQL データベース ストレージ エンジン InnoDB のディスク I/...

MySQL 5.7.21 のインストールと設定のチュートリアル

mysql5.7.21の簡単なインストール構成は次のとおりです。 1. MySQLのインストール1....

CSS の無効な行の高さ設定の問題の解決策

CSS の無効な行の高さ設定についてまず、次のコード文字列を記述します。 <!DOCTYPE ...

antd+reactプロジェクトをviteに移行するためのソリューションの詳細な説明

Antd+react+webpackは、多くの場合、Reactテクノロジースタックに基づくフロントエ...

MySQL のユニークインデックスと通常のインデックスのどちらを選択すればよいでしょうか?

ユーザー テーブルを設計するときに、各人の ID 番号が一意であり、検索する必要があるシナリオを想像...

ウェブフロントエンド開発者が知っておくべき 9 つの実用的な CSS プロパティ

1. 角を丸くする今日の Web デザインは、常に最新の開発テクノロジーに追随しており、HTML5 ...