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
GraphQL における quota を見ながら 高負荷試験 してみた
Search
Kazuki Miura
September 30, 2022
Technology
0
970
GraphQL における quota を見ながら 高負荷試験 してみた
#jawsug_sre
AppSync の負荷試験のお話
token って難しいよね
Kazuki Miura
September 30, 2022
Tweet
Share
More Decks by Kazuki Miura
See All by Kazuki Miura
JAWS-UG 事務局 の「これまで」から みんなで「ここから」を考えよう
miu_crescent
2
150
寒冷地稲作の歴史にみるコミュニティ
miu_crescent
2
150
シャアズ ビリービング アワズプレイ
miu_crescent
1
9
完 全 未 経 験 か ら自 社 サ ー ビ ス の 開 発 運用 を行 う ま で
miu_crescent
0
34
Case Study for Repurposing Video Content With Generative AI
miu_crescent
0
6
完全未経験から自社サービスの 開発運用を行うまで
miu_crescent
1
29
APIのドキュメント化何使ってますか?
miu_crescent
3
200
Payment business logic implemented in the Saga pattern using AWS Step Functions
miu_crescent
0
70
パブリッククラウドもSaaSもいいとこどり!実際に使ってみた全貌と 推しポイントを紹介します!
miu_crescent
1
160
Other Decks in Technology
See All in Technology
LLMアプリをRagasで評価して、Langfuseで可視化しよう!
minorun365
PRO
2
280
AI Builder について
miyakemito
1
140
Commitment vs Harrisonism - Keynote for Scrum Niseko 2024
miholovesq
1
120
入門『状態』#kaigionrails / "state" for beginners with Rails
shinkufencer
2
830
Java x Spring Boot Warm up
kazu_kichi_67
2
460
いまならこう作りたい AWSコンテナ[本格]入門ハンズオン 〜2024年版 ハンズオンの構想〜
horsewin
7
1.5k
【若手エンジニア応援LT会】AWSで繋がり、共に成長! ~コミュニティ活動と新人教育への挑戦~
kazushi_ohata
0
140
来年もre:Invent2024 に行きたいあなたへ - “集中”と“つながり”で楽しむ -
ny7760
0
280
急成長中のWINTICKETにおける品質と開発スピードと向き合ったQA戦略と今後の展望 / winticket-autify
cyberagentdevelopers
PRO
1
160
グローバル展開を見据えたサービスにおける機械翻訳プラクティス / dp-ai-translating
cyberagentdevelopers
PRO
1
130
都市伝説バスターズ「WebアプリのボトルネックはDBだから言語の性能は関係ない」 - Kaigi on Rails 2024
osyoyu
17
9.4k
【LT】ソフトウェア産業は進化しているのか? -Javaの想い出とともに- #jjug_ccc
takabow
0
160
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
5
140
Visualization
eitanlees
143
15k
Making the Leap to Tech Lead
cromwellryan
132
8.9k
Being A Developer After 40
akosma
86
590k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Designing the Hi-DPI Web
ddemaree
280
34k
Producing Creativity
orderedlist
PRO
341
39k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
41
9.2k
How to Think Like a Performance Engineer
csswizardry
19
1.1k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.8k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
3
360
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
基本はオンライン 東京以外はオフライン会場も