クラウド・コンピューティングの時代において、クラウド・サーバーのパフォーマンスは、アプリケーションのエクスペリエンス、ビジネスの継続性、およびコスト効率に直接影響します。適切なパフォーマンス・テスト・ツールを選択することで、クラウド・サーバーのCPU、メモリー、ディスクI/O、ネットワーク帯域幅、その他の重要な指標を正確に評価することができ、リソースの最適化と容量拡張の意思決定をデータでサポートすることができる。この記事では、さまざまなテスト・シナリオと技術要件をカバーする、いくつかの主要なクラウド・サーバー・パフォーマンス・テスト・ツールを推奨する。
総合的な性能テストツール
1.ジークベンチ6
Geekbenchは、Windows、Linux、macOS、およびその他のオペレーティングシステムをサポートする包括的なクロスプラットフォーム性能テストツールであり、クラウドサーバの全体的な性能を評価するのに理想的です。
公式サイトhttps://www.geekbench.com/

コア機能:
- CPU性能テスト:整数演算、浮動小数点演算、メモリ性能など。
- コンピューティング性能評価:CPUマルチコア性能の包括的なテストをサポート。
- 複数の命令セットをサポート:異なるアーキテクチャのクラウドサーバーの性能をフルに活用できる。
最先端テスト結果は直感的で、詳細なパフォーマンススコアと比較データを提供するため、異なる構成のクラウドサーバー間のパフォーマンスを簡単に比較できます。
2. UnixBench
UnixBenchは古典的なUnix/Linuxシステム・パフォーマンス・テスト・ツールで、システム全体のパフォーマンス評価に重点を置いています。
公式サイトhttps://github.com/topics/unixbench

コア機能:
- 多面的なテスト:CPU操作、メモリアクセス、ファイルの読み書きなどを含む。
- マルチスレッドテスト:マルチユーザーの同時実行シナリオをシミュレートできます。
- 標準化された採点:指数採点システムによるパフォーマンスの可視化
最先端Linuxクラウドサーバーの基本性能評価に適しています。
CPUとメモリの性能テストツール
1.ストレスング
Stress-ngは強力なストレステストツールで、CPU、メモリ、その他のシステムリソースを徹底的にテストします。
ダウンロードアドレスhttps://fossies.org/linux/privat/

コア機能:
- 複数の種類のストレステスト:CPU、メモリ、ディスクI/O、その他の種類のストレステストをサポート
- 柔軟な設定:テストの長さ、同時実行数、その他のパラメーターを指定できます。
- 詳細統計: テストプロセス中のリソース使用統計を提供する。
最先端簡単なインストールと柔軟なパラメータ設定が可能な軽量ツールで、高負荷時のクラウドサーバーの安定性評価に適しています。
2.シスベンチ
Sysbenchは、CPU、メモリ、データベース、その他のパフォーマンステストをサポートするモジュール式のパフォーマンステストツールです。
公式サイトhttps://github.com/akopytov/sysbench

コア機能:
- 多次元テスト:CPU演算性能、メモリ帯域幅、ファイルI/Oなど。
- カスタマイズ可能なテスト:テストパラメータとシナリオのカスタマイズをサポート
- データベース・テスト:MySQLなどのデータベースのパフォーマンスをテストするための専門モジュール。
最先端クラウドサーバーの詳細なパフォーマンス分析を必要とするユーザーに適しています。
ディスクI/O性能テストツール
1.フィオ
Fio(Flexible I/O Tester)は、ストレージシステムの性能を評価するために広く使用されているプロフェッショナルなディスクI/O性能テストツールです。
公式サイトhttps://github.com/axboe/fio

コア機能:
- 複数のI/Oモード:ランダムリード/ライト、シーケンシャルリード/ライトなどをサポート。
- カスタム・テスト:ブロック・サイズ、キューの深さなど、設定可能なパラメータ。
- 詳細レポート:IOPS、スループット、レイテンシーなどの主要メトリクスを提供します。
最先端高度なカスタマイズが可能で、専門的かつ信頼性の高いテスト結果が得られるため、ローカルディスクやクラウドサーバーのクラウドストレージ性能の評価に適しています。
2. ddコマンド
ddはLinuxに付属しているコマンドラインツールで、ディスクへの読み書きのパフォーマンスを評価するシンプルだが迅速な方法である。
コア機能:
- シーケンシャル・リード/ライト・テスト:大容量ファイルを作成してディスクの書き込み速度をテストします。
- コストゼロ:システムに組み込まれているため、追加のインストールは不要
- 迅速な評価:初期のディスク性能テストに最適
使用例:
# 测试写入速度
dd if=/dev/zero of=testfile bs=1G count=1 oflag=direct
# 测试读取速度
dd if=testfile of=/dev/null bs=1G count=1 iflag=direct
ネットワーク・パフォーマンス・テスト・ツール
1. iperf3
iperf3は、TCPとUDPの帯域幅パフォーマンスを測定するためのプロフェッショナルなネットワークパフォーマンステストツールです。
コア機能:
- 帯域幅テスト:ネットワーク帯域幅を正確に測定
- マルチプロトコル対応:TCP、UDP、その他のプロトコルをサポート。
- 双方向テスト:アップロードとダウンロードのパフォーマンスを同時にテストできます。
最先端クロスプラットフォームのサポート、シンプルな操作、正確な結果、クラウドサーバー間またはクラウドサーバーとローカルネットワーク間の接続のパフォーマンス評価に適しています。
OS別のインストール方法は以下の通り:
- Linuxシステム:
- Ubuntu/Debian:
sudo apt install iperf3 - CentOS/RHEL:
sudo yum install iperf3 - フェドラ
sudo dnf install iperf3
- Ubuntu/Debian:
- macOSシステム:
Homebrewを使ってインストールできる:brew install iperf3 - Windowsシステム:
それが必要だ。 iperf 公式ウェブサイト コンパイル済みのインストールパッケージをダウンロードし、解凍して使用する(32ビット版と64ビット版の両方が含まれている)。
インストールが完了したら、ターミナルまたはコマンドプロンプトで次のように入力します。 iperf3 -vバージョン情報が表示されれば、インストールは成功です。
2. Speedtest-cli
Speedtest-cliは、有名なインターネットスピードテストサイトSpeedtestのコマンドライン版で、クラウドサーバーのインターネット接続スピードを素早くテストするのに適している。
公式サイトhttps://www.speedtest.net/zh-Hans/apps/cli

