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
アプリケーションエンジニアがDistributed Load Testingで 負荷テ...
Search
Satoshi Kaneyasu
July 20, 2024
Programming
2
78
アプリケーションエンジニアがDistributed Load Testingで 負荷テストをしてみる〜Ver.B〜
Road to SRE NEXT@広島
での登壇資料です。
Satoshi Kaneyasu
July 20, 2024
Tweet
Share
More Decks by Satoshi Kaneyasu
See All by Satoshi Kaneyasu
【PHP】破壊的バージョンアップと戦った話〜決断と説得
satoshi256kbyte
0
20
今更聞けないセキュリティ用語の基礎知識 2025新春
satoshi256kbyte
0
89
AWS re:Invent 2024個人的まとめ
satoshi256kbyte
0
110
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
290
おもにクラウドの話してます#4 OPスライド
satoshi256kbyte
0
53
AWS認定資格を勉強した先に何があったか
satoshi256kbyte
2
250
Amazon Aurora Serverless v2のアプデと、Amazon Aurora PostgreSQL Limitless DatabaseのGAについて
satoshi256kbyte
0
150
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
satoshi256kbyte
5
470
Amazon Neptuneで始めてみるグラフDB-OpenSearchによるグラフの全文検索-
satoshi256kbyte
4
500
Other Decks in Programming
See All in Programming
ChatGPT とつくる PHP で OS 実装
memory1994
PRO
3
190
良いユニットテストを書こう
mototakatsu
13
3.6k
最近のVS Codeで気になるニュース 2025/01
74th
1
200
Scaling your build logic
antalmonori
1
110
GitHub CopilotでTypeScriptの コード生成するワザップ
starfish719
26
6k
各クラウドサービスにおける.NETの対応と見解
ymd65536
0
250
asdf-ecspresso作って 友達が増えた話 / Fujiwara Tech Conference 2025
koluku
0
1.4k
Оптимизируем производительность блока Казначейство
lamodatech
0
960
責務を分離するための例外設計 - PHPカンファレンス 2024
kajitack
9
2.4k
shadcn/uiを使ってReactでの開発を加速させよう!
lef237
0
310
ecspresso, ecschedule, lambroll を PipeCDプラグインとして動かしてみた (プロトタイプ) / Running ecspresso, ecschedule, and lambroll as PipeCD Plugins (prototype)
tkikuc
2
2k
ゼロからの、レトロゲームエンジンの作り方
tokujiros
3
1.1k
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
96
5.3k
For a Future-Friendly Web
brad_frost
176
9.5k
Unsuck your backbone
ammeep
669
57k
Gamification - CAS2011
davidbonilla
80
5.1k
Adopting Sorbet at Scale
ufuk
74
9.2k
The World Runs on Bad Software
bkeepers
PRO
66
11k
Designing for humans not robots
tammielis
250
25k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3.1k
Visualization
eitanlees
146
15k
How to train your dragon (web standard)
notwaldorf
89
5.8k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.3k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Transcript
アプリケーションエンジニアが Distributed Load Testingで 負荷テストをしてみる 〜Ver.B〜 2024.07.20 SATOSHI KANEYASU
2 ⾃⼰紹介 ⽒名︓兼安 聡 所属︓株式会社サーバーワークス アプリケーションサービス部 在住︓広島(フルリモート) 担当︓DevOps、PM、SM 2024 Japan
AWS Top Engineers (Database) 2024 Japan AWS All Certifications Engineers 認定スクラムマスター X︓@satoshi256kbyte アプリエンジニアであり、 SIerです︕
アプリエンジニアにとって負荷テストとは︖ • 必要なのは間違いない • エースクラスのエンジニアしか経験していない レアイベント • かなりのレアスキル • ⾒積の書式に負荷テストの項⽬がない
• ⼯程に負荷テストの項⽬がない • でもなんか要るってことでなし崩し的にやるこ とになる (個⼈の感想です)
たまに⾒られる光景 ① なし崩し的に負荷テストが決定 ② 暗中模索で負荷テストを実施 ③ なんとなく負荷テストを終える ④ 本番で問題が起きる ⑤
設計、開発レビューが厳しくなる ⑥ 開発体験が低下 PDCAのCができてない状態でズレた改善が打たれがち (個⼈の感想です)
なぜこうなるのか︖ • 負荷テストの実施に求められるスキルが、 アプリエンジニアとレイヤーと違うから • ネットワーク • 負荷分散 • スキルが揃ってないから適切な是正案が出せない
(これが全てではないけれど)
過去の失敗経験 • オンプレサーバーから負荷テストを⾏い、 社内NWを重くしてインフラの⽅にお叱りを受ける • 1台のサーバーでやろうとしてCPU・ソケット数の壁 で負荷をかけきれない • 複数台にした場合、1台あたりの性能・かける負荷が どれぐらいが適切かがわからない
アプリエンジニアにとって負荷テストのネックは 負荷テストの環境の準備>>>テストシナリオ作成
暗中模索で負荷テストするのを改善 ① なし崩し的に負荷テストが決定 ② 暗中模索で負荷テストを実施 ③ なんとなく負荷テストを終える ④ 本番で問題が起きる ⑤
設計、開発レビューが厳しくなる ⑥ 開発体験が低下
Distributed Load Testingとは︖ • 準備に時間をかけることなく負荷テストをするための AWS製のソリューションです。 • 略称DLT • 参考資料
• AWS での分散負荷テスト | AWS ソリューション • 負荷テスト on AWS のすすめ ~ 第 1 回 • 負荷テスト on AWS のすすめ ~ 第 2 回 • 負荷テスト on AWS のすすめ ~ 第 3 回 • サーバーワークスエンジニアブログ - Distributed Load Testing on AWS を使ってみた
Distributed Load Testingの構成 引⽤︓AWS での分散負荷テスト | AWS ソリューション
Distributed Load Testingの特徴 • 公式ページのリンククリックでIaCが起動 • 詳しいセットアップ⽅法はこちら • アプリケーションエンジニアがDistributed Load
Testingで負荷テストをしてみる〜Ver.A〜 • GUIで負荷テストを実施可能 • JMeterのシナリオファイルを使⽤可能 • 並列実⾏数の設定をGUIで指定可能 • コンテナ数とコンテナごとのユーザー数を指定する⽅式 • 結果をグラフィカルに表⽰
Distributed Load Testingのを使⽤する理由 • AWSのNWを使⽤するのでNW問題で負荷がかけれな い事態がおきにくい • ただし、AWSのNWは速すぎるというのは留意 • コンテナ+GUIで並列数が指定できるので負荷分散の
トライ&エラーがやりやすい • DLTの画⾯とCloudWatchに記録が残るので分析がし やすい
最後に AWSで負荷テストをする時は申請を 忘れずに︕
ご清聴ありがとうございました。