Linuxパフォーマンス監視コマンドの簡単な紹介

Linuxパフォーマンス監視コマンドの簡単な紹介

システムでさまざまな IO ボトルネック、メモリ使用量の増加、CPU 使用率の増加などの問題が発生した場合、どのようにしてエラーを特定すればよいでしょうか? Linux には、エラーを素早く特定するのに役立つコマンドが多数用意されています。free コマンドは Linux で最もよく使用されるコマンドの 1 つです。このコマンドを使用すると、サーバーの合計メモリ、使用済みメモリ、残りの未使用メモリ、バッファとキャッシュによって占有されているメモリなど、システムのメモリ状態を表示できます。

$ 無料 -m
キャッシュされた未使用の共有バッファの合計
電話番号: 994 787 207 0 121 227
-/+ バッファ/キャッシュ: 437 557
スワップ: 0 0 0

上記の 3 行のデータを完全に理解するには、まずバッファとキャッシュとは何かを理解する必要があります。

バッファ: バッファ

低速と高速間のハンドオーバー問題を解決するためにデータをバッファリングします。高速領域では、バッファを介してデータをビットごとに低速領域に渡す必要があります。たとえば、メモリからハードディスクにデータを書き込む場合、データは直接書き込まれるのではなく、特定のサイズにバッファリングされてからハードディスクにフラッシュされます。

バッファとは、まだディスクに「書き込まれていない」ものです。

キャッシュ: キャッシュ

データの再利用を実現するには、低速デバイスが頻繁に使用されるデータをキャッシュする必要があり、キャッシュされたデータは高速デバイスへの高速転送を提供できます。たとえば、ハードディスクからデータを読み取ってメモリのキャッシュ領域に配置すると、将来的に同じリソースに非常に高速にアクセスできるようになります。

キャッシュとは、ディスクから「読み取られ」、後で使用するために保存されたものです。

バッファはディスク(ブロックデバイス)に出力するデータを格納するために使用され、キャッシュはディスクから読み取ったデータを格納するために使用されます。どちらも IO パフォーマンスを向上させるように設計されています。

バッファとキャッシュの役割を理解すると、free によって表示される情報は簡単に理解できます。次に、free コマンド出力の各行の意味を分析してみましょう。

1行目: メム

合計メモリ 994 (合計) = 787 (使用済み) + 207 (空き)、使用済みはシステムによって使用されたメモリを示します。これには、アプリケーションによって使用されたメモリと、バッファリングとキャッシュに使用されるメモリの合計が含まれます。

2行目: -/+ バッファ/キャッシュ

- バッファ/キャッシュ: 437(使用済み) = 787(使用済み) - 121(バッファ) - 227(キャッシュ済み)、437 は、バッファとキャッシュによって消費されるメモリを除いた、アプリケーションによって消費される実際のメモリが 437M であることを意味します。

+ バッファ/キャッシュ: 557(空き) = 207(空き)+121(バッファ)+キャッシュ(227)、557 はシステムに 557M の使用可能なメモリがあることを意味します。メモリが不足している場合でも、バッファとキャッシュによって占有されているメモリはアプリケーションによって引き続き使用されるためです。

3行目: スワップ

説明の必要がないと単純に述べている記事を多く見てきましたが、ここでは、Swap はスワップ パーティション、つまり通常仮想メモリと呼ばれるものを意味することを説明したいと思います。ディスク領域の一部をメモリとして使用できます。この領域は仮想メモリと呼ばれます。システム メモリが不足すると、システムはメモリ内に常駐しているが現在実行されていないプログラムを一時的に仮想メモリに配置します。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Python ベースの Linux システムにおける特定のプロセスのパフォーマンス監視の考え方の詳細な説明
  • PHP+swoole+linuxによるシステム監視とパフォーマンス最適化の操作例
  • Linux システムのパフォーマンスを分析するための top コマンドの詳細な説明
  • Linux サーバーのステータスとパフォーマンスに関連するコマンドの詳細な説明
  • Linux パフォーマンステスト pmap コマンドの詳細な説明
  • 収集する価値のある Linux サーバーのパフォーマンス最適化のヒント 20 選
  • Linux での Web パフォーマンス ストレス テスト ツール http_load の使用に関するチュートリアル
  • Linux で Web データの同期を実現する 4 つの方法 (パフォーマンス比較)
  • Linux+Nginx+Phpで高性能WEBサーバーを構築
  • Linux パフォーマンス監視ツール nmon のインストールと使用方法のチュートリアル分析

<<:  MySQL 5.7.20 無料インストールバージョンの設定方法グラフィックチュートリアル

>>:  Vue で CSS カスタム変数を使用する方法

推薦する

Centos 6.9 に MySQL をインストールするための詳細なチュートリアル

1. MySQLがインストールされているかどうかを確認します。次のコードで確認できます。 [root...

フォーム要素属性の読み取り専用と無効の使用の比較

1) 適用範囲:読み取り専用:input[type="text"],input[...

JSでよく使われるデータ処理方法

目次DOM処理配列方法要約するDOM処理DOM はドキュメントの構造化された表現を提供し、スクリプト...

CSS の複雑なセレクターと CSS のフォントスタイルと色属性の詳細な説明

これまでに CSS の基本的なセレクターをいくつか学習しましたが、今日は CSS の複雑なセレクター...

入力テキストボックスの長さをコンテンツに応じて変更する方法

初め:コードをコピーコードは次のとおりです。 <input type="text&q...

Ubuntu に MySQL 5.7 をインストールし、データ ストレージ パスを構成する方法

1. MySQLをインストールするこの記事はAPT経由でインストールされており、インストールされてい...

MySQL サーバーにおける SSD パフォーマンスの問題の詳細な分析とテスト

【質問】 HP サーバーを使用しています。SSD が IOPS 約 5000 を書き込むと、%uti...

CentOS 8 / RHEL 8 に VirtualBox 6.0 をインストールするための詳細なチュートリアル

VirtualBox は、技術者が異なる種類の複数の仮想マシン (VM) を同時に実行できるようにす...

MySQLでBLOBデータを処理する方法

具体的なコードは次のとおりです。 パッケージ epoint.mppdb_01.h3c; java.i...

MySQLにおける静的変数の役割の詳細な説明

MySQLにおける静的変数の役割の詳細な説明静的変数の使用 静的変数サンプルコード: 関数テスト()...

MySQLの一般クエリログとスロークエリログの分析

MySQL のログには、エラー ログ、バイナリ ログ、一般クエリ ログ、スロー クエリ ログなどが含...

React のクラスからフックへの移行

目次リアクトフック序文なぜフックなのか?クラス関数クラスとフックの比較フックはコンポーネントの状態を...

Git サーバーを使用してデバッグ ブランチを表示し、修正する方法を 1 日 1 分で学習します。

デバッグブランチプロジェクトの通常の開発中に、以前にリリースされたバージョンにバグがある場合がありま...

コンパイル/サーバーなしでブラウザにCommonJSモジュールを実装する

目次導入1. one-click.jsとは2. パッケージングツールはどのように機能しますか? 3....