Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
雲勉@オンライン【勉強会】AWSでお手軽!負荷テスト環境構築【初心者向け】
Search
Y.Sumikura
August 05, 2022
Technology
450
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
雲勉@オンライン【勉強会】AWSでお手軽!負荷テスト環境構築【初心者向け】
Y.Sumikura
August 05, 2022
More Decks by Y.Sumikura
See All by Y.Sumikura
第103回 雲勉【オンライン】インフラエンジニアにおける ChatGPT の便利な使い方と注意点
sumikurayurie1125
1
330
第101回 雲勉【オンライン】VPC から始めるネットワーク入門
sumikurayurie1125
0
190
第99回 雲勉【オンライン:初心者向け】Infrastructure as Code (IaC) 入門 〜TerraformとAnsibleを使ってみよう〜
sumikurayurie1125
0
260
第96回 雲勉【オンライン:初心者向け】インフラエンジニアのKubernetes入門
sumikurayurie1125
0
270
第8回 雲勉LT【オンライン:中級者向け】AthenaでS3上のデータとDynamoDBのデータを結合する
sumikurayurie1125
0
390
第93回 雲勉【オンライン:初心者向け】CI/CDって結局何なの?インフラエンジニアがCode3兄弟を学ぶ
sumikurayurie1125
13
5.1k
第7回 雲勉LT【オンライン:初心者向け】サーバレスコンテナサービス Lambda, Fargate, App Runnerの特徴、違いを解説
sumikurayurie1125
3
680
第6回 雲勉LT【オンライン:初心者向け】2022年 気になったアップデート情報:「RDSコンソールの、EC2ワンクリック接続オプション」について
sumikurayurie1125
0
200
第5回 雲勉LT【オンライン:初心者向け】GCのサービスだけでCI_CDを構築してみよう
sumikurayurie1125
0
84
Other Decks in Technology
See All in Technology
発表と総括 / Presentations and Summary
ks91
PRO
0
140
AIレビューはどこまで任せられるのか?自動化と人が背負うレビューの境界
sansantech
PRO
3
1k
AI、CDK と協働する Full TypeScript アプリケーション開発 / Full TypeScript Application with AI and CDK
geekplus_tech
2
340
DatabricksにおけるMCPソリューション
taka_aki
1
270
LLM/Agent評価:トップ営業の発言を「正解」にする 〜暗黙的正解による評価を営業資産に変える〜
takkuhiro
1
230
CIで使うClaude
iwatatomoya
0
290
[2026-07-15] AI Ready なはずだったアーキテクチャと、見えてきた課題・次に目指す状態
wxyzzz
9
3.9k
アップデートで何が変わった?デモで学んで使いこなすIBM Bob2.0
muehara
0
100
「AIに依存している」と 「AIを使いこなしている」の違い
k8yasuma
0
110
ファミコンでPHPを動かす / PHP on the Famicom
tomzoh
2
310
Control Planeで育てるBtoB SaaSの認証基盤 - SRE NEXT 2026
pokohide
1
2.5k
人を動かすのは時間ではなく、納得感 〜新任EMが入社3ヶ月、組織を2回変えた話〜
kakehashi
PRO
3
270
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
331
22k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
800
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
220
Building an army of robots
kneath
306
46k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
340
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
220
Visualization
eitanlees
152
17k
The SEO Collaboration Effect
kristinabergwall1
1
500
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
510
Transcript
2022/8/4 AWSでお⼿軽︕負荷テスト環境構築【初⼼者向け】 雲勉 @ オンライン
0.講師⾃⼰紹介 2 n 名前︓⾨⾺康太郎 • プロジェクト企画推進セクション PMOグループ • 経歴 2015年
4⽉ ~ 電機メーカーSE 2021年11⽉ ~ 現職 • アイレット歴︓9ヶ⽉ • 最近ホルモン焼きにハマっています
0.今回お話すること 3 AWS上で負荷テスト環境を構築する⽅法をご紹介いたします。 AWSが提供するCloudFormationテンプレートを使⽤して環境を構築し、負荷テストを実 施するまでの⼿順について解説いたします。 負荷テスト環境をお⼿軽に作成、使い終わったら削除できます! 負荷テスト⽤の サーバの⽤意は? 購⼊?レンタル? モノが届くのは
いつ? 次使うのはいつ? レンタル延⻑する? 必要なときに作って、 終わったらすぐに削除。 そう、AWSならね。 必要なソフトの ⼊れ込みしないと・・
アジェンダ 4 0. ⾃⼰紹介/今回お話すること 1. 負荷テストとは(19:05~19:10) 2. 構築する負荷テスト環境のご紹介(19:10~19:20) 3. 負荷テスト環境構築&負荷テスト実施デモ
(19:20~19:45) 4. 質疑応答(19:45~20:00)
1. 負荷テストとは 5
1-1.負荷テストとは 6 n 負荷テストとは 負荷テストとは、機器やソフトウェア、システムのテスト(試験)の⼀種で、負荷を⾼ めていったときの状態や性能などを計測し、どのくらいの負荷まで正しく動作するかを 検証するもの。※1 今回はWEBサイトにおける負荷テストについて取り扱います。 n 負荷テストの⽬的
• システムの利⽤における各種ユースケースを想定し、応答性能を推測する • ⾼負荷時におけるシステムの性能改善を⾏う • ⽬的の性能を提供するために必要なハードウェアをあらかじめ選定する • システムのスケール性を確認する ※1 https://e-words.jp/w/%E8%B2%A0%E8%8D%B7%E3%83%86%E3%82%B9%E3%83%88.html
1-2.負荷テストのために⽤意するもの 7 負荷テストにあたり、負荷テストの対象となる環境とは別に、「負荷掛け環境」を⽤意する 必要があります。 今回は「負荷掛け環境」の構築⽅法についてご紹介いたします。 負荷掛け環境 負荷テスト 対象環境
1-3.負荷テストの進め⽅ 8 負荷テストの流れは以下となります。 負荷テストの⽬的・⽬標の決定 シナリオ作成 負荷掛け環境構築 負荷テスト実施 チューニング 負荷テスト完了
1-4.AWS環境における負荷テストの注意点 9 • ⽣成するトラフィック量により、事前の申請が必要となる場合がある 1 Gbps (10 億ビット / 秒)
または 1 Gpps (10 億パケット / 秒) を超えて、合計で 1 分 以上維持するトラフィックを⽣成すると思われる場合、AWSへの事前申請が必要となりま す※2 ˞ IUUQTBXTBNB[PODPNKQFDUFTUJOH
2.構築する負荷テスト環境のご紹介 10
2-1.今回の勉強会でやること 11 n 今回の勉強会でやること • 今回はAWSが提供する”AWSでの分散負荷テスト” のソリューションの紹介・解説となります。 • CloudFormationを展開することで、負荷テスト環 境の構築ができます。
• 提供されたGUIにより、パラメータを⼊⼒するだけで 負荷テストが可能となります。 • JMeter(負荷テストツール)のシナリオファイルを読 み込ませて実⾏することも可能です。 URL︓ https://aws.amazon.com/jp/solutions/implementatio ns/distributed-load-testing-on-aws/
12 実演1 CloudFormation
2-2.負荷テスト環境の解説 13 n ウェブコンソール • CloudFront、S3により、 負荷テストシナリオ⽤コン ソール画⾯・ログイン画⾯ が提供されます。 •
この画⾯で負荷テストのシ ナリオを⼊⼒します。 • ⼊⼒したシナリオの情報は 負荷テストAPIへ送信され ます。 引⽤元URL︓https://aws.amazon.com/jp/solutions/implementations/distributed-load-testing-on-aws/ ブラウザでアクセス
14 n 負荷テストAPI • API Gatewayは負荷テス トのシナリオ情報を受信し ます。後続のLambdaによ り、S3とDynamo DBへの
シナリオ情報の書き込み、 Step Functionsの起動を ⾏います。 • API Gatewayへのリクエ スト時、CognitoにてAPI 実⾏の認可が⾏われていま す。 引⽤元URL︓https://aws.amazon.com/jp/solutions/implementations/distributed-load-testing-on-aws/ データ書き込み 起動 2-2.負荷テスト環境の解説
15 n バックエンド • 負荷テストAPIからのリク エストを受け、Step Functionsが起動します。 • 負荷テスト⽤のコンテナが 起動し、シナリオに沿った
リクエストを対象へ送信し ます。 • テストの結果は CloudWatchとDynamo DBへ格納されます。 引⽤元URL︓https://aws.amazon.com/jp/solutions/implementations/distributed-load-testing-on-aws/ 負荷テスト実⾏ (リクエスト送信) 負荷テスト 対象環境 起動 2-2.負荷テスト環境の解説
3.負荷テスト環境構築&負荷テスト実施デモ 16
17 3-1.負荷テスト シナリオ 引⽤元URL︓https://aws.amazon.com/jp/solutions/implementations/distributed-load-testing-on-aws/ 負荷テスト実⾏ (リクエスト送信) ① GUIで シナリオ⼊⼒ ②
JMeter シナリオ ファイル⼊⼒ 実演する負荷テストのシナリオは下記2パターンとなります。 ① GUIを使⽤して、負荷テスト対象環境に多数のGETリクエストを送信する。 ② JMeterのシナリオをインポートして、実⾏する。
18 引⽤元URL︓https://aws.amazon.com/jp/solutions/implementations/distributed-load-testing-on-aws/ 負荷テスト実⾏ (リクエスト送信) ① GUIで シナリオ⼊⼒ 実演する負荷テストのシナリオは下記2パターンとなります。 ① GUIを使⽤して、負荷テスト対象環境に多数のGETリクエストを送信する。
② JMeterのシナリオをインポートして、実⾏する。 3-1.負荷テスト シナリオ
19 実演2 コンソール画⾯操作 負荷テスト①実施
20 引⽤元URL︓https://aws.amazon.com/jp/solutions/implementations/distributed-load-testing-on-aws/ GETとPOSTを交互に リクエストを送信 ② JMeter シナリオ ファイル⼊⼒ 実演する負荷テストのシナリオは下記2パターンとなります。 ①
GUIを使⽤して、負荷テスト対象環境に多数のGETリクエストを送信する。 ② JMeterのシナリオをインポートして、実⾏する。 シナリオ︓GETとPOSTを交互にリクエストを送信 GETには200を応答 POSTには403を応答 3-1.負荷テスト シナリオ
21 実演3 負荷テスト②実施
22 質疑応答