Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
GraphQL における quota を見ながら 高負荷試験 してみた
Search
Kazuki Miura
PRO
September 30, 2022
Technology
1.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GraphQL における quota を見ながら 高負荷試験 してみた
#jawsug_sre
AppSync の負荷試験のお話
token って難しいよね
Kazuki Miura
PRO
September 30, 2022
More Decks by Kazuki Miura
See All by Kazuki Miura
Kiro Crewしか勝たん!?
miu_crescent
PRO
0
200
Kiro Crew で始める マルチエージェント開発
miu_crescent
PRO
1
250
Lambdaで動画のエンコードしたら MediaConvertに勝てるのか
miu_crescent
PRO
0
74
AWS Summit 報道現場で磨き上げた、 文字起こしシステムの開発。
miu_crescent
PRO
0
48
報道現場で磨き上げた、 ⽂字起こしシステムの開発
miu_crescent
PRO
0
38
地域のCCoEの拡大を目指す 企業間コミュニティ 「re:light local」について
miu_crescent
PRO
0
82
us-east-1 に障害が起きた時に、 ap-northeast-1 にどんな影響があるか 説明できるようになろう!
miu_crescent
PRO
13
5.4k
これだけはやっておいた方がよさそう?awsにおけるランサムウェア対策
miu_crescent
PRO
1
180
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
4
500
Other Decks in Technology
See All in Technology
アクセスキーこわい やめかたと漏らさない工夫
sassssan68
1
670
Oracle Cloud Network Path Analyzerを試してみた/I Tried Out Oracle Cloud Network Path Analyzer
masakiokuda
1
110
2026_devsumi_ozono.pdf
o3
3
590
JSONataとAWS Step Functionsで目指すRuntimelessな世界
mu7889yoon
0
450
Azure Serverless 2026:Production-ready な AI エージェント基盤 / Azure Serverless 2026: Production-Ready AI Agent Platform
miyake
2
550
技術的負債から考える、AI時代のエンジニアリング投資 — ビズリーチの技術的負債と向き合った経験から、変更し続けられるソフトウェアを考える/ technical-debt-con2026
visional_engineering_and_design
4
3.7k
Oracle Cloud Infrastructure(OCI):Onboarding Session(はじめてのOCI/Oracle Supportご利⽤ガイド)
oracle4engineer
PRO
2
20k
え、こんなに早く改修できるの?──新人エンジニアとスクラムマスターの2人が語る、AI×アジャイル開発の現場
ysasago
2
690
AI de Idea
kawaguti
PRO
2
130
絵ではじめるKubernetesセキュリティ
aoi1
5
700
C#コードの結合を可視化する Roslyn解析による設計改善と リファクタリング判断
dora56
0
510
おい、エージェントを使って終わらせろ
nwiizo
3
870
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
4 Signs Your Business is Dying
shpigford
187
23k
Mobile First: as difficult as doing things right
swwweet
225
10k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
How to train your dragon (web standard)
notwaldorf
97
6.8k
A Modern Web Designer's Workflow
chriscoyier
699
190k
30 Presentation Tips
portentint
PRO
1
400
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
570
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
530
Transcript
#JAWSUG_SRE GraphQL における quota をみながら 負荷試験してみた 2022年9月30日 #04
#jawsug_sre 04 自己紹介 三浦一樹(36) #Sauna #Sapporo #HTB #Amplify #StepFunctions #Serverless
#AWSSamurai2019 #Marvel #Hinatazaka46 #ANN #PdM #PjM #SM
#jawsug_sre 04 SREじゃないんですけど ツイートしたら捕まりましたw
数年に1度やってくる 瞬間的な高負荷 スパ イク #JAWSUG_SRE 04
#jawsug_sre 04
落城
#jawsug_sre 04 2021
None
#jawsug_sre 04 query mutation 商品データ 10Table ユーザデータ 10Table
#jawsug_sre 04 query mutation amplify-cli
#jawsug_sre 04 mutation ここがやばい 商品データ 10Table ユーザデータ 10Table
クォータ #JAWSUG_SRE 04 リクエスト/s 最適化
最初の1クエリで 全データを持ってくる 2022.04.28 〜 2022.03.01 〜
#jawsug_sre 04 2022
クォータ #JAWSUG_SRE 04 リクエスト/s
だと おもってたら
変わってた (本番 1週間前)
クォータ #JAWSUG_SRE 04 リクエスト トークン /s リクエスト/s ↓
とーくん??
#JAWSUG_SRE 04 課金制度が変わった時? クォータが変更されたアナウンスは 見つからず、、 くやしいので、 過去のキャッシュを漁って、履歴を確認する
#JAWSUG_SRE 04 通常は 1token ってことは、変わらなそうじゃん レスポンスヘッダーの x-amzn-appsync-TokenConsumed を確認してみましょう 冷静にドキュメントを読むんだ、、!
x-amzn-appsync-tokenconsumed:50
x-amzn- appsync- tokencon sumed: 50
None
😴
#JAWSUG_SRE 04 2000 リクエスト /s 1ユーザは初期2クエリする 2000 ➗ 2 =
1000 users / s 昔の想定
#JAWSUG_SRE 04 2000 リクエスト /s 1ユーザは初期2クエリする 2000 ➗ 2 =
1000 users / s 2000 リクエスト トークン/s 1ユーザは 約 60トークン消費 2000 ➗ 60 ≒ 33 users/ s 昔の想定 実際
#JAWSUG_SRE 04 2000 リクエスト /s 1ユーザは初期2クエリする 2000 ➗ 2 =
1000 users / s 2000 リクエスト トークン/s 1ユーザは 約 60トークン消費 2000 ➗ 60 ≒ 33 users/ s 昔の想定 実際 想定の 30分の1 しか耐えられない!
怒りのデス・ロード
割愛
高負荷かけると 消費量が変化する 結論 #JAWSUG_SRE 04
#jawsug_sre 04 JMeter から AppSync にクエリなげる CloudWatch logs Insight で頑張って集計する
(金額はまぁすごいことに) いろんな負荷のかけ方をしてみた
#jawsug_sre 04 JMeter から AppSync にクエリなげる 100 rps 付近から トークン消費が
「1」に漸近する CloudWatch logs Insight で頑張って集計する (金額はまぁすごいことに) いろんな負荷のかけ方を試してみ たところ token consumed/queryのログのcount (それぞれ1秒間のSUM)
スパイク前に JMeterで 高負荷かけたれ
スパイクが予想される 前に高負荷かけて クエリあたりのトークン 消費量を 大幅に減少させ クォータの制限ないに 収めることができた!! まとめ #JAWSUG_SRE 04
基本はオンライン 東京以外はオフライン会場も