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
470
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
APIサーバのレスポンス速度をふわっと把握したかった
若手・学生サーバーサイドエンジニアLT会
ラクーンホールディングス x ゆめみ のコラボLT会です!
https://yumemi.connpass.com/event/301942/
ramo798
January 23, 2024
More Decks by ramo798
See All by ramo798
メールの分類をLLMをつかってやってみた
ramo798
0
96
Other Decks in Programming
See All in Programming
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
1
260
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
140
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
270
CSC307 Lecture 17
javiergs
PRO
0
320
C# and C++ Interoperability - cho-dotnetnew
harukasao
0
290
Lessons from Spec-Driven Development
simas
PRO
0
210
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
130
Agentic UI
manfredsteyer
PRO
0
180
JavaDoc 再入門
nagise
1
370
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
550
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
7k
RTSPクライアントを自作してみた話
simotin13
0
620
Featured
See All Featured
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
210
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
A Modern Web Designer's Workflow
chriscoyier
698
190k
The Limits of Empathy - UXLibs8
cassininazir
1
360
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
160
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
400
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.9k
It's Worth the Effort
3n
188
29k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Designing for Timeless Needs
cassininazir
1
260
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
410
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
結果
結果と展望 → ローカルサーバなので実際の数値ではないですが、大まかに傾向が把握で きました。 → 定期的に測るようにして機能が増えていくごとにどのように変化していく かを測定できると面白そう → 大量のテストデータを作成しての挙動も確認できるので未来のしんどくな るポイントを発見できる可能性がある
以上です。