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
APIサーバのレスポンス速度をふわっと把握したかった
Search
ramo798
January 23, 2024
Programming
0
420
APIサーバのレスポンス速度をふわっと把握したかった
若手・学生サーバーサイドエンジニアLT会
ラクーンホールディングス x ゆめみ のコラボLT会です!
https://yumemi.connpass.com/event/301942/
ramo798
January 23, 2024
Tweet
Share
More Decks by ramo798
See All by ramo798
メールの分類をLLMをつかってやってみた
ramo798
0
78
Other Decks in Programming
See All in Programming
モテるデスク環境
mozumasu
3
1.1k
なぜGoのジェネリクスはこの形なのか? - Featherweight Goが明かす設計の核心
qualiarts
0
240
Go言語の特性を活かした公式MCP SDKの設計
hond0413
1
440
Google Opalで使える37のライブラリ
mickey_kubo
3
130
AI Agent 時代的開發者生存指南
eddie
4
2.1k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
160
CSC305 Lecture 10
javiergs
PRO
0
220
TFLintカスタムプラグインで始める Terraformコード品質管理
bells17
2
350
Claude CodeによるAI駆動開発の実践 〜そこから見えてきたこれからのプログラミング〜
iriikeita
0
320
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
3
940
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
350
XP, Testing and ninja testing ZOZ5
m_seki
3
800
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
49
51k
Six Lessons from altMBA
skipperchong
29
4k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
990
The Cult of Friendly URLs
andyhume
79
6.6k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
190
55k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Balancing Empowerment & Direction
lara
5
700
KATA
mclloyd
PRO
32
15k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
610
Transcript
APIサーバのレスポンス速度 をふわっと把握したかった ramo
目次 • 自己紹介 • やりたいこと • きっかけ • 技術選定の話 •
使い方 • 結果
自己紹介 ramo 仕事→ URIHOというサービス開発。 好きなフレームワーク→ remix, sveltekit マイブーム→ cloudflare workers
最近matzさんとツーショット撮りました
URIHOについて 販売企業 URIHOは企業間取引において発生する 売掛金の未払い・倒産に備える保証サービスです。 購入企業
やりたいこと バックエンドのAPIサーバのレスポンス速度を計測したい
きっかけとか → 社内の人がISUCONを楽しそうにやってて羨ましかった →→ 来年はでる → そういえば自分のやってるサービスはどうなっているのか? →→ いろんなパターンで測定してみたい →→→ データがいっぱあるときとか
きっかけとか 「推測するな、計測せよ」と常々言われいていますので 計測することにしました。
今回やろうと思ったこと ローカルで動くもので測れるようにしたい → 既存機能の改修したときのベンチマークしたい → テストデータを多くした場合に速度の低下が起きないか等を気づきたい バックエンドAPIのレスポンス速度の計測から始める → ミニマムに始める → システムの構成的に、ボトルネックはそこになりがち
技術選定 Locustというpythonのライブラリを使うことにしました。 テストシナリオをコードで記述ができる → pythonで前処理等が書ける →→ ログイン処理が楽。共有が楽。テストデータの挿入ができる
Locustの使い方 from locust import HttpUser, task, between class ApiUser(HttpUser): wait_time
= between(1, 5) def on_start(self): self.client.post("/accounts/sign_in", { "account[email]": "email", "account[password]": "password" }) @task def load_test_api_endpoint(self): self.client.get("/endpoint")
使い方 locust -f your_script_name.py
結果
結果と展望 → ローカルサーバなので実際の数値ではないですが、大まかに傾向が把握で きました。 → 定期的に測るようにして機能が増えていくごとにどのように変化していく かを測定できると面白そう → 大量のテストデータを作成しての挙動も確認できるので未来のしんどくな るポイントを発見できる可能性がある
以上です。