AI

負荷テストのOSS比較【2026年版】k6・LocustでAPIとWebアプリの限界を測定する

オープンソースラボ編集部2026年6月13日

本番リリース前に「何ユーザーまで捌けるか」を計測せずにリリースして障害を起こした経験はありませんか?OSSの負荷テストツールでCI/CDに性能テストを組み込みましょう。

負荷テストで確認すること

  • スループット — 1秒間に何リクエスト処理できるか(RPS)
  • レイテンシ — P95・P99レスポンスタイム
  • エラーレート — 高負荷時のエラー発生率
  • スケーラビリティ — ユーザー増加に比例してスループットが伸びるか
  • ボトルネック — DB・メモリ・CPU・外部API依存のどこが先に詰まるか

OSS 負荷テストツール比較表

ツールスクリプト言語CI対応分散実行特徴
k6JavaScript最も現代的・Go製・CLI
LocustPythonWebダッシュボード・Python
GatlingScala/Javaエンタープライズ実績・レポート美麗
Apache JMeterGUI設定最も老舗・GUIで設定

k6:最も現代的なOSS負荷テストツール

k6公式サイトGitHub)はGrafana Labs製のGo製OSS負荷テストツールです。JavaScriptでテストスクリプトを書き、CLI一発で実行します。Grafana・InfluxDB・Prometheus等へのメトリクス出力が充実しています。

// k6-test.js
import http from 'k6/http';
import { check, sleep } from 'k6';

export const options = {
  vus: 100,         // 100仮想ユーザー
  duration: '30s',  // 30秒間
};

export default function () {
  const res = http.get('https://api.example.com/health');
  check(res, {
    'status is 200': (r) => r.status === 200,
    'response time < 500ms': (r) => r.timings.duration < 500,
  });
  sleep(1);
}
k6 run k6-test.js

詳しくはk6公式ドキュメントおよびLocust公式サイトを参照。

DevOps関連OSSはDevOpsカテゴリから。モニタリングとの組み合わせはセキュリティカテゴリも参照。

Locust:Pythonで書けるOSS負荷テストツール

Locust公式サイトGitHub)はPython製のOSS負荷テストフレームワークです。Pythonでシナリオを書き、ブラウザのWebダッシュボードでリアルタイムに結果を確認できます。Python SDKなのでカスタムロジックの作成が容易です。

選び方

ユースケース推奨
現代的・JS・CI組み込みk6
Python・WebUI確認Locust
美しいHTMLレポートGatling
GUI設定・非エンジニアApache JMeter

まとめ

2026年の負荷テストOSS:JavaScriptでCIに組み込むならk6、Pythonで柔軟なシナリオを書くならLocustが最有力です。

よくある質問(FAQ)

Q. 負荷テストはどのくらいの規模からやるべきですか?

APIが月間1万リクエスト以上あれば実施を推奨します。特にキャンペーンや大量流入が予想されるイベント前には必須です。100VU・30秒でも多くの問題を発見できます。

Q. k6の結果をGrafanaで可視化できますか?

はい。k6はInfluxDB・Prometheus・Grafana Cloudへのメトリクス送信が標準サポートされています。k6 run --out influxdb=http://localhost:8086/k6 test.jsで即座に連携できます。

Q. WebSocketやgRPCの負荷テストもできますか?

k6はWebSocket・gRPC・GraphQL・Kafka等の拡張プロトコルをサポートしています。公式のk6 extensionsエコシステムから用途に合ったプラグインを選べます。

他の記事も読む

Let's Build Together

OSS導入、自社だけで悩まない。

ツール選定から構築・運用・AI活用まで、オープンソースラボ運営元のClasslessが伴走します。初回のご相談は無料です。