コア機能:
- インターネット・スピード・テスト:ダウンロードとアップロードの速度をテストする
- サーバー選択:テストサーバーを指定可能
- 結果エクスポート:テスト結果をテキストまたはJSON形式でエクスポートできます。
最先端クラウドサーバーのネットワークパフォーマンスを素早く把握するのに適しています。
クラウド・ネイティブ・パフォーマンス・テスト・ツール
1. k6
k6はクラウドネイティブなアプリケーションやAPIのために設計された最新の負荷テストツールです。
公式サイトhttps://k6.io/

コア機能:
- 負荷テスト:多数のユーザーによる同時アクセスのシミュレーション
- スクリプトテスト:JavaScriptでテストスクリプトを記述するためのサポート
- クラウド統合: 主要なクラウドプラットフォームと統合
最先端クラウドサーバー上にデプロイされたAPIやマイクロサービスのパフォーマンスをテストするための、軽量でスケーラブルなツールです。
プロセスの基本的な使い方:
- k6のインストール:
- Linuxだ:
sudo apt install k6(Debian/Ubuntu)または公式バイナリパッケージ経由。 - macOS:
brew install k6 - ウィンドウズ k6公式サイト インストールパッケージをダウンロードするか、WSL
- Linuxだ:
- テストスクリプトの作成(例
test.js)
import http from 'k6/http';
import { check, sleep } from 'k6';
export const options = {
vus: 10, // 虚拟用户数
duration: '30s', // 测试持续时间
};
export default function() {
const res = http.get('https://api.example.com/');
check(res, { 'status is 200': (r) => r.status === 200 });
sleep(1); // 每个请求间隔1秒
} テストを実行する:k6 run test.js
結果を見る
テストが終了すると、エンドポイントは応答時間分布、エラー率、1秒あたりのリクエスト数(RPS)などのメトリクスを含むサマリーレポートを出力する。
k6は特に、開発チームがイテレーション中にパフォーマンス回帰テストを実施したり、本番稼働前に高負荷時のシステムの安定性を検証したりするのに適しており、クラウドネイティブなアプリケーションのパフォーマンステストによく使われるツールです。
2.イナゴ
LocustはPythonで書かれたオープンソースの負荷テストツールで、拡張性に優れている。
公式サイトhttps://docs.locust.io/en/stable/
倉庫:https://github.com/locustio/locust

コア機能:
- 分散テスト:複数のマシンによる負荷テストの共同作業をサポートします。
- コード定義テストシナリオ:Pythonコードによるユーザー行動の定義
- リアルタイム・モニタリング:検査結果をリアルタイムで表示するウェブ・インターフェースを提供。
最先端複雑なシナリオでのクラウドサーバーのパフォーマンステスト、特にウェブアプリケーションのテスト用に高度にカスタマイズ可能です。
選考アドバイス
- 予備評価単純な性能評価には、GeekbenchやUnixBenchを総合的にテストすることをお勧めします。
- 特別テスト:
- CPU/メモリ:ストレスング、シスベンチ
- ディスクI/O:Fio、ddコマンド
- ネットワークパフォーマンス: iperf3、Speedtest-cli
- アプリケーション・シナリオ・テストクラウドサーバーにデプロイされたアプリケーションの場合、k6やLocustは実世界のシナリオに近い負荷テストに推奨される。
- 連続モニタリングクラウドプラットフォームに付属する監視ツール(AWS CloudWatch、AliCloud Monitorなど)と組み合わせた長期的なパフォーマンス監視
これらの性能テストツールを合理的に使用することで、クラウドサーバーの性能を総合的に把握することができ、リソース配分の最適化、コスト管理、ビジネス拡大のための科学的根拠を得ることができる。実際のテストでは、より正確な結果を得るために、複数のツールを組み合わせてテストを行い、異なる時間帯でテストを繰り返すことをお勧めします。