GoDaddy ヘルプ

このページをご利用いただけるよう、最善を尽くして翻訳しております。 英語のページもご用意しています。

LinuxサーバーのCPUとメモリを確認する

CPUやメモリ(RAM)などのリソースは、サイトの機能に不可欠な要素です。コードの使用量が多すぎると、サイトが遅くなったり、まったく動作しなくなったりする可能性があります。他のすべてのプロセス(メールなど)は、サーバー上のサイトと同じリソースを共有します。プロセスが(予想される)公平な配分を超えると、サーバーが完全に停止する可能性があります。

リソースの使用状況を確認する必要があるのはなぜですか?

  • データベース駆動型サイト(WordPressなど)が遅い。
  • メールの到着に時間がかかる。
  • サイトにエラーが表示されるか、単に回転する
  • サーバーで実行されるタスクに通常より時間がかかる(バックアップなど)。

リソースの使用状況を確認するにはどうすればよいですか?

Linuxは、 topsarwatchなど、CPUとメモリの使用状況を調査するためのツールをいくつか提供しています。

topコマンドを使用すると、リアルタイムで実行中のシステムタスクを表示できます。稼働時間、平均負荷、CPU、メモリ使用量などの全体的な情報を確認できます。 -cスイッチを使用すると、COMMANDの下にプログラム名が表示されます。ショートカットキーの完全なリストについては、SSHでman topを使用してください。

[root @ server〜] $ top -c top-15日間08:23 up 115日間、6:37、2ユーザー、平均負荷:1.76、1.35、1.13タスク:合計330、実行中1、スリープ326、停止0、 3ゾンビCPU:0.7%us、2.9%s y、0.0%ni、81.5%id、14.9%wa、0.0%hi、0.1%s i、0.0%s t Mem:合計32754672k、使用28808088k、空き3946584k、バッファ321260k 52.2 27065:56 / usr / sbin / mysqld --basedir = / usr --datadir = / var / lib / mysql --plugin-dir = / usr / lib64 / mysql / plugin 2454 td-agent 20 0 1210m 160m 2440 S 0.7 0.5 347:19.48 / opt / td-agent / embedded / bin / ruby -Eascii-8bit:ascii-8bit /

System Activity Reporter(sar)は、サーバーの使用統計情報の監視に役立つツールです。 Sarsysstatパッケージの一部です。 sarコマンドだけを使用すると、過去24時間の統計情報が表示されます。

sar -fを使用すると、その日の午前12時からの履歴ログファイルを表示できます。

[root @ server〜] $ sar -f / var / log / sa / sa10 Linux 2.6.32-042stab141.3(server-hostname.net)01/10/2022 _x86_64_(24 CPU)12:00:01 AM CPU %user%nice%sシステム%iowait%sティール%idle 12:10:01 AMすべて1.92 0.00 0.39 0.00 0.00 97.69 12:20:01 AMすべて1.63 0.00 0.34 0.00 0.00 98.02 12:30:01 AMすべて1.64 0.00 0.41 0.01 0.00 97.94 12:40:01 AMすべて2.85 0.00 0.61 0.00 0.00 96.54 12:50:01 AMすべて2.71 0.00 0.57 0.01 0.00 96.72 01:00:01 AMすべて2.02 0.00 0.38 0.00 0.00 97.60 01:10:01 AMすべて1.43 0.00 0.30 0.00 0.00 98.27

sar -rは、空きメモリ使用状況を表示します。

[root @ server〜] $ sar -r Linux 2.6.32-042stab141.3(server-hostname.net)02/02/2022 _x86_64_(24 CPU)12:00:01 AM kbmemfree kbmemused%memused kbbuffers kbcached kbcommit%commit 12:10:01 AM 99454800 32354304 24.55 1429856 22624260 8285744 5.91 12:20:01 AM 99760972 32048132 24.31 1429884 22631184 7960428 5.68 12:30:01 AM 99751920 32057184 24.32 1429920 22638392 7974804 5.69 12:40:01 AM 99638056 32171048 24.192 2943 3 929 9 9 29 9 9 9 9 9 9 4 9256 8035000 5.73 12:50:01 AM 99752696 32056408 24.32 1430012 22644804 7891100 5.63

Linuxウォッチでは、コマンドまたはタスクが完了または実行されるのを監視できます。 「mysql -e'show full processlist;」を実行すると、実行中のすべてのmysqlクエリが表示され、2秒ごとに更新されます。

2.0sごと:mysql -e'show full processlist; ' Sat Feb 12 11:09:56 2022 Id User Host db Command Time State Info 26574057 mysql_db1 localhost mysql_db1 Query 2 Sending data SELECT * from db_data_main where DOT_NUMBER = 1381207 26574063 mysql_db1 localhost mysql_db1 Query 1 Sending data SELECT * from db_data_main where DOT_NUMBER = 3173380 265 mysql_wp3 localhost mysql_wp3 Sleep 0 NULL 26574068 root localhost NULL Query 0 init show full processlist

次のステップ

リソースの使用率が高いのは、悪意のあるトラフィックやプロセスのハング(大規模なバックアップなど)が原因で、1回限りの場合があります。トラフィックやハングしたプロセスが原因ではない、リソースの大量使用は、最適化またはアップグレードによってのみ解決できます。サーバーとサイトを最適化しない場合、アップグレードは一時的な修正に過ぎません。

最適化のタイミングかもしれない兆候(サーバーとサイト)

  • 悪意のあるトラフィックによるものではない
  • サイトコードが古い/廃止予定のエラーが発生する
  • CPU使用率は高いですが、メモリ使用率は低いです。
  • トラフィックが増加するとMySQLクエリが遅れる

アップグレード時期かもしれない兆候

  • サイトへのトラフィックが着実に増加している
  • サーバーはサイトのニーズに合わせて最適化されています
  • 長いmysqlクエリを排除してサイトを最適化し、新しいバージョンのPHPをサポートするようにコードを更新しました。
  • キャッシュ(Memcacheなど)を使用しているが、負荷が高いままである