記事ディレクトリ
VPS が過負荷になって崩壊寸前になっていませんか?
この記事では、4 コア 16 GB 構成から始めて、適切な数の CPU コアとメモリを選択する方法を詳細に分析し、VPS パフォーマンスを最適化するための包括的なガイドを提供します。
データベースの最適化、PHP アプリケーションの調整、ハードウェアのアップグレードのいずれであっても、VPS をより高速かつ安定して実行し、パフォーマンスのボトルネックに別れを告げるための最適なソリューションを見つけるのに役立つ具体的な提案を提供します。
あなたの VPS がケバブの屋台のように混雑しないように、これらがあなたのお役に立てば幸いです。
VPS の負荷が高いです。CPU コアとメモリを何個までアップグレードする必要がありますか?

VPS 構成の CPU が 4 コア + 16GB メモリであると仮定して、確認してください top 負荷状況は深刻です。VPS にはいくつのコアとメモリを使用する必要がありますか?
top - 02:34:42 up 1:55, 3 users, load average: 54.22, 34.14, 32.00
Tasks: 179 total, 72 running, 107 sleeping, 0 stopped, 0 zombie
%Cpu(s): 70.7 us, 27.4 sy, 0.0 ni, 1.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 16777216 total, 2584976 free, 13411120 used, 781120 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 3282716 avail Mem
(此处省略……)
あなたが提供するものから top コマンド出力から判断すると、VPS の負荷は非常に高く、平均負荷は 54.22 (最後の 1 分間)、34.14 (最後の 5 分間)、32.00 (最後の 15 分間) に達しています。
これは、システムの使用率が高いことを示しています。 VPS には 4 コアの CPU と 16GB RAM が搭載されていますが、使用されるメモリは 13,411,120KiB で、そのうちバッファとして使用されるのは 781,120KiB のみです。
によると、 top コマンド出力から、リソースを大量に消費するプロセスがいくつかあることがわかります。
- mariadbd (MariaDB データベース サービス):CPU リソースを多く消費します (143.1%)。
- memcached:CPU の一定量 (7.7%) を占有します。
- 複数の php-cgi プロセス:それぞれが特定の CPU リソースとメモリ リソースを占有します。
VPS の高負荷を解決するにはどうすればよいですか?
高負荷に対する解決策には次のようなものがあります。
- データベースを最適化します。mariadbd が多くの CPU を占有する場合は、データベース クエリを最適化するか、データベース サーバーのリソースを増やすことを検討する必要がある場合があります。
- PHP アプリケーションを最適化します。複数の php-cgi プロセスが大量の CPU とメモリを消費するため、リソースの消費を削減するために PHP アプリケーションまたはスクリプトを最適化する必要がある場合があります。
- プロセスの数を制限します。プロセス数を制限するには、nginx の work_processes や PHP-FPM の pm 設定などを使用することを検討してください。
- リソース拡張子:それでも最適化がニーズを満たさない場合は、VPS をより多くのコアまたはより多くの RAM を備えた構成にアップグレードする必要がある場合があります。
- 監視および分析:より高度な監視ツールを使用して、システム リソースの使用状況を分析し、ボトルネックを特定します。
- 負荷分散:トラフィックが問題の一部である場合は、負荷分散を使用してリクエストを複数のサーバーに分散することを検討してください。
VPS のアップグレードを検討する前に、まずシステムとアプリケーションを最適化することを強くお勧めします。
ハードウェア リソースのアップグレードは、現在のハードウェアをニーズを満たすように最適化できないと判断された場合にのみ、最後の手段として実行する必要があります。
VPSのプロセス制限を設定するにはどうすればよいですか?
プロセス制限を設定するときは、次の要素を考慮する必要があります。
- 現在のプロセス数:通常の操作への影響を避けるために、現在の平均プロセス数よりも高い、合理的なプロセス制限が必要です。
- システムおよびアプリケーションの要件:システムとアプリケーションが通常実行する必要があるプロセスの数を理解します。
- リソースの使用量:CPU とメモリの使用状況を監視して、適切なプロセス制限を決定し、リソースの枯渇を回避します。
サーバー上の現在のプロセス数を考慮すると、プロセス制限を低く設定しすぎないことをお勧めします。
ソフト制限の場合は 50 または 100、ハード制限の場合は 100 または 200 など、より緩やかな制限の方が適切な場合があります。これはサーバーの負荷とパフォーマンスに基づいて調整できます。
プロセス制限を変更する場合は、サーバーのパフォーマンスを注意深く監視し、停止が発生した場合に備えて変更をロールバックできるように準備してください。同時に、アプリケーションおよびシステム構成の最適化を検討して、不要なプロセスの数を削減します。
でLinuxシステム、パスできます /etc/security/limits.conf ファイル設定により、開くファイルの数が制限されます。形式は次のとおりです。
<用户名或用户组> soft nofile <软限制值>
<用户名或用户组> hard nofile <硬限制值>
プロセス制限が設定されていると仮定すると、次のようになります。
elo hard nproc 1000
elo hard nofile 5000
VPSを4コア16GBから最適構成プランへアップグレード
最大で約 500 のプロセスが実行されていることが観察されますが、サーバー構成をアップグレードする必要がありますか?どのようなサーバー構成にアップグレードすることが推奨されますか?
アプリケーションが多数のプロセスを同時に実行する必要があり、高負荷を処理するのに十分なリソースをシステムに確実に確保したいと想定し、具体的な推奨事項をいくつか示します。
- CPUコアの数:アプリケーションがマルチスレッドのメリットを享受できるかどうかに応じて、8 コア、16 コア、またはそれ以上のコアを備えた CPU にアップグレードします。
- メモリー容量:アプリケーションのメモリ要件と実行中のプロセスの数に応じて、メモリを 32GB、64GB、またはそれ以上に増やしてください。
- 追加のリソース:全体的なパフォーマンスと信頼性を向上させるために、専用のデータベース サーバーやロード バランサなどのリソースを追加することを検討してください。
ハードウェア構成をアップグレードすることがパフォーマンスの問題の解決策ではないことに注意してください。追加のハードウェア リソースを活用できるように、アプリケーション コード、データベース クエリ、およびサーバー構成が最適化されていることを確認してください。
Hope Chen Weiliang ブログ ( https://www.chenweiliang.com/ ) が「VPS の高負荷を解決するにはどうすればよいですか?」を共有しました。パフォーマンスの最適化方法 + CPU メモリ拡張完全ガイド』が役立ちます。
この記事のリンクを共有することを歓迎します。https://www.chenweiliang.com/cwl-31747.html
さらに多くの隠されたトリックのロックを解除するには、Telegram チャンネルにぜひご参加ください。
気に入ったらシェアして「いいね!」してください!あなたのシェアと「いいね!」が私たちの継続的なモチベーションです。