【AWS】AWS での 負荷テスト あれこれ

AWS での負荷テスト

 * 以下のサイトにあるように、事前申請(英語)が必要
  => かなり面倒
https://dev.classmethod.jp/cloud/aws/aws-load-testing/

■ CPU クレジット / バースト機能

 * EC2のt2インスタンスなどでは普段使用していない時に、CPU クレジットをためる
 * 負荷が上がった際には、CPU クレジット を消費して、性能を一時的にアップさせるバースト機能がある
  => いきなり、遅くなったら、CPU クレジットがなくなっていないか確認してみるといいかも
http://aws.typepad.com/aws_japan/2014/07/low-cost-burstable-ec2-instances.html
https://aws.amazon.com/jp/ec2/instance-types/

■ 制限されているサービス

`#`サービス`リソース又はオペレーション`デフォルトの制限
1Amazon API Gatewayアカウントあたりのスロットルレート1秒あたり1000回のリクエスト(1000rps)でバースト制限は2000rps
2Amazon DynamoDBテーブル又はグローバルセカンダリインデックスあたりの最大キャパシティー読み込みキャパシティーユニット数10000。書き込みキャパシティーユニット数40000。
3-1Amazon EC2Elastic IPアドレス5
3-2Amazon EC2インスタンス制限はインスタンスタイプによる
3-3Amazon EC2スポットインスタンス制限はインスタンスタイプによる
4ロードバランサリージョンあたりのロードバランサ20
5AWS Lambdaアカウントあたりの同時リクエストの安全のための調整100
6AWS WAF1秒あたりのリクエスウェブアクセスコントロールリスト (ウェブ ACL) あたり10000


■ 負荷テストをする上での注意

[1] なるべくDNSレコードをキャッシュしないようにテストする

[1] なるべくDNSレコードをキャッシュしないようにテストする

 * クライアントがDNSレコードをキャッシュしてしまうと、ノードのIPアドレスが固定されてしまう
  => AWS リソースは、ときどきDNS が変更されると期待した結果がでなくなる
https://dev.classmethod.jp/cloud/pitfalls-and-steps-loadtesting-on-ec2/
https://www.slideshare.net/AmazonWebServicesJapan/20130612-aws-meisterregenerateelbpublic
JMeter
 * 以下の関連記事の「[Y] DNSキャッシュ無効化」を参照のこと。
https://blogs.yahoo.co.jp/dk521123/36910281.html

関連記事

AWS】負荷テストのボトルネック/エラーを考える

https://blogs.yahoo.co.jp/dk521123/37350526.html

【負荷テスト】 【JMeterJMeter ~ あれこれ 編 ~

https://blogs.yahoo.co.jp/dk521123/36910281.html