要件フェーズ、
結構前に
前提となる 情報
マトリックスの
ここでの 負荷テスト
負荷テスト支援サービス | テスト支援サービス | インターネットサービス | テクマトリックス株式会社
に
理想は
どんな
現実は
納期、
重要な
対象アプリケーション
Web アプリ 、
以前書いた 記事
初めて
よろしければ
マトリックスの パラメータ
バッチ/オンライン
バッチ処理かオンライン処理かを 表します。 大量データあり/大量データなし
大量データのCRUD の ありなしを 示します。 アクセス量 多い
/少ない
アクセス量[リクエスト数]の多い/少ないを 示します。
オンライン処理のみのパラメータと 考えます。 外部サービス連携あり/連携なし
外部 Web API の呼び出し(で なくても、 自分達で 内部処理を コントロールできない API)との 連携あり/連携なしを 示します。 高負荷クエリの
発行あり/発行なし
負荷の高い クエリの 発行あり/発行なしを 示します。
マトリックスの 結果値
負荷テスト
要不要でいくと、 理想は 要だと 思ったので、 やった ほうが いいですよの レベルで 記載。
5を必要、 1を 不要 と 位置づけます。 改善施策
負荷テストで問題がでた、 または 出そうな 場合の 改善策を 記載。 A
Index の有無。
適切なIndex が 貼られている 場合は、 Table の 分割等を 検討する。 B
プログラム実装で、非効率な 処理実装が ないのか 確認する。
RDB であればデッドロックを 疑うのもいい。 C
参照系で外部サービスの Cache 化。
更新系であれば非同期での 更新を 検討する。 D
クエリのチューニング。
RDB 以外のストレージを 使う ことを 検討する。 E
並列処理で発生する 問題、 Java であれば Syncronyzed の 範囲が 広すぎる 等。
ThreadLocal 等に対象実装を 置き換えできないか 検討する。
マトリックス
NO | バッチ/オンライン | 大量データ | アクセス量 | 外部サービス連携 | 高負荷クエリ | 負荷テスト | 改善施策 |
---|---|---|---|---|---|---|---|
1-1 | batch | 有 | - | 有 | 有 | 5 | A/B/C/D |
1-2 | batch | 有 | - | 有 | 無 | 4 | A/B/C |
1-3 | batch | 有 | - | 無 | 有 | 3 | A/B/D |
1-4 | batch | 有 | - | 無 | 無 | 2 | A/B |
1-5 | batch | 無 | - | 有 | 有 | 3 | B/C/D |
1-6 | batch | 無 | - | 有 | 無 | 2 | B/C |
1-7 | batch | 無 | - | 無 | 有 | 2 | B/D |
1-8 | batch | 無 | - | 無 | 無 | 1 | B |
2-1 | online | 有 | 多 | 有 | 有 | 5 | A/B/C/D/E |
2-2 | online | 有 | 多 | 有 | 無 | 5 | A/B/C/E |
2-3 | online | 有 | 多 | 無 | 有 | 4 | A/B/D/E |
2-4 | online | 有 | 多 | 無 | 無 | 3 | A/B/E |
2-5 | online | 無 | 多 | 有 | 有 | 4 | B/C/D/E |
2-6 | online | 無 | 多 | 有 | 無 | 3 | B/C/E |
2-7 | online | 無 | 多 | 無 | 有 | 3 | B/D/E |
2-8 | online | 無 | 多 | 無 | 無 | 2 | B/E |
2-9 | online | 有 | 少 | 有 | 有 | 5 | A/B/C/D |
2-10 | online | 有 | 少 | 有 | 無 | 4 | A/B/C |
2-11 | online | 有 | 少 | 無 | 有 | 3 | A/B/D |
2-12 | online | 有 | 少 | 無 | 無 | 2 | A/B |
2-13 | online | 無 | 少 | 有 | 有 | 3 | B/C/D |
2-14 | online | 無 | 少 | 有 | 無 | 2 | B/C |
2-15 | online | 無 | 少 | 無 | 有 | 2 | B/D |
2-16 | online | 無 | 少 | 無 | 無 | 1 | B |
アクセス量が
以上です。
コメント